コード例 #1
0
    //Initiate scene by setting background and setting up objects
    internal void startBack(playStatus a_state)
    {
        transform.SetSiblingIndex(0);

        thisScreen = GetComponent <Image>();

        GameObject helper = GameObject.Find("Helper");

        if (helper != null)
        {
            helper.transform.SetParent(this.transform, false);
        }

        changeBack(a_state);
    }
コード例 #2
0
    //Change the game's state, closing/opening containers and changing text.
    public override void changeState(playStatus newState)
    {
        base.changeState(newState);

        disableObjects();

        gameState = newState;

        monsterManager.DisplayScore();

        switch (gameState)
        {
        case playStatus.ArenaHome:
            homeScreen.SetActive(true);
            break;

        case playStatus.ArenaStart:
            startScreen.SetActive(true);
            break;

        case playStatus.ArenaCombat:
            battleScreen.SetActive(true);
            break;

        case playStatus.ArenaContinue:
            monsterManager.PlayerWon();
            continueScreen.SetActive(true);
            break;

        case playStatus.ArenaLost:
            lossScreen.SetActive(true);
            monsterManager.PlayerLost();
            break;

        case playStatus.subjectSelect:
            SceneManager.LoadScene(1);
            break;

        case playStatus.ArenaLeaderBoard:
            leaderboard.SetActive(true);
            break;

        default:
            break;
        }
    }
コード例 #3
0
    //Change the game's state, closing/opening containers and changing text.
    public override void changeState(playStatus newState)
    {
        base.changeState(newState);

        disableObjects();

        gameState = newState;
        switch (gameState)
        {
        /*
         * case playStatus.Login:
         *  list.Save();
         *  gameInstruction.text = "";
         *  login.SetActive(true);
         *  break;
         */
        case playStatus.Start:
            startContainer.SetActive(true);
            break;

        case playStatus.subjectSelect:
            SceneManager.LoadScene(1);
            break;

        case playStatus.MyMonster:
            SceneManager.LoadScene(2);
            break;

        case playStatus.Splash:
            splashContainer.SetActive(true);
            break;

        case playStatus.ArenaHome:
            SceneManager.LoadScene(5);
            break;

        default:
            break;
        }
    }
コード例 #4
0
    //Change the game's state, closing/opening containers and changing text.
    public override void changeState(playStatus newState)
    {
        base.changeState(newState);

        disableObjects();

        gameState = newState;
        switch (gameState)
        {
        case playStatus.LillyHome:
            lillyhomeSelection.SetActive(true);

            break;

        case playStatus.subjectSelect:
            SceneManager.LoadScene(1);
            break;

        default:
            break;
        }
    }
コード例 #5
0
    //Change the game's state, closing/opening containers and changing text.
    public virtual void changeState(playStatus newState)
    {
        if (header)
        {
            if (newState == playStatus.Won)
            {
                header.UpdateUI(false);
            }
            else
            {
                header.UINeedsUpdate = true;
            }
        }
        backgrounds.changeBack(newState);

        if (manager == null)
        {
            manager = FindObjectOfType <MusicManager>();
            return;
        }
        manager.setMusic(newState);
    }
コード例 #6
0
    //Change the game's state, closing/opening containers and changing text.
    public void changeState(playStatus newState)
    {
        DisableObjects();

        optionState = newState;
        switch (optionState)
        {
        case playStatus.Options:
            optionsSelection.SetActive(true);
            break;

        case playStatus.SoundControl:
            SoundsOptions.SetActive(true);
            break;

        case playStatus.OtherOptions:
            otherOptions.SetActive(true);
            break;

        case playStatus.Credits:
            creditsSelection.SetActive(true);
            break;

        default:
            if (starParticle)
            {
                starParticle.gameObject.SetActive(true);
            }

            if (gold)
            {
                gold.gameObject.SetActive(true);
            }
            Destroy(gameObject);
            Time.timeScale = 1;
            break;
        }
    }
コード例 #7
0
    //Select a music clip, and check if the clip is different. If so, swap it in and play it.
    public void setMusic(playStatus newState)
    {
        if (musicSource == null)
        {
            musicSource = gameObject.GetComponent <AudioSource>();
        }


        musicSource.pitch = 1;


        AudioClip adding = null;

        musicSource.loop = true;

        switch (newState)
        {
        case playStatus.Start:
            adding = music[0];
            break;

        case playStatus.subjectSelect:
            adding = music[1];
            break;

        case playStatus.Addition:
            adding = music[2];
            break;

        case playStatus.Subtraction:
            adding = music[3];
            break;

        case playStatus.Multiplication:
            adding = music[4];
            break;

        case playStatus.Division:
            adding = music[5];
            break;

        case playStatus.MathFortress:
            adding = music[6];
            break;

        case playStatus.playing:
            musicSource.Stop();
            return;

        case playStatus.Won:
            musicSource.Stop();
            break;

        case playStatus.Lost:
            musicSource.loop = false;
            adding           = music[9];
            break;

        case playStatus.MyMonster:
            adding = music[10];
            break;

        case playStatus.MonsterCustomisation:
            adding = music[11];
            break;

        case playStatus.LillyHome:
            adding = music[12];
            break;

        case playStatus.Options:
            adding = music[13];
            break;

        case playStatus.Credits:
            adding = music[16];
            break;

        case playStatus.Login:
            adding = music[17];
            break;

        case playStatus.Splash:
            adding = music[0];
            break;

        case playStatus.ArenaHome:
            adding = music[0];
            break;

        case playStatus.ArenaStart:
            adding = music[1];
            break;

        case playStatus.ArenaCombat:
            musicSource.Stop();
            return;

        case playStatus.ArenaContinue:
            adding = music[8];
            break;

        case playStatus.ArenaLost:
            adding = music[9];
            break;

        case playStatus.ArenaLeaderBoard:
            break;

        default:
            break;
        }
        if (adding != null && adding != musicSource.clip)
        {
            musicSource.clip = adding;
            musicSource.Play();
        }
    }
