📄 map.h
字号:
#ifndef _MAP_H
#define _MAP_H
/********************************************************************
文件名: MAP.h
Copyright (c)2004 红孩儿工作室
创建人 : 卞安
创建时间: 2004-5-18 12:33:30
版本: 1.0
类名: CMAP
说明:
地图数据类
********************************************************************/
#include "ELSTILE.h"
#include "Cuboid.h"
#include "ELSTILE.h"
#include "2DSOUND.h"
//---------------------------------------------------------------
class CMAP
{
CCuboid *m_tile[9];//格子
CELSTILE *m_thistile;//当前方块组合
CELSTILE *m_lasttile;//下一个方块组合
CELSTILE m_testtile;//测试转动方块组合
int m_x;//tile的格子X位置
int m_y;//tile的格子Y位置
float m_fy;//Y位置的浮点数
int m_type;
LPDIRECT3DDEVICE8 m_pD3DDevice;
HWND m_hWnd;
C2DSOUND *m_sound;//---声音------
C2DSOUND *m_sound2;//---声音------
public:
bool m_IsshowNext;//是否显示下一个方块
bool m_cancon;
int xiaorownum;//消行数量
bool m_addrow;//是否给对方加行数
int m_nowrow;//现在的行数
bool m_finish;//是否结束
bool m_Isdown;//是否在下落
long m_score;//分数
int m_level;//级别
int g_level;//原设定级别
int m_speed;//速度
int m_map[20][10];
/** 成员函数.
* 初始化
*/
CMAP();
~CMAP();
bool init(int _type,int _level,int _row,bool _shownext,LPDIRECT3DDEVICE8 pD3DDevice,HWND _hWnd,C2DSOUND *_sound,C2DSOUND *_sound2);
void Render();
/** 成员函数.
* 清空容器
*/
void CleanMap();
/** 成员函数.
* 随机生成地图
*\param _row为行数
*/
void RandMap(int _row);
/** 成员函数.
* 使行数增加
*\param _row为行数
*/
void AddToMap(int _row);
/** 成员函数.
* 判断碰撞
*_tile为方块
*/
bool IsAttack(CELSTILE *_tile);
/** 成员函数.
* 下落
*_tile为方块
*\result 返回是否完成
*/
void GoDown(CELSTILE *_tile);
/** 成员函数.
* 下落至低部
*_tile为方块
*/
void GoButtom(CELSTILE *_tile);
/** 成员函数.
* 开始下落至低部
*/
void StartGoButtom();
/**成员函数.
*等级判断
*\return 返回增加值
*/
int AddLevel();
/**成员函数.
*速度判断
*/
void AddSpeed();
/**成员函数.
*向左移
*/
void GoLeft(CELSTILE *_tile);
/**成员函数.
*向右移
*/
void GoRight(CELSTILE *_tile);
/**成员函数.
*处理碰撞
*/
void DoAttack(CELSTILE *_tile);
/**成员函数.
*转动方块
*/
void RotateTile(CELSTILE *_tile);
/**成员函数.
*回到顶端
*/
void GoTop(CELSTILE *_tile);
/**成员函数.
*回到顶端
*/
void GoFinish1();
/**成员函数.
*回到顶端
*/
void GoFinish2();
/**成员函数.
*进行修正
*/
void DoGood();
/**成员函数.
*设置下一个方块组合
*/
void SetNext(CELSTILE *_tile);
/**成员函数.
*消行处理
*/
bool DoXiaoAni();
/**!\brief
*渲染下一个
*/
void RenderNext();
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -