本文整理汇总了C#中DominionBase.Players.Player.AddToken方法的典型用法代码示例。如果您正苦于以下问题:C# Player.AddToken方法的具体用法?C# Player.AddToken怎么用?C# Player.AddToken使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DominionBase.Players.Player
的用法示例。
在下文中一共展示了Player.AddToken方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Play
public override void Play(Player player)
{
base.Play(player);
player.AddToken(new CoinToken());
}
示例2: Play
public override void Play(Player player)
{
base.Play(player);
Choice choice = new Choice("Choose 1:", this, new CardCollection() { this }, new List<string>() { "Perform attack", String.Format("+<coin>{0}</coin> (from Pirate Ship tokens)", player.TokenPiles[TypeClass.PirateShipToken].Count) }, player);
ChoiceResult result = player.MakeChoice(choice);
if (result.Options.Contains("Perform attack"))
{
// Perform attack on every player (including you)
IEnumerator<Player> enumerator = player._Game.GetPlayersStartingWithEnumerator(player);
enumerator.MoveNext();
Boolean anyTrashed = false;
while (enumerator.MoveNext())
{
Player attackee = enumerator.Current;
if (this.IsAttackBlocked[attackee])
continue;
attackee.Draw(2, DeckLocation.Revealed);
CardCollection treasures = attackee.Revealed[Category.Treasure];
Choice choiceTrash = new Choice(String.Format("Choose a Treasure card of {0} to trash", attackee), this, treasures, attackee);
ChoiceResult resultTrash = player.MakeChoice(choiceTrash);
if (resultTrash.Cards.Count > 0)
{
attackee.Trash(attackee.RetrieveCardFrom(DeckLocation.Revealed, resultTrash.Cards[0]));
anyTrashed = true;
}
attackee.DiscardRevealed();
}
if (anyTrashed)
player.AddToken(new PirateShipToken());
}
else
{
CardBenefit benefit = new CardBenefit();
benefit.Currency += new Coin(player.TokenPiles[TypeClass.PirateShipToken].Count);
player.ReceiveBenefit(this, benefit);
}
}