void JudgeIndividualJade(ICard cardJade, IPlayer playerPlaying, IPlayer playerReceiving) { // TODO Do we need to do this everywhere for jade, prison and bomb? Seriously? ICard cardUsedToJudge = CentralCardDeck.DrawACard(); Util.PrintPlayerAction(playerReceiving, cardUsedToJudge, PlayerAction.Judge); if (CardJudge.CardJudgingResult(cardJade, cardUsedToJudge)) { CardJudge.CardTakeEffect(playerPlaying, playerReceiving, cardJade, null); Util.PrintPlayerAction(playerReceiving, cardJade, PlayerAction.JadeTakeEffect); } else { CardJudge.CardNotTakeEffect(null, playerPlaying, playerReceiving, cardJade); Util.PrintPlayerAction(playerReceiving, cardJade, PlayerAction.JadeNotTakeEffect); } }
void JudgeIndividualBomb(List <IPlayer> playerList, IPlayer playerCarrying) { ICard cardBombCarrying = playerCarrying.CardCarrying.Find(c => c.CardCarryingType == CarriedType.Bomb); if (cardBombCarrying == null) { // Early out if no bomb found return; } ICard cardUsedToJudge = null; //IPlayer playerResponding; // Raise the ResponseNeeded event ICard cardResponded = AllPlayersCanRespond(cardBombCarrying, null); if (cardResponded != null) { Util.PrintPlayerAction(cardResponded.PlayerPlaying, cardResponded, PlayerAction.Counter); CardJudge.CardNotTakeEffect(PlayerList, null, playerCarrying, cardBombCarrying); Util.PrintPlayerAction(playerCarrying, null, PlayerAction.BombNotTakeEffect); } else { Util.PrintPlayerAction(playerCarrying, null, PlayerAction.NoResponseFromAll); cardUsedToJudge = CentralCardDeck.DrawACard(); Util.PrintPlayerAction(playerCarrying, cardUsedToJudge, PlayerAction.Judge); if (CardJudge.CardJudgingResult(cardBombCarrying, cardUsedToJudge)) { CardJudge.CardTakeEffect(null, playerCarrying, cardBombCarrying, null); Util.PrintPlayerAction(playerCarrying, null, PlayerAction.BombTakeEffect); Util.PrintPlayerAction(playerCarrying, null, PlayerAction.TakeDamage); } else { CardJudge.CardNotTakeEffect(PlayerList, null, playerCarrying, cardBombCarrying); Util.PrintPlayerAction(playerCarrying, null, PlayerAction.BombNotTakeEffect); } } }