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

📄 editor.cpp

📁 3D游戏疯狂的鸡蛋
💻 CPP
字号:
/*
	Crazy Eggs Editor

	Author : Kevin Lynx
	Date   : 2007.1.26
*/
#include	"Editor.h"
#include	"CMainBoard.h"

#include	"../resourceGen/res.h"

#include	"../../build/resource1.h"

Editor::Editor()
{
	mWidth	=	G_WINDOW_WIDTH;
	mHeight	=	G_WINDOW_HEIGHT;

	mTitle	=	"Crazy Eggs Level Editor---Kevin Lynx-2007.1.27";

	mAutoEnable3D		=	true;
	mDebugKeysEnabled	=	true;
	mNoSoundNeeded		=	true;

	m_mainBoard	=	NULL;
}

Editor::~Editor()
{
	if( m_mainBoard != NULL )
	{
		mWidgetManager->RemoveWidget( m_mainBoard );
		delete	m_mainBoard;
	}
	
	mResourceManager->DeleteResources( "" );
}

void	Editor::Init()
{
	SexyAppBase::Init();

	//set the customer icon
	HICON	hNewIcon = ::LoadIcon( gHInstance, (LPCTSTR) IDI_ICON1  );
	if( !hNewIcon )
	{
		Popup( "Load Icon IDI_ICON1 Failed!" );
	}
	else
	{
		::SendMessage( this->mHWnd, WM_SETICON, true, (LPARAM)hNewIcon ); 
	}

	LoadResourceManifest();

	if( !mResourceManager->LoadResources( "Init" ) ||
		!ExtractInitResources( mResourceManager ))
	{
		mLoadingFailed	=	true;
		ShowResourceError( true );
		return ;
	}

	mNumLoadingThreadTasks = mResourceManager->GetNumResources("Game") + 
							 mResourceManager->GetNumResources("GUI");

}

void	Editor::LoadingThreadProc()
{
	mResourceManager->StartLoadResources("Game");

	while (mResourceManager->LoadNextResource())
	{
		mCompletedLoadingThreadTasks++;

	}

	if (mResourceManager->HadError() || !ExtractGameResources(mResourceManager))
	{		
		ShowResourceError(false);
		mLoadingFailed = true;
	
		return;
	}

	mResourceManager->StartLoadResources("GUI");

	while (mResourceManager->LoadNextResource())
	{
		mCompletedLoadingThreadTasks++;

	}

	if (mResourceManager->HadError() || !ExtractGUIResources(mResourceManager))
	{		
		ShowResourceError(false);
		mLoadingFailed = true;
	
		return;
	}

}

void	Editor::LoadingThreadCompleted()
{
	
	SexyAppBase::LoadingThreadCompleted();

	if( mLoadingFailed )
		return ;
	
	//load resource successfully
	
	m_mainBoard	=	new	CMainBoard( this );
	m_mainBoard->Init();

	m_mainBoard->Resize( 0, 0, mWidth, mHeight );

	mWidgetManager->AddWidget( m_mainBoard );
	mWidgetManager->SetFocus( m_mainBoard );
}

⌨️ 快捷键说明

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