Example #1
0
    public virtual void OnNoMorePiecesMoving(NoMorePiecesMovingArgs e)
    {
        EventHandler <NoMorePiecesMovingArgs> handler = NoMorePiecesMoving;

        if (handler != null)
        {
            handler(this, e);
        }
    }
Example #2
0
    /*------------------------------------------------------------------------------------------------------------------*/
    /********************************************************************************************************************/
    /*************************************************** Behaviours *****************************************************/
    /********************************************************************************************************************/
    /*------------------------------------------------------------------------------------------------------------------*/


    /// <summary>
    /// Called when all of the player's pieces are done moving during the movement phase.
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected override void MovementPhase_NoMorePiecesMoving(object sender, NoMorePiecesMovingArgs e)
    {
        NoMorePiecesMoving -= MovementPhase_NoMorePiecesMoving;
        if (piecesInPool.Count == 0)
        {
            EndTurn();
            return;
        }
        InitiateDeployment();
    }
Example #3
0
 /// <summary>
 /// Removes GamePieces from the movingPieces collection. Raises an event when there are no moving pieces left.
 /// </summary>
 /// <param name="piece">GamePiece to be removed from the collection.</param>
 protected void RemoveMovingPiece(GamePiece piece)
 {
     if (nmpmArgs == null)
     {
         nmpmArgs = new NoMorePiecesMovingArgs(this);
     }
     movingPieces.Remove(piece);
     if (movingPieces.Count == 0)
     {
         OnNoMorePiecesMoving(nmpmArgs);
     }
 }
Example #4
0
 /// <summary>
 /// Used to determine when pieces in play have stopped moving.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected virtual void MovementPhase_NoMorePiecesMoving(object sender, NoMorePiecesMovingArgs e)
 {
     InitiateDeployment();
     NoMorePiecesMoving -= MovementPhase_NoMorePiecesMoving;
 }
Example #5
0
 /// <summary>
 /// Signals the end of the players deployment.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected virtual void DeploymentPhase_DeploymentFinished(object sender, NoMorePiecesMovingArgs e)
 {
     NoMorePiecesMoving -= DeploymentPhase_DeploymentFinished;
     EndTurn();
 }