void handle_signal(int signal) { static int internal_state = 0; ScriptingCore* sc = ScriptingCore::getInstance(); // should start everything back CCDirector* director = CCDirector::sharedDirector(); if (director->getRunningScene()) { director->popToRootScene(); } else { CCPoolManager::sharedPoolManager()->finalize(); if (internal_state == 0) { //sc->dumpRoot(NULL, 0, NULL); sc->start(); internal_state = 1; } else { sc->runScript("hello.js"); internal_state = 0; } } }
void TFBaseLayer::go(TFBaseLayer* pLayer) { if (pLayer) { TRANSIT_LAYER->setFromLayer(this); TRANSIT_LAYER->setToLayer(pLayer); } else { TRANSIT_LAYER->setFromLayer(NULL); TRANSIT_LAYER->setToLayer(this); } CCDirector* pDirector = CCDirector::sharedDirector(); CCScene* pScene = this->wrap(TRANSIT_LAYER); if (pDirector->getRunningScene()) { pDirector->replaceScene(pScene); } else { pDirector->runWithScene(pScene); } }
void SceneManager::pop() { CCDirector* director = CCDirector::sharedDirector(); if (director->getRunningScene()) { director->popScene(); } }
void SceneManager::push(CCLayer* layer) { CCDirector* director = CCDirector::sharedDirector(); CCScene* newScene = SceneManager::wrap(layer); if (director->getRunningScene()) //这句话 很有可能写的不对啊 有哪位大侠知道怎么写 告知下... { director->pushScene( newScene); } }
void SceneManager::go(CCLayer* layer, int transType) { CCDirector* director = CCDirector::sharedDirector(); CCScene* newScene = SceneManager::wrap(layer); if (director->getRunningScene()) //这句话 很有可能写的不对啊 有哪位大侠知道怎么写 告知下... { CCTransitionScene* transScene = SceneManager::createTransition(newScene, transType); director->replaceScene(transScene); } else { director->runWithScene(newScene); } }
InGameScene* InGameScene::getGameLayer() { CCDirector* pDirector = CCDirector::sharedDirector(); CCScene* pScene = pDirector->getRunningScene(); int tag = pScene->getTag(); if(tag == TAG_INGAMESCENE) { CCNode* pNode = pScene->getChildByTag(TAG_INGAMELAYER); if(pNode != NULL) { return (InGameScene*)pNode; } else { return NULL; } } else { return NULL; } }
void Java_org_cocos2dx_hellocpp_HelloCpp_controllerMotion(JNIEnv* env, jobject thiz, jint player, jfloat LS_X, jfloat LS_Y, jfloat RS_X, jfloat RS_Y) { CCDirector *pDirector = CCDirector::sharedDirector(); if(pDirector != NULL) { CCScene *scene = pDirector->getRunningScene(); if(scene != NULL) { Game* layer = (Game*)scene->getChildByTag(1001); if(layer != NULL) { layer->controllerMotion(player, LS_X, LS_Y, RS_X, RS_Y); } } } }
void Java_org_cocos2dx_hellocpp_HelloCpp_keyPressed(JNIEnv* env, jobject thiz, jint player, jint keyCode) { CCDirector *pDirector = CCDirector::sharedDirector(); if(pDirector != NULL) { CCScene *scene = pDirector->getRunningScene(); if(scene != NULL) { Game* layer = (Game*)scene->getChildByTag(1001); if(layer != NULL) { layer->keyControllerPressed(player, keyCode); } } } }