这是一款纸牌休闲类型的游戏,
采用C++语言开发,
实现了纸牌(斗地主)的基本功能,
综合了音乐,动画,美术等多种艺术表达形式。
游戏的实现框架:
CObject 图片父类 CImageFile 图片类(CSprite精灵类) CGUIEdit 文本框类 CardsBox 牌盒子类 CButton 按钮类 CUser 电脑和玩家的父类 CPlayer 玩家类 Computer 电脑类 CSceneManger 场景管理类 CGameApp 应用程序启动类
CObject类的实现:
//得到坐标 virtual void GetPosition(D3DXVECTOR3& vPos); //设置坐标 virtual void SetPosition(float x, float y); //设置角度 virtual void SetRotationAngle(float fAngle); //得到角度 virtual float GetRotationAngle(void); //设置缩放系数 virtual void SetScaling(float x, float y); //得到缩放系数 virtual D3DXVECTOR3 GetScaling(); //矩阵合成 virtual void ApplyMatrix(void); //渲染 virtual void Render(void) = 0;
CCardsBox类的实现
// 洗牌 void Shuffle(void); //发牌 void SendCard(float timer); //渲染 void Render(void); //数据更新 void UpDate(float timer); //设置发牌位置 void SetPosStep(int x, int y, int s); //设置发牌速度 void SetSendSpeed(floatSendSpeed); //回收站 记牌器 void RecyleAdd(Card* Temp); //消息处理 void HandleMessage(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
CUser(玩家)类
//数据更新 void Update(float timer); //渲染 void Render(void); //得到出牌的位置 D3DXVECTOR3 GetAppendPos(); //添加地主牌 void AppendCard(Card* pCardTemp); //初始化玩家的位置,上家,下家,判断是否出牌 void Init(USERPOS UserPos,CCUser *pUp,CCUser *pDown,bool IsBright); //将全部的牌打出 void OutPutCard(void); //清除出了的牌 void ClearVOut(void); //设置玩家生命值(金钱) void SetMoney(UINT Money); //得到金钱 UINT GetMoney(); //得到下家出的牌 CCUser* GetpDown(void); //得到上家出的牌 CCUser* GetpUp(void); //给牌设置记号 void ReSetEven(void); //得到全部牌的数量 int GetOwnCardNum(void); //得到出牌的数量 int GetOutCardNum(void); //得到出牌类型 BRANDSTATUS GetCardType(void); //设置玩家的状态 void SetUserState(USERSTATE state); //设置玩家ID号 SetUserId(USERIDENTITY UserId); //检查牌是否能出 void Check(BRANDSTATUSbrandStatus,vector<Card*> brand,bool IsLimit);

