* Create GameAlterEvent
* Fire GameAlterEvent from HandleAlterGame
* Rename GameAlterEvent to GameAlterEvent.cs
* Update GameAlterEvent
Co-authored-by: AeonLucid <aeonlucid@outlook.com>
--- /dev/null
+namespace Impostor.Api.Events
+{
+ public interface IGameAlterEvent : IGameEvent
+ {
+ bool IsPublic { get; }
+ }
+}
--- /dev/null
+using Impostor.Api.Events;
+using Impostor.Api.Games;
+
+namespace Impostor.Server.Events
+{
+ public class GameAlterEvent : IGameAlterEvent
+ {
+ public GameAlterEvent(IGame game, bool isPublic)
+ {
+ Game = game;
+ IsPublic = isPublic;
+ }
+
+ public IGame Game { get; }
+
+ public bool IsPublic { get; }
+ }
+}
using var packet = MessageWriter.Get(MessageType.Reliable);
message.CopyTo(packet);
await SendToAllExceptAsync(packet, sender.Client.Id);
+
+ await _eventManager.CallAsync(new GameAlterEvent(this, isPublic));
}
public async ValueTask HandleRemovePlayer(int playerId, DisconnectReason reason)
}
}
}
-}
\ No newline at end of file
+}