Ejemplo n.º 1
0
bool Application::OnEvent(const SEvent &TEvent) {
	static int ph = 0; 
	
	if(TEvent.EventType == EET_KEY_INPUT_EVENT && !TEvent.KeyInput.PressedDown) {
		switch(TEvent.KeyInput.Key) {
			case KEY_ESCAPE:
				Done = true;
			break;
			case KEY_KEY_Q: 
				paused = ~paused; 
				break; 
			case KEY_KEY_T:
				mRCThrottle += 10;
				break;
			case KEY_KEY_G:
				mRCThrottle -= 10;
				break;
			case KEY_LEFT:
				mRCRoll -= 10;
				break;
			case KEY_RIGHT:
				mRCRoll += 10; 
				break;
			case KEY_UP:
				ph+=1; 
				mRCPitch += 10;
				break;
			case KEY_DOWN:
				ph-=1; 
				mRCPitch -= 10;
				break; 
			case KEY_KEY_F:
				mRCYaw -= 1;
				break; 
			case KEY_KEY_H:
				mRCYaw += 1;
				break; 
			case KEY_KEY_1:
				CreateBox(btVector3(GetRandInt(10) - 5.0f, 7.0f, GetRandInt(10) - 5.0f), vector3df(GetRandInt(3) + 0.5f, GetRandInt(3) + 0.5f, GetRandInt(3) + 0.5f), 500.0f);
			break;
			case KEY_KEY_X:
				CreateStartScene();
			break;
			default:
				return false;
			break;
		}
		
		return true;
	}

	return false;
}
Ejemplo n.º 2
0
void GSceneSelector::RunApplication()
{
	GnSrand( time( 0 ) );
	// initialize director
	CCDirector *pDirector = CCDirector::sharedDirector();
    pDirector->setOpenGLView(&CCEGLView::sharedOpenGLView());

	pDirector->setDisplayFPS(true);	

	pDirector->setAnimationInterval(1.0 / 60);	
	
	
	CreatePlayingData();
	
	GScene* gameScene = CreateStartScene();
	if( gameScene )
		pDirector->runWithScene( gameScene );

	SetCurrentScene( gameScene );
	
	CCDirector::sharedDirector()->setDisplayFPS(false);
}
Ejemplo n.º 3
0
Application::Application():sock(true){
	//int16_t mRCYaw = mRCPitch = mRCRoll = 0; 
	mRCThrottle = 1250; 
	mRCPitch = 1500; 
	mRCYaw = 1500; 
	mRCRoll = 1500; 
	
	mRCThrottle = 2000; 
	mRCPitch = 1000; 
	mRCYaw = 1000; 
	mRCRoll = 1000; 
	
	irrDevice = createDevice(video::EDT_OPENGL, dimension2d<u32>(640, 480), 32, false, false, false, this);
	irrGUI = irrDevice->getGUIEnvironment();
	irrTimer = irrDevice->getTimer();
	irrScene = irrDevice->getSceneManager();
	irrDriver = irrDevice->getVideoDriver();

	irrDevice->getCursorControl()->setVisible(0);

	// load a map
	irrDevice->getFileSystem()->addFileArchive("map-20kdm2.pk3");
	scene::IAnimatedMesh* mesh = irrScene->getMesh("20kdm2.bsp");
	scene::ISceneNode* node = 0;

	if (mesh)
			node = irrScene->addOctreeSceneNode(mesh->getMesh(0), 0, -1, 1024);
	if (node)
			node->setPosition(core::vector3df(-1300,-144,-1249));
        
	// Initialize bullet
	CollisionConfiguration = new btDefaultCollisionConfiguration();
	BroadPhase = new btAxisSweep3(btVector3(-1000, -1000, -1000), btVector3(1000, 1000, 1000));
	Dispatcher = new btCollisionDispatcher(CollisionConfiguration);
	Solver = new btSequentialImpulseConstraintSolver();
	World = new btDiscreteDynamicsWorld(Dispatcher, BroadPhase, Solver, CollisionConfiguration);
	World->setGravity(btVector3(0, -9.82, 0)); 

	// Add camera
	ICameraSceneNode *Camera = irrScene->addCameraSceneNodeFPS(0, 100, 0.01);
	//ICameraSceneNode *Camera = irrScene->addCameraSceneNode();
	Camera->setPosition(vector3df(0, 0, 0));
	Camera->setRotation(vector3df(45, -30, 0)); 
	//Camera->setUpVector(vector3df(0, 0, 1.0)); 
	//Camera->setTarget(vector3df(1, 0, 0));
	
	// Preload textures
	irrDriver->getTexture("ice0.jpg");
	irrDriver->getTexture("rust0.jpg");

	// Create the initial scene
	irrScene->addLightSceneNode(0, core::vector3df(2, 5, -2), SColorf(4, 4, 4, 1));
	irrScene->addLightSceneNode(0, core::vector3df(2, -5, -2), SColorf(4, 4, 4, 1));
	CreateStartScene();

	// Main loop
	TimeStamp = irrTimer->getTime(), DeltaTime = 0;

	Copter *view = new Copter(this);
	activeQuad = view;

	sock.bind("127.0.0.1", 9002); 
}
Ejemplo n.º 4
0
void GSceneSelector::ChangeSceneCheck()
{
	gstring& changeName = GScene::GetChangeSceneName();
	if( changeName.empty() == false )
	{
		CCDirector* pDirector = CCDirector::sharedDirector();
		GScene* changeScene = NULL;
		if( changeName == GScene::SCENENAME_START )
		{
			if( mpLoadingScene == NULL )
			{
				SetLoadingScene();
				return;
			}
			ReleaseScene();
			changeScene = CreateStartScene();
		}
		else if( changeName == GScene::SCENENAME_STATE )
		{
			if( mPlayOpening )
			{
				mPlayOpening = false;
				CCScene* openingScene = GOpeningScene::CreateLoadingScene( 0 );
				if( openingScene )
				{
					pDirector->replaceScene( openingScene );
					changeName.clear();
				}
				return;
			}			
			else if( mpCurrentScene->GetSceneName() == GScene::SCENENAME_SELECTSTAGE )
			{
				if( mpStateScene )
					changeScene = mpStateScene;
				else
					changeScene = CreateStateScene();
			}
			else
			{
//				if( mpCurrentScene->GetSceneName() == GScene::SCENENAME_GAME )
//				{
//					if( mpGameScene->IsWinGame() )
//					{
//						GPlayingData* playing = GPlayingDataManager::GetSingleton()->GetPlayingPlayerData();
//						GPlayingData::ModeInfo& info = playing->GetCurrentModeInfo();
//						info.mLastClearStage += 1;
//						GPlayingDataManager::GetSingleton()->SaveData();
//					}
//				}
				if( mpLoadingScene == NULL )
				{
					SetLoadingScene();
					return;
				}
				ReleaseScene();
				changeScene = CreateStateScene();
			}
		}
		else if( changeName == GScene::SCENENAME_SELECTSTAGE )
		{
			
			if( mpCurrentScene->GetSceneName() == GScene::SCENENAME_STATE )
			{
				if( mpSelectStageScene )
					changeScene = mpSelectStageScene;
				else
					changeScene = CreateSelectStageScene();
			}
			else
			{
				if( mpLoadingScene == NULL )
				{
					SetLoadingScene();
					return;
				}
				ReleaseScene();
				changeScene = CreateSelectStageScene();
			}
		}
		else if( changeName == GScene::SCENENAME_GAME )
		{
			if( mpLoadingScene == NULL )
			{
				SetLoadingScene();
				return;
			}
			ReleaseScene();
			changeScene = CreateGameScene();
		}
		
		SetCurrentScene( changeScene );
		if( changeScene )
			pDirector->replaceScene( changeScene );
		mpLoadingScene = NULL;
		changeName.clear();
	}
}