📄 cgamelogin.cpp
字号:
#include "stdafx.h"
CGameLogin::CGameLogin( void )
{
//获取接口
m_pRS = (IRenderSystem*)FOXRENDERSYSTEM::GetInstance( CLD_IRENDERSYSTEM );
m_pResMgr = (IResManage*)FOXRENDERSYSTEM::GetInstance( CLD_IRESMANAGE );
m_pGuiMgr = (IGuiManage*)FOXRENDERSYSTEM::GetInstance( CLD_IGUIMANAGE );
//设置状态
m_dwState = SCENE_LOOP;
//创建按钮
POINT sPt;
sPt.x = 165 - 95;
sPt.y = 354;
m_pButton = (IButton*)m_pGuiMgr->CreateButton( "Button_Start",sPt,"selete.spr","SprRes/SprRes.pack" );
//加入GUI管理器
m_pGuiMgr->AddToGuiManage( (void*)m_pButton );
//创建背景
m_pBg = m_pResMgr->CreateSprite( "gamelogin.spr","SprRes/SprRes.pack" );
}
CGameLogin::~CGameLogin( void )
{
//释放资源
SafeRelease( m_pBg );
SafeRelease( m_pButton );
//释放接口
SafeRelease( m_pRS );
SafeRelease( m_pResMgr );
SafeRelease( m_pGuiMgr );
}
void CGameLogin::SetState( DWORD a_dwState )
{
m_dwState = a_dwState;
}
DWORD CGameLogin::GetState( void )
{
return m_dwState;
}
DWORD CGameLogin::m_dwState;
void CGameLogin::PostMessage( DWORD a_dwMsg,char a_chWORD )
{
if( CGameLogin::m_dwState != SCENE_LOOP )
{
return;
}
//发送消息
m_pGuiMgr->PostMessage( a_dwMsg,a_chWORD );
//消息处理
this->MsgProc();
}
void CGameLogin::MsgProc( void )
{
//消息处理
IMessage sMsg;
//获取控件消息
m_pGuiMgr->DispatchMessage( sMsg );
//Button_Start按钮被点击
if( ( sMsg.s_dwMsg == WM_LBUTTONDOWN ) && ( strcmp( sMsg.s_strName,"Button_Start" ) == 0 ) )
{
//修改状态为准备
CGameLogin::m_dwState = SCENE_END;
CGameContent::SetState( SCENE_READY );
}
//默认消息处理
m_pGuiMgr->DefMsgProc();
}
bool CGameLogin::Updata( void )
{
while( CGameLogin::m_dwState == SCENE_LOOP )
{
//判断是否有退出消息
if( CScene::Updata() == false )
{
return false;
}
//渲染
this->Render();
}
return true;
}
void CGameLogin::Render( void )
{
//场景开始
m_pRS->BeginScene();
//绘制背景
m_pBg->SetPostion( 0,0 );
m_pBg->Draw( false );
//绘制GUI
m_pGuiMgr->DrawAll();
//场景结束
m_pRS->EndScene();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -