GameStateBehaviour.OnHitOpponentCup C# (CSharp) Method

OnHitOpponentCup() private method

private OnHitOpponentCup ( int cupID ) : void
cupID int
return void
	private void OnHitOpponentCup (int cupID) {

		if ((States)GetState () != States.BallReleased &&
			(States)GetState () != States.HitRing) {

			return;
		
		}

		if ((BeerPongNetwork.Instance.thisPlayerID == BeerPong.PlayerID.First && cupID >= 0 && cupID < playerCupCount) ||
		    (BeerPongNetwork.Instance.thisPlayerID == BeerPong.PlayerID.Second && cupID >= playerCupCount && cupID < 2*playerCupCount)) {

			if (!dictCup.ContainsKey (cupID)) return;

			hitCups.Add (dictCup [cupID].GetComponent <BeerPongCup> ());
			BeerPongNetwork.Instance.OnHitOpponentCup (cupID);

			if ((States) GetState () != States.HitOpponentCup) {

				ChangeState (States.HitOpponentCup);
			} 
		} 
		
		else {
			
			ChangeState (States.MissedOpponentCup);
		}
	}