您的位置:首页 > 编程语言 > C#

[原创]一步一步用C#编写三国杀(二):牌堆的设计

2010-07-29 08:55 239 查看
原创文章,转载请保留作者署名!

前一节说到了一些基础性的定义。这一节开始将进入流程的分析。

首先,在游戏的场景建立之后,你就必须有一个牌堆。对于目前的需求来说,只要有手牌的牌堆即可;尽管后面可能还要有身份牌堆和武将牌堆,但目前只考虑手牌,即游戏牌。于是有以下定义:

/// <summary>
/// 定义牌堆的基本类型。
/// </summary>
/// <typeparam name="T">参数类型。</typeparam>
public abstract class CardHeap<T> : Collection<T>
{

}

定义为抽象的,是我希望能提供一些通用的方法以简化其他牌堆的设计。

对于牌堆来说,其一个重要的功能就是能够压出牌以供使用,因此定义如下:

扩展包接口

/// <summary>
/// 定义扩展包所必须实现的接口。
/// </summary>
public interface IPackage
{
/// <summary>
/// 扩展包中的游戏牌。
/// </summary>
GameCard[] GameCards { get; }
}

好,牌堆的设计就说到这里,后面就定义实际的基本牌,并将进入实际流程循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: