示例#1
0
        /// <summary>
        /// 玩家出牌
        /// </summary>
        /// <param name="player">轮到出牌的玩家</param>
        /// <param name="token">取消标识</param>
        /// <returns>获取一个 Task,用于等待这个玩家处理结束</returns>
        protected virtual async Task PlayerPlay(GameRoundEvent roundEvnet, CardGamePlayer player, CancellationToken token)
        {
            await OnBeforePlay(roundEvnet, player, token);

            await player.Play(roundEvnet, token);

            await OnAfterPlay(roundEvnet, player, token);
        }