public void Win() { ScoreController.Reset(); EndGameCentral.WinnerTeam = this; ShipStatus.Instance.enabled = false; AmongUsClient.Instance.allClients.Clear(); AmongUsClient.Instance.GameState = InnerNetClient.GameStates.Ended; AmongUsClient.Instance.OnGameEnd(GameOverReason.ImpostorByKill, false); var val = AmongUsClient.Instance.StartEndGame(); val.Write((byte)GameOverReason.ImpostorByKill); val.Write(false); AmongUsClient.Instance.FinishEndGame(val); }
public static void Update(float DeltaTime) { if (!Game.IsHost()) { return; } var Difference = DateTime.Now - LastUpdated; if (!(Difference.Seconds >= Military.GameModeInterval.GetValue())) { return; } var Teams = TeamsController.GetTeams(); ScoreController.AddScore(Teams.ToDictionary(Team => Team, Team => Points.Count(Point => Team.Compare(Point.CurrentTeam)))); LastUpdated = DateTime.Now; }
public static void Use(Flag Flag, PlayerControl Player) { var Extra = Player.Extra(); if (!Extra.IsReady()) { return; } var PlayerTeam = Extra.Team; var CarryingFlag = GetCarryingFlag(Player); // Игрок нажал по флагу своего цвета if (Flag.Team.Compare(PlayerTeam)) { // Если игрок тащит на себе чужой флаг if (CarryingFlag != null) { SoundsController.FLAG_CAPTURED.BroadcastGlobally(); CarryingFlag.Capturer = null; ScoreController.AddScore(PlayerTeam); Synchronize(); } return; } if (CarryingFlag != null) { return; } SoundsController.FLAG_TAKEN.BroadcastGlobally(); Flag.Capturer = Player; Synchronize(); }
protected override void Handle() { ScoreController.ReadSync(Reader); }