コード例 #8
0
    //Change the game's state, closing/opening containers and changing text.
    public override void changeState(playStatus newState)
    {
        base.changeState(newState);

        disableObjects();

        gameState = newState;
        switch (gameState)
        {
        case playStatus.Login:
            list.Save();
            SceneManager.LoadScene(0);

            break;

        case playStatus.Start:
            list.Save();
            SceneManager.LoadScene(0);
            break;

        case playStatus.subjectSelect:
            checkLevelsAvailable();
            monsterM.quizRunning = null;
            subjectContainer.SetActive(true);
            break;

        case playStatus.Addition:
            awakenSubject(additionSelection);
            additionSelection.SetActive(true);
            break;

        case playStatus.Subtraction:
            awakenSubject(subtractionSelection);
            subtractionSelection.SetActive(true);
            break;

        case playStatus.Multiplication:
            awakenSubject(multiplicationSelection);
            multiplicationSelection.SetActive(true);
            break;

        case playStatus.Division:
            awakenSubject(divisionSelection);
            divisionSelection.SetActive(true);
            break;

        case playStatus.MathFortress:
            awakenSubject(mathfortressSelection);
            mathfortressSelection.SetActive(true);
            break;

        case playStatus.playing:
            player.gameObject.SetActive(true);
            enemyContainer.gameObject.SetActive(true);
            combatContainer.SetActive(true);
            container.gameObject.SetActive(true);
            break;

        case playStatus.Lost:
            enemyContainer.gameObject.SetActive(false);

            combatContainer.SetActive(true);
            FindObjectOfType <TorsoPart>().Animate(Animations.Dead);
            loseContainer.SetActive(true);
            loseContainer.GetComponent <WinState>().End(0);

            container.DisableThisAndCalculator();

            break;

        case playStatus.Won:
            checkLevelsAvailable();
            nextButton.ready();
            combatContainer.SetActive(true);
            enemyContainer.gameObject.SetActive(false);
            WinContainer.SetActive(true);
            int exp = player.CalculateExperience();
            WinContainer.GetComponent <WinState>().End(exp);
            list.equip.shards += exp;
            container.DisableThisAndCalculator();
            FindObjectOfType <TorsoPart>().Animate(Animations.Attack);
            break;

        case playStatus.MyMonster:
            SceneManager.LoadScene(2);
            break;

        case playStatus.Splash:
            SceneManager.LoadScene(0);
            break;

        case playStatus.ArenaHome:
            SceneManager.LoadScene(5);
            break;

        default:
            break;
        }
    }
コード例 #9
0
    //We're changing states, which means changing the background to suit that state.
    public void changeBack(playStatus a_state)
    {
        if (thisScreen == null)
        {
            return;
        }

        newImage = null;

        GameObject scroller = null;

        switch (a_state)
        {
        case playStatus.Start:
            newImage = mainScreen;
            break;

        case playStatus.subjectSelect:
            newImage = subjectScreen;
            break;

        case playStatus.Addition:
            scroller = Instantiate(AddPrefab, transform, false);
            //newImage = additionScreen;
            break;

        case playStatus.Subtraction:
            scroller = Instantiate(subPrefab, transform, false);

            //newImage = subtractionScreen;
            break;

        case playStatus.Multiplication:
            scroller = Instantiate(mulPrefab, transform, false);

            //newImage = multiplicationScreen;
            break;

        case playStatus.Division:
            scroller = Instantiate(divPrefab, transform, false);

            //newImage = divisionScreen;
            break;

        case playStatus.MathFortress:
            scroller = Instantiate(ForPrefab, transform, false);

            //newImage = mathfortressScreen;
            break;

        case playStatus.playing:
            return;

        case playStatus.Won:
            return;

        case playStatus.Lost:
            return;

        case playStatus.MyMonster:
            newImage = menuScreen;
            break;

        case playStatus.MonsterCustomisation:
            newImage = menuScreen;
            break;

        case playStatus.LillyHome:
            newImage = menuScreen;
            break;

        case playStatus.Options:
            newImage = menuScreen;
            break;

        case playStatus.Credits:
            newImage = menuScreen;
            break;

        case playStatus.Login:
            newImage = mainScreen;
            break;

        case playStatus.Splash:
            newImage = mainScreen;
            break;

        default:
            break;
        }

        if (scroller)
        {
            if (currentScroll)
            {
                Destroy(currentScroll.gameObject);
            }

            currentScroll = scroller.GetComponent <ScrollingParent>();

            thisScreen.enabled = false;
            return;
        }


        if (currentScroll)
        {
            Destroy(currentScroll.gameObject);
        }


        if (newImage != null)
        {
            thisScreen.sprite  = newImage;
            thisScreen.enabled = true;
        }
        else
        {
            thisScreen.enabled = false;
        }
    }