diff --git a/CTA/CustomTeamAssigner/CustomRoles.cs b/CTA/CustomTeamAssigner/CustomRoles.cs index 9ff029dc4..c6dedebcb 100644 --- a/CTA/CustomTeamAssigner/CustomRoles.cs +++ b/CTA/CustomTeamAssigner/CustomRoles.cs @@ -361,6 +361,7 @@ public enum CustomRoles // Coven + RegularCoven, CovenLeader, SpellCaster, PotionMaster, diff --git a/EHR.csproj b/EHR.csproj index c7c0a547e..ab5ed3268 100644 --- a/EHR.csproj +++ b/EHR.csproj @@ -7,7 +7,7 @@ EHR Gurge44 preview - C:\Program Files\Epic Games\AmongUs + D:\AmongUs true True $(MSBuildProjectName) diff --git a/Modules/GhostRolesManager.cs b/Modules/GhostRolesManager.cs index 7c92d065f..758dce0c8 100644 --- a/Modules/GhostRolesManager.cs +++ b/Modules/GhostRolesManager.cs @@ -33,7 +33,7 @@ internal static class GhostRolesManager IGhostRole instance = CreateGhostRoleInstance(suitableRole); pc.RpcSetCustomRole(suitableRole); - pc.RpcSetRole(RoleTypes.GuardianAngel); + pc.RpcSetRoleDesync(RoleTypes.GuardianAngel, pc.GetClientId()); instance.OnAssign(pc); Main.ResetCamPlayerList.Add(pc.PlayerId); AssignedGhostRoles[pc.PlayerId] = (suitableRole, instance); @@ -67,7 +67,7 @@ internal static class GhostRolesManager var text = $"{Translator.GetString("GotGhostRoleNotify")}\n{info.Message}"; var notifyText = $"{Translator.GetString("GotGhostRoleNotify")}\n{info.Split}"; Utils.SendMessage(title: text, sendTo: pc.PlayerId, text: "\n"); - pc.Notify(notifyText, 5 + (5 * text.Count(x => x == '\n'))); + pc.Notify(notifyText, 10 + (5 * text.Count(x => x == '\n'))); return; (string Split, string Message) GetMessage(string baseMessage) diff --git a/Modules/OptionHolder.cs b/Modules/OptionHolder.cs index 2439a22b2..4017cf3ff 100644 --- a/Modules/OptionHolder.cs +++ b/Modules/OptionHolder.cs @@ -49,15 +49,6 @@ public static class Options Tasks } - [SuppressMessage("ReSharper", "UnusedMember.Local")] - enum ModLanguages - { - UseGameLanguage, - Hungarian, - Polish, - Indonesian - } - public static Dictionary GroupedOptions = []; public static Dictionary> GroupedAddons = []; @@ -1428,10 +1419,11 @@ public static class Options PostLobbyCodeToEHRWebsite = new BooleanOptionItem(19422, "PostLobbyCodeToEHRDiscordServer", true, TabGroup.SystemSettings) .SetHeader(true); - + StoreCompletedAchievementsOnEHRDatabase = new BooleanOptionItem(19423, "StoreCompletedAchievementsOnEHRDatabase", true, TabGroup.SystemSettings); RoleAssigningAlgorithm = new StringOptionItem(19409, "RoleAssigningAlgorithm", RoleAssigningAlgorithms, 4, TabGroup.SystemSettings, true) + .SetHeader(true) .RegisterUpdateValueEvent((_, args) => IRandom.SetInstanceById(args.CurrentValue)); KPDCamouflageMode = new StringOptionItem(19500, "KPDCamouflageMode", CamouflageMode, 0, TabGroup.SystemSettings) @@ -2687,6 +2679,15 @@ public static class Options .SetColor(Color.yellow); } + [SuppressMessage("ReSharper", "UnusedMember.Local")] + enum ModLanguages + { + UseGameLanguage, + Hungarian, + Polish, + Indonesian + } + public class OverrideTasksData { public static readonly Dictionary AllData = []; diff --git a/Patches/ControlPatch.cs b/Patches/ControlPatch.cs index 0e26a394b..6699b8e6c 100644 --- a/Patches/ControlPatch.cs +++ b/Patches/ControlPatch.cs @@ -86,7 +86,8 @@ internal static class ControllerManagerUpdatePatch if (!AmongUsClient.Instance.AmHost) return; - if (KeysDown(KeyCode.Return, KeyCode.C, KeyCode.LeftShift)) HudManager.Instance.Chat.SetVisible(true); + if (KeysDown(KeyCode.Return, KeyCode.C, KeyCode.LeftShift)) + HudManager.Instance.Chat.SetVisible(true); if (KeysDown(KeyCode.Return, KeyCode.L, KeyCode.LeftShift) && GameStates.IsInGame) { diff --git a/Resources/Lang/en_US.json b/Resources/Lang/en_US.json index fa6b9b5da..518515718 100644 --- a/Resources/Lang/en_US.json +++ b/Resources/Lang/en_US.json @@ -4379,6 +4379,7 @@ "NKWC.XKills": "Kill X Players", "NoteKiller.NumPlayersToKill": "Number of Players to Kill (X =)", "NoteKiller.OthersSelfSuffix": "There's a {0} in the game. Your real name is <#00ffa5>{1}", + "NoteKiller.OthersSelfSuffixShort": "Real Name: <#00ffa5>{0}", "DeathNoteCommand.CanNotGuess": "You've already tried to guess someone's real name and failed, so you can't guess again until the next meeting.", "DeathNoteCommand.WrongName": "You've entered the wrong name.", "DeathNoteCommand.PlayerNotFoundOrDead": "The player with this name was not found or is already dead.", diff --git a/Roles/Neutral/NoteKiller.cs b/Roles/Neutral/NoteKiller.cs index a65c39ffb..94ba9d411 100644 --- a/Roles/Neutral/NoteKiller.cs +++ b/Roles/Neutral/NoteKiller.cs @@ -207,7 +207,7 @@ public class NoteKiller : RoleBase public override string GetSuffix(PlayerControl seer, PlayerControl target, bool hud = false, bool meeting = false) { if (seer.PlayerId == target.PlayerId && CustomRoles.NoteKiller.RoleExist() && seer.PlayerId != NoteKillerID && !meeting && RealNames.TryGetValue(seer.PlayerId, out var ownName)) - return string.Format(Translator.GetString("NoteKiller.OthersSelfSuffix"), CustomRoles.NoteKiller.ToColoredString(), ownName); + return MeetingStates.FirstMeeting ? string.Format(Translator.GetString("NoteKiller.OthersSelfSuffix"), CustomRoles.NoteKiller.ToColoredString(), ownName) : string.Format(Translator.GetString("NoteKiller.OthersSelfSuffixShort"), ownName); if (seer.PlayerId != NoteKillerID || meeting || ShowClueEndTimeStamp == 0 || ShownClues.Count == 0) return string.Empty; if (ShownClues.TryGetValue(target.PlayerId, out var clue)) return clue;