本文整理汇总了C#中Dominion.PlayerState.InitializeTurn方法的典型用法代码示例。如果您正苦于以下问题:C# PlayerState.InitializeTurn方法的具体用法?C# PlayerState.InitializeTurn怎么用?C# PlayerState.InitializeTurn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Dominion.PlayerState
的用法示例。
在下文中一共展示了PlayerState.InitializeTurn方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PlayTurn
public void PlayTurn(PlayerState currentPlayer)
{
System.Threading.Interlocked.Increment(ref turnTotalCount);
currentPlayer.numberOfTurnsPlayed += 1;
IPlayerAction currentPlayerAction = currentPlayer.actions;
this.gameLog.BeginTurn(currentPlayer);
this.gameLog.PushScope();
currentPlayer.InitializeTurn();
ReturnCardsToHandAtStartOfTurn(currentPlayer);
DoActionsQueuedFromPreviousTurn(currentPlayer);
DoDurationActionsFromPreviousTurn(currentPlayer);
DoActionPhase(currentPlayer);
DoPlayTreasures(currentPlayer);
currentPlayer.RequestPlayerSpendCoinTokensBeforeBuyPhase(this);
DoBuyPhase(currentPlayer);
DoCleanupPhase(currentPlayer);
int cardCountForNextTurn = this.doesCurrentPlayerNeedOutpostTurn ? 3 : 5;
currentPlayer.DrawUntilCountInHand(cardCountForNextTurn);
currentPlayer.playPhase = PlayPhase.NotMyTurn;
this.gameLog.EndTurn(currentPlayer);
this.gameLog.PopScope();
}
示例2: PlayTurn
public void PlayTurn(PlayerState currentPlayer)
{
System.Threading.Interlocked.Increment(ref turnTotalCount);
currentPlayer.numberOfTurnsPlayed += 1;
IPlayerAction currentPlayerAction = currentPlayer.actions;
this.gameLog.BeginTurn(currentPlayer);
this.gameLog.PushScope();
currentPlayer.InitializeTurn();
ReturnCardsToHandAtStartOfTurn(currentPlayer);
DoActionsQueuedFromPreviousTurn(currentPlayer);
DoDurationActionsFromPreviousTurn(currentPlayer);
DoActionPhase(currentPlayer);
DoPlayTreasures(currentPlayer);
currentPlayer.RequestPlayerSpendCoinTokensBeforeBuyPhase(this);
DoBuyPhase(currentPlayer);
DoCleanupPhase(currentPlayer);
int cardCountForNextTurn = this.doesCurrentPlayerNeedOutpostTurn ? 3 : 5;
currentPlayer.EnterPhase(PlayPhase.DrawCards);
currentPlayer.DrawUntilCountInHand(cardCountForNextTurn, this);
currentPlayer.EnterPhase(PlayPhase.NotMyTurn);
this.gameLog.PopScope();
this.gameLog.EndTurn(currentPlayer);
// turn counters need to be 0 such that if this player ends up looking at the state while not it's turn
// e.g. as reaction or attack, it can make correct choices on current state such as AvailableCoin.
currentPlayer.InitializeTurn();
}