PlayCheckDel.h
上传用户:jalin138
上传日期:2022-02-12
资源大小:5720k
文件大小:1k
- #pragma once
- #include <list>
- #include "StatePlay.h"
- class CPlayCheckDel :
- public CState
- {
- public:
- CPlayCheckDel(CSprite* _Vector[],
- ST_GAME_PLAY *_play);
- virtual ~CPlayCheckDel(void);
- // 状态逻辑接口
- virtual bool Logic(void);
- // 状态渲染接口
- virtual void Render(void);
- // 传入场景管理对象,以改变状态
- virtual bool Handle(CSceneManage *_Manage);
- protected:
- bool Check_Del(void);
- // 横向检测
- bool Check_Across(const int _n);
- // 列向检测
- bool Check_Erect(const int _n);
- protected:
- // 记录消除项
- void RegisterDle(int _n);
- void RemoveDle(int _n);
- // 设置当前移动项
- bool SetMove(void);
- bool SetMove(int _n);
- // 消除效果
- bool UpdateDelPar(void);
- void SetDelPar(const int _n);
- void DeleteDelPar(void);
- // 减少对象透明度
- bool SetColor(void);
- // 落下
- bool DropMove(void);
- // 交换
- bool Change(const int _n);
- // 增加
- bool EddSprite(const int _n);
- protected:
- CSprite* m_vSprite[g_vector]; //精灵
- ST_GAME_PLAY *m_pPlay; //游戏属性数据
- int m_listDel[g_vector];
- std::vector<int> m_vMove;
- std::list<hgeParticleSystem*> m_listDelPar;
- int m_nState;
- bool m_bHaveDel;
- HEFFECT m_sMatch;
- };