⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_render.h

📁 C++课程大学作业的一次任务
💻 H
字号:
///////////////////////////////
//     M_Render.h
//
// M_RENDER CLASS
//   CORE RENDERER OF THE UPM
//
// PROJECT: ULTRA PAC MAN
// PROGRAMER: Mal
// LAST UPDATE: NOV. 24th 2001
//////////////////////////////\

//USAGE:JUST AS ANY OF OUR SINGLE INSTANCE CLASSES, WE
//      HAD PREPARED A PRE-DEFINED GLOBAL POINTER FOR YOU,
//      IN THIS CASE, IT'S thisRenderer;

#include "m_common.h"

#ifndef M_RENDERER
 #define M_RENDERER

//Changed List's node, storges the changed area of the screen.
//All other on-screen class should send info into one of
//these nodes and link to the bottom of the list
//Then when the Refresh() is called, it will go through
//all the nodes of it and make the changes happen.
struct ChgNode
{
	int nPosX;
	int nPosY;
	int nTexture;
	ChgNode* pNext;
};

class M_Render
{
 public:
	M_Render();
	~M_Render();
	bool Refresh();
	bool AddMBC(int bx, int by, int texture);
	bool AddEC(int x, int y, int texture, int offsetX=0, int offsetY=0);
	void TextXY(int x, int y, int color, char* text);
	void NumXY(int x, int y, int color, long num);

 protected:
	ChgNode* pMBC_Head;
	ChgNode* pEC_Head;
};

extern M_Render* thisRenderer;
#endif

//NOTICE!!!
// the x and y in AddMBC and AddEC are the mapblock index,
// while in the TextXY are the actual position!!!

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -