public bool HandleSingleTouchBegan(FTouch touch)
    {
        if (gameIsOver && !initiatedSceneSwitch)
        {
            FSoundManager.StopMusic();
            initiatedSceneSwitch = true;
            if (goalType == GoalType.GoalOne)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalOne);
            }
            else if (goalType == GoalType.GoalTwo)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalTwo);
            }
            else if (goalType == GoalType.GoalThree)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalThree);
            }
        }

        if (readyToStartOver && !initiatedSceneSwitch)
        {
            initiatedSceneSwitch = true;
            TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalOne);
        }

        return(true);
    }
Exemplo n.º 2
0
 public void DoneShowingLabels()
 {
     if (this.dreamSceneType == DreamSceneType.DreamSceneOne)
     {
         TMain.SwitchToScene(TMain.SceneType.MergeNamesScene);
     }
     else if (this.dreamSceneType == DreamSceneType.DreamSceneTwo)
     {
         TMain.SwitchToScene(TMain.SceneType.ClickHeartsScene);
     }
 }
 public void HandleUpdate()
 {
     if (numTrebellaLettersInPlace == 8 && numNonTrebellaLettersLeft == 0 && !trebellaLettersHaveStartedSolidifying)
     {
         FSoundManager.PlaySound("success");
         trebellaLettersHaveStartedSolidifying = true;
     }
     else if (trebellaLettersHaveStartedSolidifying && !trebellaLettersDoneSolidifying)
     {
         UpdateSolidifyingTrebellaLetters();
     }
     else if (trebellaLettersDoneTurningIntoHearts)
     {
         timeSinceTrebellaLettersFinishedTurningIntoHearts += Time.deltaTime;
         if (timeSinceTrebellaLettersFinishedTurningIntoHearts > 1.0f && !initiatedSceneSwitch)
         {
             initiatedSceneSwitch = true;
             TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalTwo);
         }
     }
 }
    public bool HandleSingleTouchBegan(FTouch touch)
    {
        if (!gameHasStarted && gameReadyToStart)
        {
            StartGame();
            return(true);
        }
        if (gameIsOver && !gameFullyOver)
        {
            return(false);
        }
        if (gameFullyOver && !initiatedSceneSwitch)
        {
            if (score >= 1000000)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalThree);
            }
            else
            {
                TMain.SwitchToScene(TMain.SceneType.ClickHeartsScene);
            }
            initiatedSceneSwitch = true;
        }

        for (int i = hearts.Count - 1; i >= 0; i--)
        {
            FSprite heart = hearts[i];

            if (heart.localRect.Contains(heart.GlobalToLocal(touch.position)))
            {
                previousScore = score;
                FSoundManager.PlaySound("rise");
                score += 40000;
                KillHeart(heart);
                break;
            }
        }

        return(true);
    }
    public void UpdatePostGameOver()
    {
        endGameWaitTimer += Time.fixedDeltaTime;

        if (endGameWaitTimer > 1.0f && Input.anyKeyDown && !initiatedSceneSwitch)
        {
            FSoundManager.StopMusic();
            initiatedSceneSwitch = true;
            if (goalType == GoalType.GoalOne)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalOne);
            }
            else if (goalType == GoalType.GoalTwo)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalTwo);
            }
            else if (goalType == GoalType.GoalThree)
            {
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalThree);
            }
        }
    }
    public void UpdateGoal()
    {
        if (totalDistance < goalDistance - 1000f || initiatedSceneSwitch)
        {
            return;
        }

        if (goalType == GoalType.GoalOne)
        {
            if (faceCoin == null)
            {
                faceCoin   = new FSprite("danaHappy.png");
                faceCoin.x = Futile.screen.width + 100f;
                faceCoin.y = 250f;
                everythingContainer.AddChild(faceCoin);
                everythingContainer.AddChild(whit);                 // move him to top

                Tween tween1 = new Tween(faceCoin, 0.5f, new TweenConfig()
                                         .floatProp("scaleX", -1.0f)
                                         .setEaseType(EaseType.SineInOut));

                Tween tween2 = new Tween(faceCoin, 0.5f, new TweenConfig()
                                         .floatProp("scaleX", 1.0f)
                                         .setEaseType(EaseType.SineInOut));

                TweenChain chain = new TweenChain();
                chain.setIterations(-1);
                chain.append(tween1);
                chain.append(tween2);
                Go.addTween(chain);
                chain.play();
            }

            faceCoin.x += Time.fixedDeltaTime * universalVelocity;

            if (faceCoin.x < 100f)
            {
                initiatedSceneSwitch = true;
                FSoundManager.PlaySound("success");
                TMain.SwitchToScene(TMain.SceneType.DreamSceneOne);
            }
        }

        else if (goalType == GoalType.GoalTwo)
        {
            if (bigHeartCoin == null)
            {
                bigHeartCoin       = new FSprite("heart.psd");
                bigHeartCoin.scale = 2.0f;
                bigHeartCoin.x     = Futile.screen.width + 100f;
                bigHeartCoin.color = new Color(1.0f, 0.2f, 0.2f, 1.0f);
                bigHeartCoin.y     = 250f;
                everythingContainer.AddChild(bigHeartCoin);
                everythingContainer.AddChild(whit);                 // move to top

                Tween tween1 = new Tween(bigHeartCoin, 0.5f, new TweenConfig()
                                         .floatProp("scaleX", -1.0f)
                                         .setEaseType(EaseType.SineInOut));

                Tween tween2 = new Tween(bigHeartCoin, 0.5f, new TweenConfig()
                                         .floatProp("scaleX", 1.0f)
                                         .setEaseType(EaseType.SineInOut));

                TweenChain chain = new TweenChain();
                chain.setIterations(-1);
                chain.append(tween1);
                chain.append(tween2);
                Go.addTween(chain);
                chain.play();
            }

            bigHeartCoin.x += Time.fixedDeltaTime * universalVelocity;

            if (bigHeartCoin.x < 100f)
            {
                initiatedSceneSwitch = true;
                FSoundManager.StopMusic();
                FSoundManager.PlaySound("success");
                TMain.SwitchToScene(TMain.SceneType.DreamSceneTwo);
            }
        }

        else if (goalType == GoalType.GoalThree)
        {
            if (dana == null)
            {
                dana   = new TWalkingCharacter("danaHead.png");
                dana.x = Futile.screen.width + 100f;
                dana.y = 250f;
                everythingContainer.AddChild(dana);
                dana.StartWalking();
            }

            dana.x += Time.fixedDeltaTime * universalVelocity * 0.25f;

            if (dana.x < 350f)
            {
                start.isVisible = goal.isVisible = false;
                FSoundManager.PlayMusic("yay");
                foundEachother = true;
                dana.TurnAround();
                dana.StopWalking();
                whit.StopWalking();
                parallaxScene.StopUpdating();
                whit.StopCrouching();
                StartHeartShower();
            }
        }
    }
    public void HandleUpdate()
    {
        if (readyToStartOver && !initiatedSceneSwitch)
        {
            if (Input.anyKeyDown)
            {
                initiatedSceneSwitch = true;
                TMain.SwitchToScene(TMain.SceneType.PeopleSceneGoalOne);
            }
        }

        if (gameIsOver)
        {
            UpdatePostGameOver();
            return;
        }

        if (foundEachother)
        {
            UpdatePostFoundEachOther();
            UpdateFinalNote();
            return;
        }

        if (Input.GetKeyDown(KeyCode.Space) && !whit.isJumping)
        {
            whit.Jump();
        }
        if (Input.GetKey(KeyCode.Space))
        {
            if (whit.isCrouched)
            {
                whit.decelAmt = 100f;
            }
            else
            {
                whit.decelAmt = 50f;
            }
        }
        else
        {
            whit.decelAmt = 250f;
        }
        if (Input.GetKey(KeyCode.DownArrow))
        {
            whit.StartCrouching();
        }
        if (Input.GetKeyUp(KeyCode.DownArrow))
        {
            whit.StopCrouching();
        }

        if (!tutorialIsDone)
        {
            UpdateTutorial();
        }

        else
        {
            UpdateUIElements();
            UpdateHeartTokens();
            UpdateHeartTokenCollisions();
            UpdateGoal();
        }
    }