bool AppDelegate::applicationDidFinishLaunching() { #if CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 initRuntime(); #elif (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0) // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE if (_launchMode) { initRuntime(); } #endif initResourcePath(); // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { Size viewSize = ConfigParser::getInstance()->getInitViewSize(); string title = ConfigParser::getInstance()->getInitViewName(); #if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_MAC) extern void createSimulator(const char* viewName, float width, float height, bool isLandscape = true, float frameZoomFactor = 1.0f); bool isLanscape = ConfigParser::getInstance()->isLanscape(); createSimulator(title.c_str(),viewSize.width,viewSize.height, isLanscape); #else glview = cocos2d::GLViewImpl::createWithRect(title.c_str(), Rect(0, 0, viewSize.width, viewSize.height)); director->setOpenGLView(glview); #endif director->startAnimation(); } auto engine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(engine); lua_State* L = engine->getLuaStack()->getLuaState(); lua_module_register(L); //myunzip lua_getglobal(L, "_G"); register_all_myunzip(L); lua_pop(L, 1); // use Quick-Cocos2d-X quick_module_register(L); LuaStack* stack = engine->getLuaStack(); #if ANYSDK_DEFINE > 0 lua_getglobal(stack->getLuaState(), "_G"); tolua_anysdk_open(stack->getLuaState()); tolua_anysdk_manual_open(stack->getLuaState()); lua_pop(stack->getLuaState(), 1); #endif // stack->setXXTEAKeyAndSign("2dxLua", strlen("2dxLua"), "XXTEA", strlen("XXTEA")); //register custom function //LuaStack* stack = engine->getLuaStack(); //register_custom_function(stack->getLuaState()); stack->addSearchPath("src"); #if (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0) // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE if (_launchMode) { startRuntime(); } else { engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str()); } #else engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str()); #endif return true; }
bool AppDelegate::applicationDidFinishLaunching() { #if CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 initRuntime(); #elif (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0) // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE if (_launchMode) { initRuntime(); } #endif initResourcePath(); // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { Size viewSize = ConfigParser::getInstance()->getInitViewSize(); string title = ConfigParser::getInstance()->getInitViewName(); #if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_MAC) extern void createSimulator(const char* viewName, float width, float height, bool isLandscape = true, float frameZoomFactor = 1.0f); bool isLanscape = ConfigParser::getInstance()->isLanscape(); createSimulator(title.c_str(),viewSize.width,viewSize.height, isLanscape); #else glview = cocos2d::GLViewImpl::createWithRect(title.c_str(), Rect(0, 0, viewSize.width, viewSize.height)); director->setOpenGLView(glview); #endif director->startAnimation(); } auto engine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(engine); lua_State* L = engine->getLuaStack()->getLuaState(); lua_module_register(L); // use Quick-Cocos2d-X quick_module_register(L); LuaStack* stack = engine->getLuaStack(); #if ANYSDK_DEFINE > 0 lua_getglobal(stack->getLuaState(), "_G"); tolua_anysdk_open(stack->getLuaState()); tolua_anysdk_manual_open(stack->getLuaState()); lua_pop(stack->getLuaState(), 1); #endif stack->setXXTEAKeyAndSign("ilovecocos2dx", strlen("ilovecocos2dx"), "XXTEA", strlen("XXTEA")); stack->addSearchPath("src"); #if (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0) // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE if (_launchMode) { startRuntime(); } #endif FileUtils *utils = FileUtils::getInstance(); const char *updateFileName = "code/launcher.zip"; std::string updateFilePath = utils->fullPathForFilename(updateFileName); bool isUpdate = false; if (updateFilePath.compare(updateFileName) != 0) //check if update file exist { printf("%s\n", updateFilePath.c_str()); isUpdate = true; engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str()); } if (!isUpdate) //no update file { const char *zipFilename ="code/game.zip"; std::string zipFilePath = utils->fullPathForFilename(zipFilename); if (zipFilePath.compare(zipFilename) == 0) //no game zip file use default lua file { engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str()); } else { stack->loadChunksFromZIP(zipFilename); stack->executeString("require 'main'"); } } return true; }
bool AppDelegate::applicationDidFinishLaunching() { #if CC_TARGET_PLATFORM == CC_PLATFORM_MAC if (_projectConfig.getDebuggerType() == kCCLuaDebuggerCodeIDE) { initRuntime(_projectConfig.getProjectDir()); if (!ConfigParser::getInstance()->isInit()) { ConfigParser::getInstance()->readConfig(); } } #endif //CC_TARGET_PLATFORM == CC_PLATFORM_MAC // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { #if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_MAC || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) #else Size viewSize = _projectConfig.getFrameSize(); glview = GLView::createWithRect("simpleui", Rect(0,0,viewSize.width,viewSize.height)); director->setOpenGLView(glview); #endif } // turn on display FPS director->setDisplayStats(true); // set FPS. the default value is 1.0/60 if you don't call this director->setAnimationInterval(1.0 / 60); // register lua engine LuaEngine* pEngine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(pEngine); LuaStack *pStack = pEngine->getLuaStack(); #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) // load framework pStack->loadChunksFromZIP("res/framework_precompiled.zip"); // set script path string path = FileUtils::getInstance()->fullPathForFilename("src/main.lua"); #elif (CC_TARGET_PLATFORM == CC_PLATFORM_WP8 || CC_TARGET_PLATFORM == CC_PLATFORM_WINRT) // load framework pStack->loadChunksFromZIP("res/framework_precompiled_wp8.zip"); // set script path string path = FileUtils::getInstance()->fullPathForFilename("src/main.lua"); #else // load framework if (_projectConfig.isLoadPrecompiledFramework()) { const string precompiledFrameworkPath = SimulatorConfig::getInstance()->getPrecompiledFrameworkPath(); pStack->loadChunksFromZIP(precompiledFrameworkPath.c_str()); } // set script path string path = FileUtils::getInstance()->fullPathForFilename(_projectConfig.getScriptFileRealPath().c_str()); #endif #if CC_TARGET_PLATFORM == CC_PLATFORM_MAC // Code IDE if (_projectConfig.getDebuggerType() == kCCLuaDebuggerCodeIDE) { if (startRuntime()) return true; } #endif //CC_TARGET_PLATFORM == CC_PLATFORM_MAC size_t pos; while ((pos = path.find_first_of("\\")) != std::string::npos) { path.replace(pos, 1, "/"); } size_t p = path.find_last_of("/\\"); if (p != path.npos) { const string dir = path.substr(0, p); pStack->addSearchPath(dir.c_str()); p = dir.find_last_of("/\\"); if (p != dir.npos) { pStack->addSearchPath(dir.substr(0, p).c_str()); } } string env = "__LUA_STARTUP_FILE__=\""; env.append(path); env.append("\""); pEngine->executeString(env.c_str()); CCLOG("------------------------------------------------"); CCLOG("LOAD LUA FILE: %s", path.c_str()); CCLOG("------------------------------------------------"); pEngine->executeScriptFile(path.c_str()); return true; }
bool AppDelegate::applicationDidFinishLaunching() { // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { auto title = StringUtils::format("quick-cocos2d-x (%s)", cocos2dVersion()); glview = GLViewImpl::createWithRect(title, Rect(0, 0, 640, 960)); director->setOpenGLView(glview); } director->getOpenGLView()->setDesignResolutionSize(640, 960, ResolutionPolicy::FIXED_WIDTH); // turn on display FPS director->setDisplayStats(false); // set FPS. the default value is 1.0/60 if you don't call this director->setAnimationInterval(1.0 / 60); FileUtils::getInstance()->addSearchPath("res"); // run director->runWithScene(MainScene::create()); return true; // set default FPS Director::getInstance()->setAnimationInterval(1.0 / 60.0f); // register lua module auto engine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(engine); lua_State* L = engine->getLuaStack()->getLuaState(); lua_module_register(L); register_all_packages(); LuaStack* stack = engine->getLuaStack(); stack->setXXTEAKeyAndSign("2dxLua", strlen("2dxLua"), "XXTEA", strlen("XXTEA")); #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) // load framework stack->loadChunksFromZIP("res/framework_precompiled.zip"); #else // load framework if (_projectConfig.isLoadPrecompiledFramework()) { const string precompiledFrameworkPath = SimulatorConfig::getInstance()->getPrecompiledFrameworkPath(); stack->loadChunksFromZIP(precompiledFrameworkPath.c_str()); } #endif FileUtils::getInstance()->setPopupNotify(false); // set script path string path = FileUtils::getInstance()->fullPathForFilename("scripts/main.lua"); size_t pos; while ((pos = path.find_first_of("\\")) != std::string::npos) { path.replace(pos, 1, "/"); } size_t p = path.find_last_of("/\\"); if (p != path.npos) { const string dir = path.substr(0, p); stack->addSearchPath(dir.c_str()); p = dir.find_last_of("/\\"); if (p != dir.npos) { stack->addSearchPath(dir.substr(0, p).c_str()); } } string env = "__LUA_STARTUP_FILE__=\""; env.append(path); env.append("\""); engine->executeString(env.c_str()); CCLOG("------------------------------------------------"); CCLOG("LOAD LUA FILE: %s", path.c_str()); CCLOG("------------------------------------------------"); engine->executeScriptFile(path.c_str()); return true; }