//--------------------------------------------------------------------------------------------------------- // FreePlay //--------------------------------------------------------------------------------------------------------- // Transitions to the Free Play layer //--------------------------------------------------------------------------------------------------------- void FreePlay(object stuff = null) { var layer = FreePlayLayer.CreateScene(Window, currentPlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // BackToMain //--------------------------------------------------------------------------------------------------------- // Returns to Main Menu //--------------------------------------------------------------------------------------------------------- void BackToMain(object stuff = null) { var layer = MenuLayer.CreateScene(Window); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // GoToShop //--------------------------------------------------------------------------------------------------------- // Let the player go to the shop to spend their hard earned coins //--------------------------------------------------------------------------------------------------------- void GoToShop(object stuff = null) { var layer = ShopLayer.CreateScene(Window, activePlayer); var transitionToGame = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToGame); }
//--------------------------------------------------------------------------------------------------------- // Challenges //--------------------------------------------------------------------------------------------------------- // Transitions to the Select Challenge layer //--------------------------------------------------------------------------------------------------------- void Challenges(object stuff = null) { var layer = SelectChallengeLayer.CreateScene(Window, currentPlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // Start - Used in menu selection //--------------------------------------------------------------------------------------------------------- // Transitions to Start Menu layer //--------------------------------------------------------------------------------------------------------- void Start(object stuff = null) { var layer = StartLayer.CreateScene(Window); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // RetryLevel //--------------------------------------------------------------------------------------------------------- // Transitions to the same level the player just completed so they can try again //--------------------------------------------------------------------------------------------------------- void RetryLevel(object stuff = null) { var layer = TutorialLayer.CreateScene(Window, activeLevel, activePlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // Tutorial //--------------------------------------------------------------------------------------------------------- // Transitions to the Tutorial //--------------------------------------------------------------------------------------------------------- void Tutorial(object stuff = null) { currentPlayer.BranchProgression [0].BranchState = CompletionState.started; currentPlayer.WriteData(currentPlayer); var nextTutorialLevel = GetNextTutorialLevelToPlay(); var layer = TutorialLayer.CreateScene(Window, nextTutorialLevel, currentPlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
//--------------------------------------------------------------------------------------------------------- // NextLevel //--------------------------------------------------------------------------------------------------------- // Transitions to the next level for play. If the next level is not in the Tutorial branch, then // transition to the SelectChallengeLayer //--------------------------------------------------------------------------------------------------------- void NextLevel(object stuff = null) { var nextTutorialLevel = GetNextTutorialLevelToPlay(); if (nextTutorialLevel.BranchNum < 1) { var layer = TutorialLayer.CreateScene(Window, nextTutorialLevel, activePlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); } else { activePlayer.BranchProgression [1].IsLocked = false; activePlayer.BranchProgression [0].BranchState = CompletionState.completed; activePlayer.ConsumableAdd = activePlayer.ConsumableCheckPoint = activePlayer.ConsumableNextSeq = activePlayer.ConsumableSubtract = 0; activePlayer.WriteData(activePlayer); var layer = SelectChallengeLayer.CreateScene(Window, activePlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); } }
//--------------------------------------------------------------------------------------------------------- // PlayerSelect //--------------------------------------------------------------------------------------------------------- // Selects a player and transitions to the GameSelect layer //--------------------------------------------------------------------------------------------------------- void PlayerSelect(object stuff) { var layer = new CCScene(Window); var sentMenuItem = (CCMenuItemImage)stuff; var playerSlotString = sentMenuItem.UserData.ToString(); if (playerSlotString == "Slot1") { if (!player1.HasStarted) { player1.HasStarted = true; } player1.WriteData(player1); layer = GameSelectLayer.CreateScene(Window, player1); } if (playerSlotString == "Slot2") { if (!player2.HasStarted) { player2.HasStarted = true; } player2.WriteData(player2); layer = GameSelectLayer.CreateScene(Window, player2); } if (playerSlotString == "Slot3") { if (!player3.HasStarted) { player3.HasStarted = true; } player3.WriteData(player3); layer = GameSelectLayer.CreateScene(Window, player3); } var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
public static CCTransitionScene createTransition(int nIndex, float t, CCScene s) { // fix bug #486, without setDepthTest(false), FlipX,Y will flickers CCDirector.sharedDirector().setDepthTest(false); switch (nIndex) { case 0: return(CCTransitionJumpZoom.transitionWithDuration(t, s)); case 1: return(CCTransitionFade.transitionWithDuration(t, s)); case 2: return(FadeWhiteTransition.transitionWithDuration(t, s)); case 3: return(FlipXLeftOver.transitionWithDuration(t, s)); case 4: return(FlipXRightOver.transitionWithDuration(t, s)); case 5: return(FlipYUpOver.transitionWithDuration(t, s)); case 6: return(FlipYDownOver.transitionWithDuration(t, s)); case 7: return(FlipAngularLeftOver.transitionWithDuration(t, s)); case 8: return(FlipAngularRightOver.transitionWithDuration(t, s)); case 9: return(ZoomFlipXLeftOver.transitionWithDuration(t, s)); case 10: return(ZoomFlipXRightOver.transitionWithDuration(t, s)); case 11: return(ZoomFlipYUpOver.transitionWithDuration(t, s)); case 12: return(ZoomFlipYDownOver.transitionWithDuration(t, s)); case 13: return(ZoomFlipAngularLeftOver.transitionWithDuration(t, s)); case 14: return(ZoomFlipAngularRightOver.transitionWithDuration(t, s)); case 15: return(CCTransitionShrinkGrow.transitionWithDuration(t, s)); case 16: return(CCTransitionRotoZoom.transitionWithDuration(t, s)); //case 17: return CCTransitionMoveInL.transitionWithDuration(t, s); //case 18: return CCTransitionMoveInR.transitionWithDuration(t, s); //case 19: return CCTransitionMoveInT.transitionWithDuration(t, s); //case 20: return CCTransitionMoveInB.transitionWithDuration(t, s); case 17: return(CCTransitionSlideInL.transitionWithDuration(t, s)); case 18: return(CCTransitionSlideInR.transitionWithDuration(t, s)); case 19: return(CCTransitionSlideInT.transitionWithDuration(t, s)); case 20: return(CCTransitionSlideInB.transitionWithDuration(t, s)); case 21: { if (CCConfiguration.sharedConfiguration().getGlesVersion() <= CCGlesVersion.GLES_VER_1_0) { //CCMessageBox("The Opengl ES version is lower than 1.1, and TransitionCrossFade may not run correctly, it is ignored.", "Cocos2d-x Hint"); return(null); } else { return(CCTransitionCrossFade.transitionWithDuration(t, s)); } } case 22: { if (CCConfiguration.sharedConfiguration().getGlesVersion() <= CCGlesVersion.GLES_VER_1_0) { //CCMessageBox("The Opengl ES version is lower than 1.1, and TransitionRadialCCW may not run correctly, it is ignored.", "Cocos2d-x Hint"); return(null); } else { return(CCTransitionRadialCCW.transitionWithDuration(t, s)); } } case 23: { if (CCConfiguration.sharedConfiguration().getGlesVersion() <= CCGlesVersion.GLES_VER_1_0) { //CCMessageBox("The Opengl ES version is lower than 1.1, and TransitionRadialCW may not run correctly, it is ignored.", "Cocos2d-x Hint"); return(null); } else { return(CCTransitionRadialCW.transitionWithDuration(t, s)); } } case 24: return(PageTransitionForward.transitionWithDuration(t, s)); // case 25: return PageTransitionBackward.transitionWithDuration(t, s); case 26: return(CCTransitionFadeTR.transitionWithDuration(t, s)); case 27: return(CCTransitionFadeBL.transitionWithDuration(t, s)); case 28: return(CCTransitionFadeUp.transitionWithDuration(t, s)); case 29: return(CCTransitionFadeDown.transitionWithDuration(t, s)); case 30: return(CCTransitionTurnOffTiles.transitionWithDuration(t, s)); case 31: return(CCTransitionSplitRows.transitionWithDuration(t, s)); case 25: return(CCTransitionSplitCols.transitionWithDuration(t, s)); default: break; } return(null); }
//--------------------------------------------------------------------------------------------------------- // SeqMenuCallBack //--------------------------------------------------------------------------------------------------------- // Callback when sequence UI icon is touched //--------------------------------------------------------------------------------------------------------- void ChallengeMenuCallback(object pSender) { var nextLevelToPlay = new Level(); var sentMenuItem = (CCMenuItemImage)pSender; var challengeTypeString = sentMenuItem.UserData.ToString(); int branchProgressionIndex; // index of current branch progression switch (challengeTypeString) { case "Linear": { branchProgressionIndex = 1; currentPlayer.ActiveBranch = BranchType.Linear; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Even": { branchProgressionIndex = 2; currentPlayer.ActiveBranch = BranchType.Even; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Odd": { branchProgressionIndex = 3; currentPlayer.ActiveBranch = BranchType.Odd; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Triangular": { branchProgressionIndex = 4; currentPlayer.ActiveBranch = BranchType.Triangular; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Square": { branchProgressionIndex = 5; currentPlayer.ActiveBranch = BranchType.Square; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Lazy": { branchProgressionIndex = 6; currentPlayer.ActiveBranch = BranchType.Lazy; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Fibonacci": { branchProgressionIndex = 7; currentPlayer.ActiveBranch = BranchType.Fibonacci; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Prime": { branchProgressionIndex = 8; currentPlayer.ActiveBranch = BranchType.Prime; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Double": { branchProgressionIndex = 9; currentPlayer.ActiveBranch = BranchType.Double; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Triple": { branchProgressionIndex = 10; currentPlayer.ActiveBranch = BranchType.Triple; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Pi": { branchProgressionIndex = 11; currentPlayer.ActiveBranch = BranchType.Pi; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } case "Recaman": { branchProgressionIndex = 12; currentPlayer.ActiveBranch = BranchType.Recaman; nextLevelToPlay = GetNextLevelToPlay(branchProgressionIndex); currentPlayer.BranchProgression [branchProgressionIndex].BranchState = CompletionState.started; break; } } // TODO: because we set the branch progression after a challenge is selected, we should write to the player file var layer = ChallengeLevelLayer.CreateScene(Window, nextLevelToPlay, currentPlayer); var transitionToLayer = new CCTransitionSlideInR(0.2f, layer); Director.ReplaceScene(transitionToLayer); }
public static new CCTransitionSlideInR Create(float t, CCScene scene) { var pScene = new CCTransitionSlideInR(); pScene.InitWithDuration(t, scene); return pScene; }