PlayCheckDel.h
上传用户:jalin138
上传日期:2022-02-12
资源大小:5720k
文件大小:1k
源码类别:

游戏引擎

开发平台:

Visual C++

  1. #pragma once
  2. #include <list>
  3. #include "StatePlay.h"
  4. class CPlayCheckDel :
  5. public CState
  6. {
  7. public:
  8. CPlayCheckDel(CSprite* _Vector[],
  9.   ST_GAME_PLAY *_play);
  10. virtual ~CPlayCheckDel(void);
  11. // 状态逻辑接口
  12. virtual bool Logic(void);
  13. // 状态渲染接口
  14. virtual void Render(void);
  15. // 传入场景管理对象,以改变状态
  16. virtual bool Handle(CSceneManage *_Manage);
  17. protected:
  18. bool Check_Del(void);
  19. // 横向检测
  20. bool Check_Across(const int _n);
  21. // 列向检测
  22. bool Check_Erect(const int _n);
  23. protected:
  24. // 记录消除项
  25. void RegisterDle(int _n);
  26. void RemoveDle(int _n);
  27. // 设置当前移动项
  28. bool SetMove(void);
  29. bool SetMove(int _n);
  30. // 消除效果
  31. bool UpdateDelPar(void);
  32. void SetDelPar(const int _n);
  33. void DeleteDelPar(void);
  34. // 减少对象透明度
  35. bool SetColor(void);
  36. // 落下
  37. bool DropMove(void);
  38. // 交换
  39. bool Change(const int _n);
  40. // 增加
  41. bool EddSprite(const int _n);
  42. protected:
  43. CSprite* m_vSprite[g_vector]; //精灵
  44. ST_GAME_PLAY *m_pPlay; //游戏属性数据
  45. int  m_listDel[g_vector];
  46. std::vector<int> m_vMove;
  47. std::list<hgeParticleSystem*> m_listDelPar;
  48. int m_nState;
  49. bool m_bHaveDel;
  50. HEFFECT m_sMatch;
  51. };