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

📄 gameclientengine.cpp

📁 混乱竞技场的全套代码,客户端资源可以网上搜
💻 CPP
字号:
               // GameClientEngine.cpp: implementation of the GameClientEngine class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "GameClientEngine.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

GameClientEngine::GameClientEngine()
{
	m_enableBackgroundActive	= TRUE;
	idr_command_updatemode	= IDC_UPDATEMODE;
	idr_choose_mode			= IDC_CHANGEDEVICE;	
	m_isOperating	= TRUE;
	m_isWantZBuffer	= FALSE;

	m_is_show_help	= TRUE;
	m_is_show_fps		= TRUE;

	m_font16		= NULL;
}

GameClientEngine::~GameClientEngine()
{

}
HRESULT GameClientEngine::OnCreate()						
{ 
	m_font16 = CGsFunc::Font_QuickCreateFont(16);
	return S_OK; 
}
HRESULT GameClientEngine::OnFinalCleanup()		
{ 
	DeleteObject(m_font16);
	return S_OK; 
}

LRESULT	GameClientEngine::MsgProc( UINT uMsg, WPARAM wParam, LPARAM lParam )
{
	switch(uMsg) 
	{
	case WM_COMMAND:
		switch(LOWORD(wParam)) 
		{
		case IDC_HELP_TIP:
			m_is_show_help	^= 1;
			return 0;
		case IDC_SHOW_FPS:
			m_is_show_fps	^= 1;
			return 0;
		default:
			break;
		}
		break;
	default:
		break;
	}
	return CGsEngine::MsgProc(uMsg, wParam, lParam);
}

ID	GameClientEngine::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)
{
//	switch(nChar) {
//	case '0':
//		break;
//	case '':
//		break;
//	default:
//	}
	return CGsEngine::OnKeyUp(nChar, nRepCnt, nFlags);
}

HRESULT GameClientEngine::OnRender()					
{ 
	HRESULT hr = CGsEngine::OnRender();
	if(m_is_show_help)
	{
		GRECT rc(170, 150, 630, 430);
		PreparePaint();
		Render_DrawRect(&rc, TRUE, D3DRGBA(0.0f, 0.0f, 0.0f, 0.3f));
		Render_DrawRect(&rc, FALSE, D3DRGBA(1.0f, 0.7f, 0.2f, 0.3f));
	}
	return hr; 
}

HRESULT GameClientEngine::OnDraw(CGsSurface* pBackSurface)
{
	char str_tip[555];
	int y = 30;
	{
		sprintf(str_tip, "F9   Help");
		pBackSurface->DrawTextDirect(NULL, str_tip, GetRenderWidth() - 220, y, RGB(255,255,255), RGB(0,0,0));
		y+=20;
		sprintf(str_tip, "F10  Show FPS");
		pBackSurface->DrawTextDirect(NULL, str_tip, GetRenderWidth() - 220, y, RGB(255,255,255), RGB(0,0,0));
		y+=20;
		sprintf(str_tip, "F11  Switch screen mode");
		pBackSurface->DrawTextDirect(NULL, str_tip, GetRenderWidth() - 220, y, RGB(255,255,255), RGB(0,0,0));
		y+=20;
		sprintf(str_tip, "F12  Switch GDI draw mode");
		pBackSurface->DrawTextDirect(NULL, str_tip, GetRenderWidth() - 220, y, RGB(255,255,255), RGB(0,0,0));
		y+=20;
	}
	if(m_is_show_fps)
	{
		pBackSurface->DrawTextDirect(NULL, g_strInfo, GetRenderWidth() - 220, y, RGB(255,255,255), RGB(0,0,0));
	}
	if(m_is_show_help)
	{
		y=-20;
		sprintf(str_tip, "《混乱竞技场》测试版本1.0");
		pBackSurface->DrawTextDirect(m_font16, str_tip, 270, 200+y, RGB(255,200,55), RGB(0,0,0));
		sprintf(str_tip, "功能键表:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 250, 230+y, RGB(155,255,155), RGB(0,0,0));
		sprintf(str_tip, "游戏简介:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 450, 230+y, RGB(155,255,155), RGB(0,0,0));
		sprintf(str_tip, "复活:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 200, 250+y, RGB(255,255,255), RGB(0,0,0));
		sprintf(str_tip, "空格键");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 250+y, RGB(200,175,35), RGB(0,0,0));
		sprintf(str_tip, "自动攻击:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 200, 270+y, RGB(255,255,255), RGB(0,0,0));
		sprintf(str_tip, "Q 键");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 270+y, RGB(200,175,35), RGB(0,0,0));
		sprintf(str_tip, "攻击:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 200, 290+y, RGB(255,255,255), RGB(0,0,0));
		sprintf(str_tip, "A 键");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 290+y, RGB(200,175,35), RGB(0,0,0));
		sprintf(str_tip, "停止攻击:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 200, 310+y, RGB(255,255,255), RGB(0,0,0));
		sprintf(str_tip, "S 键");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 310+y, RGB(200,175,35), RGB(0,0,0));
		sprintf(str_tip, "       魔法与力量的共存冲斥着整个混乱的世界,魔神诅咒了一切,在这里已经没有任何事物可以停止战斗,选择你的英雄,投入无尽的战斗……");
		GRECT rc(400, 250, 600, 350);
		pBackSurface->DrawTextInRect(NULL, str_tip, 400, 250+y, 200, 200+y, RGB(200,175,35), RGB(0,0,0));
		sprintf(str_tip, "作者:");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 340+y, RGB(255,155,255), RGB(0,0,0));
		sprintf(str_tip, "不夜人");
		int x = this->ValueCycle(350, 450);
		pBackSurface->DrawTextDirect(NULL, str_tip, x, 340+y, RGB(255,225,65), RGB(0,0,0));
		sprintf(str_tip, "QQ");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 360+y, RGB(255,155,255), RGB(0,0,0));
		sprintf(str_tip, "38874907");
		x = this->ValueCycle(0, 255);
		pBackSurface->DrawTextDirect(NULL, str_tip, 370, 360+y, RGB(x,x,x), RGB(0,0,0));
		sprintf(str_tip, "MSN");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 380+y, RGB(255,155,255), RGB(0,0,0));
		sprintf(str_tip, "jin_ke@hotmail.com");
		pBackSurface->DrawTextDirect(NULL, str_tip, 350, 380+y, RGB(255,225,65), RGB(0,0,0));
		sprintf(str_tip, "E-Mail");
		pBackSurface->DrawTextDirect(NULL, str_tip, 300, 400+y, RGB(255,155,255), RGB(0,0,0));
		sprintf(str_tip, "chenjinke@21cn.com");
		pBackSurface->DrawTextDirect(NULL, str_tip, 350, 400+y, RGB(255,225,65), RGB(0,0,0));
		sprintf(str_tip, "按F9关闭面板");
		pBackSurface->DrawTextDirect(NULL, str_tip, 350, 420+y, RGB(155,125,65), RGB(0,0,0));
	}
	return CGsEngine::OnDraw(pBackSurface);
}

⌨️ 快捷键说明

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