@Override public void onGoToNextLevel() { ManageableScene currentScene = (ManageableScene) this.mEngine.getScene(); String newScene = null; if (currentScene instanceof IConfigurableScene) newScene = NEXT_SCENE_LAUNCHER.get(((IConfigurableScene) currentScene).getNameOfInstantiatedScene()); else newScene = NEXT_SCENE_LAUNCHER.get(currentScene.getpSCDescriptor().sceneName); // check if the use has purchased the license for the scene if (newScene != null) { // get scene descriptor SceneDescriptor pSDesc; ConfiguredSceneDescriptor pCfgSDesc; String theLicence = null; if ((pSDesc = SceneDescriptorsManager.getInstance().getScene(newScene)) != null) theLicence = pSDesc.getSceneLicenceID(); else if ((pCfgSDesc = SceneDescriptorsManager.getInstance().getCFGScene(newScene)) != null) theLicence = pCfgSDesc.getSceneLicenceID(); else theLicence = "default"; if (!theLicence.equalsIgnoreCase("default")) { if (!mPurchMgr.hasPurchase( theLicence)) { // check if has the licence to show the requested scene newScene = "IAP_monsters_4to24"; // if not launch scene to by the lincence onChangeChildScene(newScene); return; } } } onChangeScene(newScene); return; }
@Override public void onGoToMenu() { ManageableScene currentScene = (ManageableScene) this.mEngine.getScene(); String newScene = null; if (currentScene instanceof IConfigurableScene) newScene = MENU_SCENE_LAUNCHER.get(((IConfigurableScene) currentScene).getNameOfInstantiatedScene()); else newScene = MENU_SCENE_LAUNCHER.get(currentScene.getpSCDescriptor().sceneName); if (newScene != null) onChangeScene(newScene); }