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);
}
}