public bool Stop() { IsStopped = true; GameStopwatch.Stop(); SendCommand(Commands.STOP); return(true); }
void Start() { parkingSpot = GameObject.Find("Empty Parking Spot").GetComponent <ParkingDetector>(); stopwatch = new GameStopwatch(); if (StartRaceOnStart) { StartRace(); } }
public bool EndPart() { if (IsStopped) { // Update part to go to the next one _initialPartTime = DateTime.Now; IsChangingScore = false; IsInitialPartKickOffDone = false; GameStopwatch.Reset(); string command; // Send new game part commands switch (GamePart) { case GameParts.FirstHalf: command = "HALF_TIME"; GamePart = GameParts.PreSecondHalf; break; case GameParts.SecondHalf: command = "END_GAME"; GamePart = GameParts.PreFirstHalfOvertime; break; case GameParts.FirstHalfOvertime: command = "HALF_TIME"; GamePart = GameParts.PreSecondHalfOvertime; break; case GameParts.SecondHalfOvertime: command = "END_GAME"; GamePart = GameParts.Penalties; break; case GameParts.Penalties: command = "HALF_TIME"; GamePart = GameParts.GameOver; break; default: return(false); } SendCommand(command); } return(IsStopped); }
public bool Start() { if (IsStopped) { // Change game part when starting the initial kickoff if (!IsInitialPartKickOffDone) { // Update game part and kickoff info IsInitialPartKickOffDone = true; LastTeamToKickOff = _nextTeamToKickOff; _initialPartTime = DateTime.Now; // Send new game part command switch (GamePart) { case GameParts.PreFirstHalf: SendCommand(Commands.FIRST_HALF); GamePart = GameParts.FirstHalf; break; case GameParts.PreSecondHalf: SendCommand(Commands.SECOND_HALF); GamePart = GameParts.SecondHalf; break; case GameParts.PreFirstHalfOvertime: SendCommand(Commands.FIRST_HALF_OVERTIME); GamePart = GameParts.FirstHalfOvertime; break; case GameParts.PreSecondHalfOvertime: SendCommand(Commands.SECOND_HALF_OVERTIME); GamePart = GameParts.SecondHalfOvertime; break; } } IsChangingScore = false; GameStopwatch.Start(); SendCommand(Commands.START); } return(IsStopped); }
public bool Reset() { if (IsStopped) { GamePart = GameParts.PreFirstHalf; _initialPartTime = DateTime.Now; IsInitialPartKickOffDone = false; LastTeamToKickOff = TeamColors.None; GameStopwatch.Reset(); CyanScore = 0; MagentaScore = 0; SendCommand(Commands.RESET); } return(IsStopped); }