From 098be853d454177437f0f6d95eb5ea49005c95dc Mon Sep 17 00:00:00 2001 From: PEPPERcula Date: Thu, 4 Dec 2025 01:07:08 -0700 Subject: [PATCH] Add & Organize stuff (#422) * Update README.md * Update CopyCat.cs * Update Judge.cs * Rename Vector.wav to MarioCoin.wav * Rename VectorJump.wav to MarioJump.wav * Update Mycologist.cs * Update GuessManager.cs * Update Poache.cs * Update IntroPatch.cs * Update en_US.json * Update en_US.json * Update Visionary.cs * Update Councillor.cs * Update Councillor.cs * Update OptionHolder.cs * Update README.md * Update en_US.json * Update OptionHolder.cs * Update OptionHolder.cs * Update en_US.json * Update en_US.json * Update Ankylosaurus and Mole info texts * Fix links --------- Co-authored-by: Gurge44 <90392754+Gurge44@users.noreply.github.com> --- Modules/GuessManager.cs | 1 - Modules/OptionHolder.cs | 22 ++++-------- Patches/IntroPatch.cs | 7 ++-- README.md | 16 +++++---- Resources/Lang/en_US.json | 33 +++++++++--------- .../Sounds/{Vector.wav => MarioCoin.wav} | Bin .../Sounds/{VectorJump.wav => MarioJump.wav} | Bin Roles/Coven/Poache.cs | 6 ++-- Roles/Crewmate/CopyCat.cs | 2 +- Roles/Crewmate/Judge.cs | 7 ++-- Roles/Impostor/Councillor.cs | 6 ++-- Roles/Impostor/Visionary.cs | 2 ++ Roles/Neutral/Mycologist.cs | 4 +-- 13 files changed, 49 insertions(+), 57 deletions(-) rename Resources/Sounds/{Vector.wav => MarioCoin.wav} (100%) rename Resources/Sounds/{VectorJump.wav => MarioJump.wav} (100%) diff --git a/Modules/GuessManager.cs b/Modules/GuessManager.cs index 09ae558ae..2d545aee8 100644 --- a/Modules/GuessManager.cs +++ b/Modules/GuessManager.cs @@ -1644,4 +1644,3 @@ public static class GuessManager } } - diff --git a/Modules/OptionHolder.cs b/Modules/OptionHolder.cs index b3c951913..f10006390 100644 --- a/Modules/OptionHolder.cs +++ b/Modules/OptionHolder.cs @@ -1900,7 +1900,6 @@ public static class Options // Map Settings new TextOptionItem(100024, "MenuTitle.MapsSettings", TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(19, 188, 233, byte.MaxValue)); // Random Maps Mode @@ -1954,7 +1953,6 @@ public static class Options // Airship Variable Electrical AirshipVariableElectrical = new BooleanOptionItem(22100, "AirshipVariableElectrical", false, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(19, 188, 233, byte.MaxValue)); // Disable Airship Moving Platform @@ -2237,11 +2235,9 @@ public static class Options new TextOptionItem(100026, "MenuTitle.Disable", TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(255, 153, 153, byte.MaxValue)); DisableShieldAnimations = new BooleanOptionItem(22601, "DisableShieldAnimations", true, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetHeader(true) .SetColor(new Color32(255, 153, 153, byte.MaxValue)); @@ -2277,6 +2273,7 @@ public static class Options .SetColor(new Color32(255, 153, 153, byte.MaxValue)); DisableSabotage = new BooleanOptionItem(22800, "DisableSabotage", false, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(255, 153, 153, byte.MaxValue)); DisableReactorOnSkeldAndMira = new BooleanOptionItem(22801, "DisableReactorOnSkeldAndMira", false, TabGroup.GameSettings) @@ -2312,6 +2309,7 @@ public static class Options .SetColor(new Color32(255, 153, 153, byte.MaxValue)); DisableWhisperCommand = new BooleanOptionItem(22811, "DisableWhisperCommand", false, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(255, 153, 153, byte.MaxValue)); DisableSpectateCommand = new BooleanOptionItem(22812, "DisableSpectateCommand", false, TabGroup.GameSettings) @@ -2420,7 +2418,6 @@ public static class Options .SetColor(new Color32(60, 0, 255, byte.MaxValue)); AnonymousBodies = new BooleanOptionItem(23852, "AnonymousBodies", false, TabGroup.TaskSettings) - .SetGameMode(CustomGameMode.Standard) .SetHeader(true) .SetColor(new Color32(0, 165, 255, byte.MaxValue)); @@ -2430,12 +2427,10 @@ public static class Options .SetColor(new Color32(0, 255, 165, byte.MaxValue)); UsePhantomBasis = new BooleanOptionItem(23851, "UsePhantomBasis", true, TabGroup.TaskSettings) - .SetGameMode(CustomGameMode.Standard) .SetHeader(true) .SetColor(new Color32(255, 255, 44, byte.MaxValue)); UsePhantomBasisForNKs = new BooleanOptionItem(23864, "UsePhantomBasisForNKs", true, TabGroup.TaskSettings) - .SetGameMode(CustomGameMode.Standard) .SetParent(UsePhantomBasis) .SetColor(new Color32(255, 255, 44, byte.MaxValue)); @@ -2864,6 +2859,7 @@ public static class Options .SetValueFormat(OptionFormat.Seconds); EnableKillerLeftCommand = new BooleanOptionItem(44428, "EnableKillerLeftCommand", true, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(147, 241, 240, byte.MaxValue)); var i = 0; @@ -2885,12 +2881,15 @@ public static class Options .SetColor(new Color32(147, 241, 240, byte.MaxValue)); SeeEjectedRolesInMeeting = new BooleanOptionItem(44439, "SeeEjectedRolesInMeeting", true, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(147, 241, 240, byte.MaxValue)); EveryoneSeesDeathReasons = new BooleanOptionItem(44440, "EveryoneSeesDeathReasons", false, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(147, 241, 240, byte.MaxValue)); HostSeesCommandsEnteredByOthers = new BooleanOptionItem(44441, "HostSeesCommandsEnteredByOthers", true, TabGroup.GameSettings) + .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(147, 241, 240, byte.MaxValue)); LoadingPercentage = 94; @@ -2948,7 +2947,6 @@ public static class Options new TextOptionItem(100028, "MenuTitle.Other", TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetHeader(true) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); @@ -2963,7 +2961,6 @@ public static class Options FixFirstKillCooldown = new BooleanOptionItem(23900, "FixFirstKillCooldown", false, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); StartingKillCooldown = new FloatOptionItem(23950, "StartingKillCooldown", new(1, 60, 1), 10, TabGroup.GameSettings) @@ -2982,8 +2979,7 @@ public static class Options KillFlashDuration = new FloatOptionItem(24100, "KillFlashDuration", new(0.1f, 0.45f, 0.05f), 0.3f, TabGroup.GameSettings) .SetColor(new Color32(193, 255, 209, byte.MaxValue)) - .SetValueFormat(OptionFormat.Seconds) - .SetGameMode(CustomGameMode.Standard); + .SetValueFormat(OptionFormat.Seconds); UniqueNeutralRevealScreen = new BooleanOptionItem(24450, "UniqueNeutralRevealScreen", false, TabGroup.GameSettings) .SetGameMode(CustomGameMode.Standard) @@ -2994,19 +2990,15 @@ public static class Options .SetColor(new Color32(193, 255, 209, byte.MaxValue)); LargerRoleTextSize = new BooleanOptionItem(24451, "LargerRoleTextSize", false, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); DynamicTaskCountColor = new BooleanOptionItem(24557, "DynamicTaskCountColor", false, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); ShowTaskCountWhenAlive = new BooleanOptionItem(24452, "ShowTaskCountWhenAlive", true, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); ShowTaskCountWhenDead = new BooleanOptionItem(24453, "ShowTaskCountWhenDead", true, TabGroup.GameSettings) - .SetGameMode(CustomGameMode.Standard) .SetColor(new Color32(193, 255, 209, byte.MaxValue)); IntegrateNaturalDisasters = new BooleanOptionItem(24454, "IntegrateNaturalDisasters", false, TabGroup.GameSettings) diff --git a/Patches/IntroPatch.cs b/Patches/IntroPatch.cs index 962f580fd..15f898dbc 100644 --- a/Patches/IntroPatch.cs +++ b/Patches/IntroPatch.cs @@ -639,8 +639,7 @@ internal static class BeginCrewmatePatch CustomRoles.Telecommunication => HudManager.Instance.Chat.warningSound, - CustomRoles.GM or - CustomRoles.Snitch or + CustomRoles.Snitch or CustomRoles.Speedrunner or CustomRoles.Workaholic => HudManager.Instance.TaskCompleteSound, @@ -818,8 +817,8 @@ internal static class BeginCrewmatePatch if (PlayerControl.LocalPlayer.Is(CustomRoles.GM)) { __instance.TeamTitle.text = Utils.GetRoleName(role); - __instance.TeamTitle.color = Utils.GetRoleColor(role); - __instance.BackgroundBar.material.color = Utils.GetRoleColor(role); + __instance.TeamTitle.color = __instance.BackgroundBar.material.color = Utils.GetRoleColor(role); + PlayerControl.LocalPlayer.Data.Role.IntroSound = HudManager.Instance.TaskCompleteSound; __instance.ImpostorText.gameObject.SetActive(true); __instance.ImpostorText.text = GetString("SubText.GM"); } diff --git a/README.md b/README.md index f00c3e44f..7b1d940e2 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,10 @@ [![Download](https://img.shields.io/badge/Download-Latest-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Gurge44/EndlessHostRoles/releases/latest) [![Translate](https://img.shields.io/badge/Translate-Crowdin-18a303?style=for-the-badge&logo=crowdin&logoColor=white)](https://translate.gurge44.eu) -![GitHub release](https://img.shields.io/github/release/Gurge44/EndlessHostRoles.svg?style=flat-square) -![GitHub downloads](https://img.shields.io/github/downloads/Gurge44/EndlessHostRoles/total.svg?style=flat-square) -![Last commit](https://img.shields.io/github/last-commit/Gurge44/EndlessHostRoles?style=flat-square) -[![Open Source](https://img.shields.io/badge/Open%20Source-Yes!-success?style=flat-square)](https://github.com/Gurge44/EndlessHostRoles) +[![GitHub Release](https://img.shields.io/github/release/Gurge44/EndlessHostRoles.svg?style=flat-square)](https://github.com/Gurge44/EndlessHostRoles/releases/latest) +[![GitHub Downloads](https://img.shields.io/github/downloads/Gurge44/EndlessHostRoles/total.svg?style=flat-square)](https://github.com/Gurge44/EndlessHostRoles/releases) +[![Last Commit](https://img.shields.io/github/last-commit/Gurge44/EndlessHostRoles?style=flat-square)](https://github.com/Gurge44/EndlessHostRoles/commits) +[![Open Source? Yes!](https://img.shields.io/badge/Open%20Source-Yes!-success?style=flat-square)](https://github.com/Gurge44/EndlessHostRoles) EHR Icon

@@ -67,7 +67,7 @@ You can also report bugs and suggest features in the #bug-reports and #suggestio ### Visit this website to find role descriptions: [Role description finder](https://gurge44.pythonanywhere.com/) -#### Over 400+ roles and add-ons, 15 custom game modes, and a Custom Team Assigner application, making EHR the most extensive mod for Among Us. And it's all free, and only the host needs to have the mod installed for the entire lobby to play! +#### Over 450+ roles and add-ons, 16 custom game modes, and a Custom Team Assigner application, making EHR the most extensive mod for Among Us. And it's all free, and only the host needs to have the mod installed for the entire lobby to play! ## List of Roles (excluding (Custom) Hide And Seek roles and Vanilla roles) @@ -228,9 +228,11 @@ You can also report bugs and suggest features in the #bug-reports and #suggestio | /kick | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /ban | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /say | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| /start | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /poll | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /mute | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /ds | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | +| /mpoll | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /gmpoll | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /fix | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | /exe | :x: | :x: | :x: | :heavy_check_mark: | :heavy_check_mark: | @@ -280,7 +282,7 @@ Click this badge to view our translation project: - You can also press TAB to autocomplete commands. - Some hints and tips are displayed during the loading screen and ejection animations, which can help you discover new features. -- EHR has 15 unique custom game modes, which can be played with any number of players, some even alone. +- EHR has 16 unique custom game modes, which can be played with any number of players, some even alone. - You can make lobbies with more than 15 players on modded servers, just type /cs players 100 - for example - to set the player limit to 100. - I, the main developer of EHR, care about user feedback and suggestions, and I try to implement them as much as @@ -398,7 +400,7 @@ Click this badge to view our translation project: | /tl
/sp
/jj
/trial | Trial a player as the Judge or Councillor | 🔸 **id** – The player's ID to trial or kill
| :purple_circle: Everyone | :yellow_square: In Meetings | :x: | | /sw
/swap
/st | Set a (vote-) swap target as the Swapper | 🔸 **id** – The player's ID whose vote will be swapped with the other player you set
| :purple_circle: Everyone | :yellow_square: In Meetings | :x: | | /compare
/cp
/cmp | Compare two players' teams as the Inspector | 🔸 **id1** – The first player's ID to compare
🔸 **id2** – The second player's ID to compare
| :purple_circle: Everyone | :yellow_square: In Meetings | :x: | -| /ms
/medium
/medium | Answer the Medium's question | 🔸 **answer** – yes/no
| :purple_circle: Everyone | :yellow_square: In Meetings | :x: | +| /ms
/mediumship
/medium | Answer the Medium's question | 🔸 **answer** – yes/no
| :purple_circle: Everyone | :yellow_square: In Meetings | :x: | | /rv | Take revenge on (kill) a player as the Nemesis | 🔸 **id** – The player's ID to take revenge on (kill)
| :purple_circle: Everyone | :red_square: After Death | :x: | | | | | | | | | 104 | | | | | | diff --git a/Resources/Lang/en_US.json b/Resources/Lang/en_US.json index 2de93178f..fcc394474 100644 --- a/Resources/Lang/en_US.json +++ b/Resources/Lang/en_US.json @@ -562,7 +562,7 @@ "InvestigatorInfo": "Reveal roles of other players", "CoronerInfo": "Find corpses and their killers", "ScoutInfo": "Track other players", - "MerchantInfo": "Sell add-ons and bribe killers", + "MerchantInfo": "Sell Add-ons and bribe killers", "DeputyInfo": "Handcuff killers to increase their cooldowns", "GuardianInfo": "Complete your tasks to become immortal", "AddictInfo": "Vent to become invulnerable, or you'll die", @@ -792,7 +792,7 @@ "InvestigatorInfoLong": "(Crewmates):\\nAs an Investigator, use your kill button to reveal the role of a nearby player. A 「○」 will be displayed next to the reveal target. Stay near the target for a defined time to reveal their role.", "CoronerInfoLong": "(Crewmates):\\nAs a Coroner, you can't report corpses; instead, after trying to report the corpse, you will see an arrow leading you to the killer. If a meeting is called, the arrows disappear. Depending on the setting, the body you found cannot be reported.", "ScoutInfoLong": "(Crewmates):\\nAs a Scout, you can vote for a player in the meeting, which will mark their position for you in the game with arrows. In addition, at the beginning of a meeting, you will be shown in which room the player was last if the option is activated.", - "MerchantInfoLong": "(Crewmates):\\nAs the Merchant, you sell a random add-on to a random player for each task you complete. Each add-on sold earns you money. If you have a certain amount of money, you can avert the next killing attempt against you by bribing the murderer. The bribed player won't be able to kill you, but you don't know who it is. The bribe money used is lost and is not available for additional bribes.", + "MerchantInfoLong": "(Crewmates):\\nAs the Merchant, you sell a random Add-on to a random player for each task you complete. Each Add-on sold earns you money. If you have a certain amount of money, you can avert the next killing attempt against you by bribing the murderer. The bribed player won't be able to kill you, but you don't know who it is. The bribe money used is lost and is not available for additional bribes.", "DeputyInfoLong": "(Crewmates):\\nAs the Deputy, use your kill button on a player to reset their kill cooldown.\\n\\nIf the target does not have a kill button, then the handcuff was a waste.", "GuardianInfoLong": "(Crewmates):\\nAs the Guardian, you become immortal on task completion. You can be guessed in meetings, though.", "AddictInfoLong": "(Crewmates):\\nThe Addict has a suicide timer indicated by the vent cooldown. If the timer expires, the Addict dies. After venting, the Addict is immortal for a certain time. The Addict is also frozen for a defined time after freezing and cannot report any bodies.", @@ -1157,8 +1157,8 @@ "Vent": "Vent", "Dead": "DEAD", "DisableDevices": "Disable Devices", - "DisableSkeldDevices": "Disable Skeld Devices", - "DisableMiraHQDevices": "Disable MiraHQ Devices", + "DisableSkeldDevices": "Disable Skeld Devices", + "DisableMiraHQDevices": "Disable MIRA HQ Devices", "DisablePolusDevices": "Disable Polus Devices", "DisableAirshipDevices": "Disable Airship Devices", "DisableFungleDevices": "Disable Fungle Devices", @@ -1563,12 +1563,12 @@ "ZombieSpeedReduce": "After a certain time, decrease the speed of Zombie by", "NemesisCanKillNum": "Max number of revenges", "JesterCanUseButton": "Can call emergency meetings", - "Vector.NumVentsToWinOn.Skeld": "Number of Vents to Win on Skeld", - "Vector.NumVentsToWinOn.MiraHQ": "Number of Vents to Win on Mira", - "Vector.NumVentsToWinOn.Polus": "Number of Vents to Win on Polus", - "Vector.NumVentsToWinOn.Dleks": "Number of Vents to Win on Dleks", - "Vector.NumVentsToWinOn.Airship": "Number of Vents to Win on Airship", - "Vector.NumVentsToWinOn.Fungle": "Number of Vents to Win on Fungle", + "Vector.NumVentsToWinOn.Skeld": "Number of Vents to Win on <#66a186>The Skeld", + "Vector.NumVentsToWinOn.MiraHQ": "Number of Vents to Win on <#e84b56>MIRA HQ", + "Vector.NumVentsToWinOn.Polus": "Number of Vents to Win on <#a167c0>Polus", + "Vector.NumVentsToWinOn.Dleks": "Number of Vents to Win on <#66a186>dlekS ehT", + "Vector.NumVentsToWinOn.Airship": "Number of Vents to Win on <#ed0007>Airship", + "Vector.NumVentsToWinOn.Fungle": "Number of Vents to Win on <#ffa646>The Fungle", "CanCheckCamera": "Can track camera usage", "ArroganceDefaultKillCooldown": "Starting kill cooldown", "ArroganceReduceKillCooldown": "Reduce kill cooldown by", @@ -2227,8 +2227,8 @@ "MediumDone": "You successfully responded to the Medium.", "MediumNotifyTarget": "{0}, the Medium, has established contact with you. Before the end of this meeting, you have a chance to respond to their question. Type one of the following commands to answer:\\nConfirm: /ms yes\\nDeny: /ms no", "MediumNotifySelf": "You established contact with {0}, please ask questions to them and wait for them to respond.\\n\\nRemaining ability uses: {1}", - "ByBard": "by Bard", - "ByBardGetFailed": "oops, I seem to be out of inspiration.", + "ByBard": "By Bard", + "ByBardGetFailed": "Oops, I seem to be out of inspiration.", "GangsterSuccessfullyRecruited": "You successfully recruited a player", "GangsterRecruitmentFailure": "Target cannot be recruited", "BeRecruitedByGangster": "You have been recruited by the Gangster", @@ -2729,7 +2729,7 @@ "LoadingHint.25": "Meeting not ending when everyone voted?\nPress F6 to end the meeting while also counting the votes!", "LoadingHint.26": "Do you have a friend who thinks they understand everything, and you want to prove them wrong?\nTurn on the Chemist role and see their reaction!", "LoadingHint.27": "The Dev's favorite roles are:\nEcho, Penguin, Rift Maker, Bubble, Evolver, Rogue, Vengeance....\nand basically all crewmate roles :D", - "LoadingHint.28": "Did you know?\nEHR has 15 different game modes! Try them out!\nSwitch game modes using the buttons under the huge title in the top left of the settings menu!", + "LoadingHint.28": "Did you know?\nEHR has 16 different game modes! Try them out!\nSwitch game modes using the buttons under the huge title in the top left of the settings menu!", "LoadingHint.29": "Did you know?\nEHR has a unique game mode for expert gamers called Stop And Go!\nGive it a try after this game!", "LoadingHint.30": "Getting Crewmate over and over again? Didn't get to kill for the last half an hour?\nUnleash your bloodthirst in our Free For All game mode!", "LoadingHint.31": "Did you know?\nEHR has a custom Hide And Seek game mode with 12 special roles dedicated for this playstyle!", @@ -4598,7 +4598,7 @@ "ShapeshiftGuesserUITitle.TeamSelection": "SELECT THE ROLE'S ALIGNMENT", "ShapeshiftGuesserUITitle.FirstLetterSelection": "THE ROLE NAME BEGINS WITH?", "ShapeshiftGuesserUITitle.RoleSelection": "SELECT THE ROLE", - "AddonListTitle": "Your add-ons:", + "AddonListTitle": "Your Add-ons:", "Framer": "Framer", "FramerInfo": "Frame Other Players", "FramerInfoLong": "(Impostors):\\nAs the Framer, single click with your kill button on someone to frame them, making the game think they're on the impostor team. Double click to kill normally.", @@ -9370,9 +9370,7 @@ "CleansedInfoLong": "(Add-ons):\\nCleansed Add-on can only be obtained if cleanser erases all your Add-ons. Depending on the cleanser settings, you may not be able to obtain any more Add-ons in the future.", "TimeMasterCanUseVitals": "Can Use Vitals", "TimeMasterRewindTimeLength": "Rewind Time Length", - "TimeMasterOnGuard": "Time Shield is active!", - "TimeMasterSkillStop": "Time Shield has ended!", - "TimeMasterVentButtonText": "Time Shield", + "TimeMasterVentButtonText": "Rewind Time", "TimeMasterMaxUses": "(Initial) Max Amount of Ability Uses", "TimeMasterRewindStart": "The {0} is rewinding time!", "RevivedByTimeMaster": "<#ffff00>You were revived during the rewind!", @@ -10211,6 +10209,7 @@ "AGMR.RandomGroup.GMChance.BedWars": "Chance of selecting Bed Wars", "AGMR.RandomGroup.GMChance.Deathrace": "Chance of selecting Deathrace", "AGMR.RandomGroup.GMChance.Mingle": "Chance of selecting Mingle", + "AGMR.RandomGroup.GMChance.Snowdown": "Chance of selecting Snowdown", "AutoGMRotationStatusText": "AUTOMATIC GAME MODE ROTATION IS ENABLED!", "AutoGMRotationStatusText.NextGM": "Next", "AutoGMRotationStatusText.GMPoll": "Player Vote (/gmpoll)", diff --git a/Resources/Sounds/Vector.wav b/Resources/Sounds/MarioCoin.wav similarity index 100% rename from Resources/Sounds/Vector.wav rename to Resources/Sounds/MarioCoin.wav diff --git a/Resources/Sounds/VectorJump.wav b/Resources/Sounds/MarioJump.wav similarity index 100% rename from Resources/Sounds/VectorJump.wav rename to Resources/Sounds/MarioJump.wav diff --git a/Roles/Coven/Poache.cs b/Roles/Coven/Poache.cs index 9e93ed2d4..b1a024af6 100644 --- a/Roles/Coven/Poache.cs +++ b/Roles/Coven/Poache.cs @@ -71,7 +71,7 @@ public class Poache : Coven { if (lowLoad || GameStates.IsMeeting || ExileController.Instance || !Main.IntroDestroyed || !pc.IsAlive() || !KillDelays.FindFirst(x => x.ID == pc.PlayerId, out (byte ID, long KillTimeStamp) killData) || Utils.TimeStamp < killData.KillTimeStamp) return; - pc.Suicide(realKiller: PoacheId.GetPlayer()); + pc.Suicide(PlayerState.DeathReason.Poison, realKiller: PoacheId.GetPlayer()); KillDelays.Remove(killData); } @@ -83,7 +83,7 @@ public class Poache : Coven public override void OnReportDeadBody() { - KillDelays.ForEach(x => x.ID.GetPlayer()?.Suicide(realKiller: PoacheId.GetPlayer())); + KillDelays.ForEach(x => x.ID.GetPlayer()?.Suicide(PlayerState.DeathReason.Poison, realKiller: PoacheId.GetPlayer())); KillDelays.Clear(); } @@ -99,4 +99,4 @@ public class Poache : Coven break; } } -} \ No newline at end of file +} diff --git a/Roles/Crewmate/CopyCat.cs b/Roles/Crewmate/CopyCat.cs index 2732ec75b..03ad0b034 100644 --- a/Roles/Crewmate/CopyCat.cs +++ b/Roles/Crewmate/CopyCat.cs @@ -140,7 +140,7 @@ public class CopyCat : RoleBase CustomRoles.PlagueBearer => CustomRoles.Socialite, CustomRoles.Demon => CustomRoles.Spy, CustomRoles.Undertaker or CustomRoles.Vortex => CustomRoles.Vacuum, - CustomRoles.Kidnapper => CustomRoles.Autocrat, + CustomRoles.Kidnapper => new[] {CustomRoles.Autocrat, CustomRoles.Carrier}.RandomElement(), CustomRoles.Capitalist => CustomRoles.Helper, CustomRoles.Technician or CustomRoles.Saboteur => CustomRoles.Mechanic, CustomRoles.Inhibitor => new[] {CustomRoles.Doorjammer, CustomRoles.SecurityGuard}.RandomElement(), diff --git a/Roles/Crewmate/Judge.cs b/Roles/Crewmate/Judge.cs index ecd60fb82..6dcdc0c76 100644 --- a/Roles/Crewmate/Judge.cs +++ b/Roles/Crewmate/Judge.cs @@ -18,17 +18,14 @@ public class Judge : RoleBase private static OptionItem TrialLimitPerMeeting; private static OptionItem TrialLimitPerGame; private static OptionItem AbilityUseLimit; - - private static OptionItem TryHideMsg; private static OptionItem CanTrialMadmate; - private static OptionItem CanTrialConverted; - private static OptionItem CanTrialCrewKilling; private static OptionItem CanTrialNeutralB; - private static OptionItem CanTrialNeutralK; private static OptionItem CanTrialNeutralE; + private static OptionItem CanTrialNeutralK; private static OptionItem CanTrialCoven; + private static OptionItem TryHideMsg; public static OptionItem JudgeAbilityUseGainWithEachTaskCompleted; public static OptionItem AbilityChargesWhenFinishedTasks; diff --git a/Roles/Impostor/Councillor.cs b/Roles/Impostor/Councillor.cs index 29ec2d8b5..b8c94e7db 100644 --- a/Roles/Impostor/Councillor.cs +++ b/Roles/Impostor/Councillor.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.RegularExpressions; using EHR.Crewmate; using EHR.Modules; +using EHR.Neutral; using Hazel; using UnityEngine; using static EHR.Translator; @@ -14,14 +15,15 @@ public class Councillor : RoleBase { private const int Id = 900; private static List PlayerIdList = []; + + private static OptionItem KillCooldown; private static OptionItem AbilityUseLimit; private static OptionItem MurderLimitPerGame; private static OptionItem MurderLimitPerMeeting; private static OptionItem MakeEvilJudgeClear; - private static OptionItem TryHideMsg; private static OptionItem CanMurderMadmate; private static OptionItem CanMurderImpostor; - private static OptionItem KillCooldown; + private static OptionItem TryHideMsg; public static OptionItem CouncillorAbilityUseGainWithEachKill; private static Dictionary MeetingKillLimit = []; diff --git a/Roles/Impostor/Visionary.cs b/Roles/Impostor/Visionary.cs index 1d7f1c92c..28df9a95a 100644 --- a/Roles/Impostor/Visionary.cs +++ b/Roles/Impostor/Visionary.cs @@ -1,5 +1,7 @@ using System.Collections.Generic; using AmongUs.GameOptions; +using EHR.Modules; +using Hazel; namespace EHR.Impostor; diff --git a/Roles/Neutral/Mycologist.cs b/Roles/Neutral/Mycologist.cs index 82736a407..cdd7b1173 100644 --- a/Roles/Neutral/Mycologist.cs +++ b/Roles/Neutral/Mycologist.cs @@ -16,7 +16,7 @@ internal class Mycologist : RoleBase "VentButtonText", // 0 "SabotageButtonText", // 1 "PetButtonText", // 2 - "Vanish", // 3 + "AbilityButtonText.Phantom", // 3 "AbilityButtonText.Shapeshifter" // 4 ]; @@ -180,4 +180,4 @@ internal class Mycologist : RoleBase { return base.CanUseSabotage(pc) || (SpreadAction.GetValue() == 1 && pc.IsAlive()); } -} \ No newline at end of file +}