public void OnAfterDamageInflicted(Player owner, GameEvent gameEvent, GameEventArgs eventArgs) { ReadOnlyCard c = Game.CurrentGame.Judge(owner, this); if (c.Suit != SuitType.Heart) { NotifySkillUse(new List<Player>() { eventArgs.Source }); List<DeckPlace> deck = new List<DeckPlace>(); GangLieVerifier ver = new GangLieVerifier(); ISkill skill; List<Card> cards; List<Player> players; if (!Game.CurrentGame.UiProxies[eventArgs.Source].AskForCardUsage(new CardUsagePrompt("GangLie", Owner), ver, out skill, out cards, out players)) { Game.CurrentGame.DoDamage(owner, eventArgs.Source, 1, DamageElement.None, null, null); } else { Game.CurrentGame.HandleCardDiscard(eventArgs.Source, cards); } } else { Trace.TraceInformation("Judgement fail"); } }
public void OnAfterDamageInflicted(Player owner, GameEvent gameEvent, GameEventArgs eventArgs) { ReadOnlyCard c = Game.CurrentGame.Judge(owner, this, null, (judgeResultCard) => { return(judgeResultCard.Suit != SuitType.Heart); }); if (c.Suit != SuitType.Heart) { NotifySkillUse(new List <Player>() { eventArgs.Source }); List <DeckPlace> deck = new List <DeckPlace>(); GangLieVerifier ver = new GangLieVerifier(); ISkill skill; List <Card> cards; List <Player> players; if (!Game.CurrentGame.UiProxies[eventArgs.Source].AskForCardUsage(new CardUsagePrompt("GangLie", Owner), ver, out skill, out cards, out players)) { Game.CurrentGame.DoDamage(owner, eventArgs.Source, 1, DamageElement.None, null, null); } else { Game.CurrentGame.HandleCardDiscard(eventArgs.Source, cards); } } else { Trace.TraceInformation("Judgement fail"); } }