public void AddPointTo(playerNumber player) { myAudioSource.PlayOneShot(pointSound); GameManager.Instance.Score[player]++; GameManager.Instance.UpdateUI(); Engage(player.GetOpponent()); }
public PlayerMove GetPlayer(playerNumber player) { if (player == playerNumber.Player1) { return(players[0]); } else { return(players[1]); } }
public void Engage(playerNumber player) { if (player == playerNumber.Player2) { StartCoroutine(ball.Setup(engagePosition)); } else { StartCoroutine(ball.Setup(engagePosition * (Vector2.left + Vector2.up))); } }
private void OnCollisionEnter2D(Collision2D other) { GameObject collisionObject = other.gameObject; if (myTrailRenderer.enabled) { myTrailRenderer.enabled = false; } switch (collisionObject.tag) { case "Border": { GameManager.Instance.MyMatchManager.AddPointTo(lastPlayerHitting.GetOpponent()); lastPlayerHitting = lastPlayerHitting.GetOpponent(); break; } case "Ground": { if ((lastPlayerHitting == playerNumber.Player1 && transform.position.x > 0) || (lastPlayerHitting == playerNumber.Player2 && transform.position.x < 0)) { GameManager.Instance.MyMatchManager.AddPointTo(lastPlayerHitting); } else { GameManager.Instance.MyMatchManager.AddPointTo(lastPlayerHitting.GetOpponent()); lastPlayerHitting = lastPlayerHitting.GetOpponent(); } break; } case "Net": { GameManager.Instance.MyMatchManager.AddPointTo(lastPlayerHitting.GetOpponent()); lastPlayerHitting = lastPlayerHitting.GetOpponent(); break; } case "Player": { //TODO rewrite those 3 lines (yes the sound of hittingplayer is way too strong) myAudioSource.volume /= 5; myAudioSource.PlayOneShot(hitPlayerSound); myAudioSource.volume *= 5; PlayerMove player = collisionObject.GetComponent <PlayerMove>(); GameManager.Instance.MyMatchManager.AddPointTo(player.PlayerNumber.GetOpponent()); lastPlayerHitting = player.PlayerNumber.GetOpponent(); break; } } }
public static playerNumber GetOpponent(this playerNumber player) { switch (player) { case playerNumber.Player1: return(playerNumber.Player2); case playerNumber.Player2: return(playerNumber.Player1); default: return(playerNumber.Player1); } }
private void UpdateScore(playerNumber player) { switch (player) { case playerNumber.Player1: { ReplaceScore(scorePlayer1, player); break; } case playerNumber.Player2: { ReplaceScore(scorePlayer2, player); break; } } }
private void UpdateGauge(playerNumber player) { Racket racket = GameManager.Instance.GetPlayer(player).MyRacket; float percent = racket.SmashCurrentCharge / racket.SmashMaxCharge; switch (player) { case playerNumber.Player1: { FillGauge(gaugeSmashPlayer1, percent); break; } case playerNumber.Player2: { FillGauge(gaugeSmashPlayer2, percent); break; } } }
private void ReplaceScore(TextMeshProUGUI textToReplace, playerNumber player) { textToReplace.text = textToReplace.text.Remove(textToReplace.text.IndexOf(":") + 2); textToReplace.text = textToReplace.text.Insert(textToReplace.text.Length, GameManager.Instance.Score[player].ToString()); }