public void OnMeetingStarted(IMeetingStartedEvent evt) { var code = evt.Game.Code; var players = evt.Game.Players; logger.LogInformation($"[{code}] Meeting has started, unmuting alive clients."); foreach (var player in players) { var name = player.Character.PlayerInfo.PlayerName; var dead = player.Character.PlayerInfo.IsDead; if (!dead) { logger.LogInformation($"Unmuting client: {name}"); var unmute = new UnmuteClient { Nickname = name }; executor.Schedule(unmute); } } }
public void OnPlayerJoined(IGamePlayerJoinedEvent evt) { var code = evt.Game.Code; var players = evt.Game.Players; logger.LogInformation($"[{code}] Player joined, moving clients into voice channel."); foreach (var player in players) { // must use p.Client here since p.Character is not available yet var name = player.Client.Name; logger.LogInformation($"Moving client: {name}"); var move = new MoveClient { ChannelName = $"Impostor {code}", Nickname = name }; executor.Schedule(move); var unmute = new UnmuteClient { Nickname = name }; executor.Schedule(unmute); } }