public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.PAUSE_MENU_ENABLE: { if (IsPausing) { break; } var payload = (PauseMenuEnablePayload)afEvent.payload; PlayerNumber = payload.PlayerNumber; PlayerColor = payload.PlayerColor; ShowPauseMenu(); break; } case AFEventType.PAUSE_MENU_DISABLE: { HidePauseMenu(); break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.PLAYERS_ALL_CREATED: { PlayerComponentsEnabler.EnableOrDisableAllPlayersInputResponses(false); Debug.Log("Delaying player input start"); Invoke("ReEnableAllPlayersInputResponses", PlayersState.INSTANCE.WaitTimeForPlayersToStart); if (!hasCalledNotifyGameCanStart) { hasCalledNotifyGameCanStart = true; Invoke("NotifyGameCanStart", PlayersState.INSTANCE.WaitTimeForPlayersToStart); } isAwaiting = true; break; } case AFEventType.GAME_OVER: { PlayerComponentsEnabler.EnableOrDisableAllPlayersInputResponses(false); //TODO: Move the score to the center of the screen Invoke("LoadGameOverScene", PlayersState.INSTANCE.WaitTimeToDisplayGameOver); break; } case AFEventType.ROUND_OVER: { PlayerComponentsEnabler.EnableOrDisableAllPlayersInputResponses(false); Invoke("LoadRoundOverScene", PlayersState.INSTANCE.WaitTimeToDisplayGameOver); break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.ROUND_OVER: { var payload = (RoundOverPayload)afEvent.payload; TitleText.text = "WINNER OF ROUND " + PlayersState.INSTANCE.gameScores.CurrentRoundNumber; image.color = payload.playerColor; ScoreText.text = payload.roundScore + " Points"; Show(); break; } case AFEventType.GAME_OVER: { var payload = (GameOverPayload)afEvent.payload; TitleText.text = "WINNER"; image.color = payload.playerColor; ScoreText.text = payload.score + " Kills"; Show(); break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { if (afEvent.type == AFEventType.PLAYERS_ALL_CREATED) { var payload = (PlayersAllCreatedPayload)afEvent.payload; AddUIForAllPlayers(payload.AllPlayers); } return(false); }
public bool HandleEvent(AFEvent afEvent) { if (afEvent.type == AFEventType.BOMB_TRIGGER) { var payload = (BombTriggerPayload)afEvent.payload; if (payload.OwnerPlayerNumber == settings.playerNumber) { BombDropped = false; timeSinceLastFire = 0f; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.KILLED: { HandlePlayerKilledEvent((KilledEventPayload)afEvent.payload); return(true); } case AFEventType.PLAYERS_ALL_CREATED: { var payload = (PlayersAllCreatedPayload)afEvent.payload; HandleGameStart(payload.AllPlayers); return(true); } case AFEventType.COUNT_DOWN_FINISHED: { var payload = (CountDownFinishedPayload)afEvent.payload; if (!payload.TimerName.Equals(RoundTimerName)) { break; } countDownTimerInstance.StopTimer(); if (IsEntireGameOver()) { Debug.Log("Game over, time ran out!"); var winningScore = currentRoundScores.SortedByDescendingScores()[0]; AFEventManager.INSTANCE.PostEvent(AFEvents.GameOver(winningScore.PlayerNumber(), winningScore.Score(), winningScore.PlayerColor())); } else { Debug.Log("Round over, time ran out!"); var winningScore = currentRoundScores.SortedByDescendingScores()[0]; AFEventManager.INSTANCE.PostEvent(AFEvents.RoundOver(winningScore.PlayerNumber(), winningScore.Score(), winningScore.PlayerColor())); } break; } case AFEventType.GAME_START: { countDownTimerInstance.StartTimer(); break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.WEAPON_UPGRADE: { var payload = (WeaponUpgradePayload)afEvent.payload; if (payload.PlayerNumber == PlayerNumber) { SetUpgradeColor(payload.UpgradeColor); SetUpgradeProgress(payload.UpgradeProgress); } break; } case AFEventType.SCORE: { var payload = (ScorePayload)afEvent.payload; if (payload.playerNumber == PlayerNumber) { SetScoreText("" + payload.playerScore); } break; } case AFEventType.HEALTH_DAMAGE: { var payload = (HealthDamagePayload)afEvent.payload; if (payload.DamagedPlayerNumber == PlayerNumber) { SetHealth(payload.HealthLeft); } break; } case AFEventType.RESPAWN: { var payload = (RespawnPayload)afEvent.payload; if (payload.PlayerNumber == PlayerNumber) { SetHealth(payload.Health); } break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { if (afEvent.type == AFEventType.BOMB_TRIGGER) { var payload = (BombTriggerPayload)afEvent.payload; if (payload.OwnerPlayerNumber == settings.PlayerOwnerNumber && payload.TriggeredByPlayerInput) { TriggerExplosion(); } } else if (afEvent.type == AFEventType.KILLED) { var payload = (KilledEventPayload)afEvent.payload; if (payload.playerNumberOfKilledPlayer == settings.PlayerOwnerNumber) { TriggerExplosionDueToLifeTime(); } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.SCORE: { var payload = (ScorePayload)afEvent.payload; if (payload.playerScore > leaderScore) { leaderScore = payload.playerScore; leaderPlayerNumber = payload.playerNumber; leaderColor = PlayersState.INSTANCE.GetPlayerColor(leaderPlayerNumber); leaderScoreText.color = leaderColor; leaderScoreText.text = leaderScore + ""; } break; } } return(false); }
public bool HandleEvent(AFEvent afEvent) { switch (afEvent.type) { case AFEventType.KILLED: { return(HandleKilledEvent((KilledEventPayload)afEvent.payload)); } case AFEventType.PLAYERS_ALL_CREATED: { return(HandlePlayersAllCreatedEvent((PlayersAllCreatedPayload)afEvent.payload)); } case AFEventType.GAME_START: { countDownTimerInstance.StartTimer(); return(false); } case AFEventType.COUNT_DOWN_FINISHED: { var payload = (CountDownFinishedPayload)afEvent.payload; if (payload.TimerName.Equals(GameTimerName)) { HandleGameOver(); } return(false); } default: { return(false); } } }