diff --git a/src/Impostor.Api/Net/Messages/C2S/Message00HostGameC2S.cs b/src/Impostor.Api/Net/Messages/C2S/Message00HostGameC2S.cs index 6bc17584..76c0bf4f 100644 --- a/src/Impostor.Api/Net/Messages/C2S/Message00HostGameC2S.cs +++ b/src/Impostor.Api/Net/Messages/C2S/Message00HostGameC2S.cs @@ -20,7 +20,7 @@ namespace Impostor.Api.Net.Messages.C2S crossplayFlags = (CrossplayFlags)reader.ReadInt32(); gameFilterOptions = GameFilterOptions.Deserialize(reader); } - + public static void DeserializeModded(IMessageReader reader, out IGameOptions gameOptions, out CrossplayFlags crossplayFlags, out GameFilterOptions gameFilterOptions, out Guid modGuid) { Deserialize(reader, out gameOptions, out crossplayFlags, out gameFilterOptions); diff --git a/src/Impostor.Server/Http/ListingManager.cs b/src/Impostor.Server/Http/ListingManager.cs index f92b373b..e95634f9 100644 --- a/src/Impostor.Server/Http/ListingManager.cs +++ b/src/Impostor.Server/Http/ListingManager.cs @@ -59,6 +59,7 @@ public sealed class ListingManager { continue; } + if (game.ModGuid != null) { continue; @@ -141,6 +142,7 @@ public sealed class ListingManager { continue; } + if (game.ModGuid != null && !filterSet.Filters.Any(f => f.OptionType == "mod")) { continue; diff --git a/src/Impostor.Server/Net/Client.cs b/src/Impostor.Server/Net/Client.cs index 6d830161..f508ee12 100644 --- a/src/Impostor.Server/Net/Client.cs +++ b/src/Impostor.Server/Net/Client.cs @@ -42,7 +42,7 @@ namespace Impostor.Server.Net { return false; } - + if (Player != null && Player.Game.ModGuid != null) { return false; diff --git a/src/Impostor.Server/Net/Inner/Objects/InnerMeetingHud.cs b/src/Impostor.Server/Net/Inner/Objects/InnerMeetingHud.cs index d8330d04..1d6d3c58 100644 --- a/src/Impostor.Server/Net/Inner/Objects/InnerMeetingHud.cs +++ b/src/Impostor.Server/Net/Inner/Objects/InnerMeetingHud.cs @@ -310,7 +310,7 @@ namespace Impostor.Server.Net.Inner.Objects _judgeOverrules.Add(new JudgeOverrule(judgePlayerId, targetPlayerId, overruleNonce)); } } - + private JudgeOverrule? GetWinningOverrule() { var gameData = Game.GameNet.GameData!; @@ -393,7 +393,7 @@ namespace Impostor.Server.Net.Inner.Objects var self = this.CalculateVotes(); var max = MaxPair(self, out var tie); var exiled = tie ? null : Game.GameNet.GameData!.GetPlayerById(max.Key)?.Controller; - + // exile or others? var wasOverruled = false; ushort overrideId = 0;