Ejemplo n.º 1
0
 public void DisplayTutorial()
 {
     isTutorial = true;
     gameObject.SetActive(isTutorial);
     menuScreen.SetActive(false);
     currStage = 0;
 }
Ejemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        Attacked = false;
        Ranged   = false;
#if UNITY_STANDALONE
        MovedUp    = false;
        MovedDown  = false;
        MovedLeft  = false;
        MovedRight = false;
#endif

        current = TUTORIAL_STAGE.movement;
    }
Ejemplo n.º 3
0
 // Use this for initialization
 void Awake()
 {
     tutorialContainer = new Dictionary <TUTORIAL_STAGE, TutorialInfo>();
     foreach (TutorialInfo info in infoList)
     {
         if (!tutorialContainer.ContainsKey(info.stage))
         {
             tutorialContainer.Add(info.stage, info);
         }
     }
     currStage = 0;
     SetTutorialInfo();
 }
Ejemplo n.º 4
0
    private void SetTutorialInfo()
    {
        if (currStage >= TUTORIAL_STAGE.STAGE_TOTAL)
        {
            currStage = TUTORIAL_STAGE.STAGE_COMPLETED;
        }
        else if (currStage < 0)
        {
            currStage = TUTORIAL_STAGE.STAGE_NAVIGATION;
        }

        Debug.Log(currStage.ToString());
        header.text = tutorialContainer[currStage].key;
        body.text   = tutorialContainer[currStage].description;
        icon.sprite = tutorialContainer[currStage].img;
        defaultScreen.SetActive(true);
        completedScreen.SetActive(false);
        faExampleScreen.SetActive(false);
    }
Ejemplo n.º 5
0
    // Update is called once per frame
    void Update()
    {
        if (current.Equals(TUTORIAL_STAGE.movement))
        {
#if UNITY_STANDALONE
            MovedUp    = (Input.GetKeyDown(KeyBindScript.upKey) ? true : MovedUp);
            MovedDown  = (Input.GetKeyDown(KeyBindScript.downKey) ? true : MovedDown);
            MovedLeft  = (Input.GetKeyDown(KeyBindScript.leftKey) ? true : MovedLeft);
            MovedRight = (Input.GetKeyDown(KeyBindScript.rightKey) ? true : MovedRight);

            if (!MovedUp && !MovedDown && !MovedLeft && !MovedRight)
            {
                GetComponent <Text>().text = "Use the " + KeyBindScript.leftKey + ", " +
                                             KeyBindScript.rightKey + ", " +
                                             KeyBindScript.upKey + " and " +
                                             KeyBindScript.downKey + " to move around.";
            }
            else if (MovedUp && MovedDown && MovedLeft && MovedRight)
            {
                GetComponent <Text>().text = "";
                current = TUTORIAL_STAGE.attack;
            }
#else
            if (playerPos.Equals(Vector3.zero))
            {
                playerPos = GameObject.FindGameObjectWithTag("Player").transform.position;
            }
            if (GameObject.FindGameObjectWithTag("Player").transform.position.Equals(playerPos))
            {
                GetComponent <Text>().text = "Use the joystick to move around.";
            }
            else
            {
                GetComponent <Text>().text = "";
                current = TUTORIAL_STAGE.attack;
                MessageSystem.instance.setListener("MeleeAttack", PlayerPressedMelee);
                MessageSystem.instance.setListener("RangeAttack", PlayerPressedRange);
            }
#endif
        }
        else if (current.Equals(TUTORIAL_STAGE.attack))
        {
#if UNITY_STANDALONE
            Attacked = (Input.GetKeyDown(KeyBindScript.attackKey) ? true : Attacked);
            Ranged   = (Input.GetKeyDown(KeyBindScript.rangeKey) ? true : Ranged);
            if (!Attacked && !Ranged)
            {
                GetComponent <Text>().text = "Use the " + KeyBindScript.attackKey + " to melee, or interact with NPCs, "
                                             + KeyBindScript.rangeKey + " to fire an arrow.";
            }
#else
            if (!Attacked && !Ranged)
            {
                GetComponent <Text>().text = "Press the sword button to melee and the bow button for ranged attack.";
            }
#endif
            else if (Attacked && Ranged)
            {
                GetComponent <Text>().text = "";
                //current = TUTORIAL_STAGE.talk_toNPC;
#if UNITY_ANDROID
                MessageSystem.instance.removeListener("MeleeAttack", PlayerPressedMelee);
                MessageSystem.instance.removeListener("RangeAttack", PlayerPressedRange);
#endif
                // we are done with the tutorial lol
                Destroy(transform.parent.gameObject);
            }
        }
    }
Ejemplo n.º 6
0
 public void SetTutorialStage(TUTORIAL_STAGE st)
 {
     stageIndex = st;
 }
    // Update is called once per frame
    void Update()
    {
        if (!isPlayerATBListFilled)
        {
            playerAtbList[0]      = Player1.instance.gameObject.GetComponent <actionTimeBar>();
            playerAtbList[1]      = Player2.instance.gameObject.GetComponent <actionTimeBar>();
            isPlayerATBListFilled = true;
        }

        //! Skip tutorial
        if (Input.GetKeyDown(KeyCode.G))
        {
            //! PLayer loop to set all the sort layers
            for (int i = 0; i < sceneManager.playerList.Count; i++)
            {
                sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 2;
                sceneManager.GetComponent <SceneManager>().playerList[i].transform.GetChild(2).GetChild(2).GetComponent <Canvas>().sortingOrder = 0;
                sceneManager.GetComponent <SceneManager>().playerList[i].transform.GetChild(2).GetChild(3).GetComponent <Canvas>().sortingOrder = 0;
                sceneManager.GetComponent <SceneManager>().playerList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 0;

                sceneManager.playerList[i].GetComponent <actionTimeBar>().startSelection = 0;
            }
            Time.timeScale = 1;
            UnityEngine.SceneManagement.SceneManager.LoadScene(6);
        }

        if (tutorialStage == TUTORIAL_STAGE.STAGE_01)
        {
            //! The black tint that covers up things that are not necessary
            tint.SetActive(true);
            if (!isOrderLayerAdjusted)
            {
                for (int i = 0; i < sceneManager.playerList.Count; i++)
                {
                    //! Skill Description order
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(1).GetComponent <Canvas>().sortingOrder         = 3;
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder         = 0;
                    sceneManager.playerList[i].transform.GetChild(1).GetChild(0).GetComponent <SpriteRenderer>().sortingOrder = 2;
                    sceneManager.playerList[i].transform.GetChild(1).GetChild(1).GetComponent <SpriteRenderer>().sortingOrder = 3;
                }
                isOrderLayerAdjusted = true;
            }

            task.text = "Tap your key (A or L) to scroll through your moves. Scroll through at least 3 moves on each character to continue.";
            if (lectureCanvas.transform.GetChild(0).gameObject.activeInHierarchy == false)
            {
                lectureCanvas.transform.GetChild(0).gameObject.SetActive(true);
            }
        }
        else if (tutorialStage == TUTORIAL_STAGE.STAGE_02)
        {
            //! The black tint that covers up things that are not necessary
            tint.SetActive(true);
            isOrderLayerAdjusted = false;
            if (!isOrderLayerAdjusted)
            {
                for (int i = 0; i < sceneManager.playerList.Count; i++)
                {
                    //! Skill Description order
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 3;
                    sceneManager.playerList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 3;
                }
                for (int i = 0; i < sceneManager.enemyList.Count; i++)
                {
                    sceneManager.enemyList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 3;
                    sceneManager.enemyList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 3;
                }
                isOrderLayerAdjusted = true;
            }

            //! The lecture canvas
            lectureCanvas.transform.GetChild(0).gameObject.SetActive(false);
            if (!isLectureDone)
            {
                if (playerAtbList[0].startSelection >= 0.5f || playerAtbList[1].startSelection >= 0.5f)
                {
                    Time.timeScale = 0;
                    lectureCanvas.transform.GetChild(1).gameObject.SetActive(true);

                    if (Input.anyKeyDown)
                    {
                        Time.timeScale = 1;
                        isLectureDone  = true;
                        lectureCanvas.transform.GetChild(1).gameObject.SetActive(false);
                    }
                }
            }
            task.text = "Select normal attack and wait for action time bar to finish recharge ";
        }
        else if (tutorialStage == TUTORIAL_STAGE.STAGE_03)
        {
            //! The black tint that covers up things that are not necessary
            tint.SetActive(true);
            isOrderLayerAdjusted = false;
            if (!isOrderLayerAdjusted)
            {
                for (int i = 0; i < sceneManager.playerList.Count; i++)
                {
                    //! Skill Description order
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 0;
                    sceneManager.playerList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 0;
                    sceneManager.playerList[i].transform.GetChild(1).gameObject.SetActive(false);
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(1).GetComponent <Canvas>().sortingOrder = 0;
                }
                for (int i = 0; i < sceneManager.enemyList.Count; i++)
                {
                    sceneManager.enemyList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 0;
                    sceneManager.enemyList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 0;
                }
                isOrderLayerAdjusted = true;
            }


            //! Task canvas
            taskCanvas.enabled = false;

            //! Lecture Canvas
            isLectureDone = false;
            if (!isLectureDone)
            {
                Time.timeScale = 0;
                lectureCanvas.transform.GetChild(2).gameObject.SetActive(true);

                if (Input.anyKeyDown)
                {
                    Time.timeScale = 1;
                    isLectureDone  = true;
                    lectureCanvas.transform.GetChild(2).gameObject.SetActive(false);
                    tutorialStage = TUTORIAL_STAGE.STAGE_04;
                }
            }
        }
        else if (tutorialStage == TUTORIAL_STAGE.STAGE_04)
        {
            if (tint.activeInHierarchy == false)
            {
                tint.SetActive(true);
            }

            isLectureDone = false;
            if (!isLectureDone)
            {
                Time.timeScale = 0;
                lectureCanvas.transform.GetChild(3).gameObject.SetActive(true);

                if (Input.anyKeyDown)
                {
                    Time.timeScale = 1;
                    isLectureDone  = true;
                    lectureCanvas.transform.GetChild(3).gameObject.SetActive(false);
                    tutorialStage = TUTORIAL_STAGE.STAGE_05;
                }
            }
        }

        else if (tutorialStage == TUTORIAL_STAGE.STAGE_05)
        {
            if (tint.activeInHierarchy == false)
            {
                tint.SetActive(true);
            }

            for (int i = 0; i < sceneManager.enemyList.Count; i++)
            {
                sceneManager.enemyList[i].GetComponent <EnemyVariableManager>().aimIcon.SetActive(true);
                sceneManager.enemyList[i].transform.GetChild(1).GetComponent <SpriteRenderer>().sortingOrder = 4;
                sceneManager.enemyList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder = 3;
                sceneManager.enemyList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().color        = Color.white;
                if (sceneManager.enemyList[i].GetComponent <EnemyVariableManager>().Target == sceneManager.playerList[0])
                {
                    lectureCanvas.transform.GetChild(4).GetChild(2).gameObject.SetActive(false);
                }
                else if (sceneManager.enemyList[i].GetComponent <EnemyVariableManager>().Target == sceneManager.playerList[1])
                {
                    lectureCanvas.transform.GetChild(4).GetChild(1).gameObject.SetActive(false);
                }
            }
            for (int i = 0; i < sceneManager.playerList.Count; i++)
            {
                //! Skill Description order
                sceneManager.playerList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder = 3;
            }
            isLectureDone = false;
            if (!isLectureDone)
            {
                Time.timeScale = 0;
                lectureCanvas.transform.GetChild(4).gameObject.SetActive(true);

                if (Input.anyKeyDown)
                {
                    Time.timeScale = 1;
                    isLectureDone  = true;
                    lectureCanvas.transform.GetChild(4).gameObject.SetActive(false);
                    tutorialStage = TUTORIAL_STAGE.STAGE_06;
                }
            }
        }
        else if (tutorialStage == TUTORIAL_STAGE.STAGE_06)
        {
            if (tint.activeInHierarchy == false)
            {
                tint.SetActive(true);
            }

            for (int i = 0; i < sceneManager.enemyList.Count; i++)
            {
                sceneManager.enemyList[i].GetComponent <EnemyActionTimeBar>().enabled = true;
                sceneManager.enemyList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 3;
                sceneManager.enemyList[i].transform.GetChild(2).GetChild(1).GetComponent <Canvas>().sortingOrder = 3;
            }
            for (int i = 0; i < sceneManager.playerList.Count; i++)
            {
                sceneManager.playerList[i].transform.GetChild(2).GetChild(2).GetComponent <Canvas>().sortingOrder = 3;
            }

            isLectureDone = false;
            if (!isLecture6ShowedBefore)
            {
                for (int i = 0; i < playerAtbList.Count; i++)
                {
                    if (playerAtbList[i].enabled != false)
                    {
                        playerAtbList[i].enabled = false;
                        playerAtbList[i].gameObject.GetComponent <PlayerScrollSkill>().enabled = false;
                    }
                }
                for (int i = 0; i < sceneManager.enemyList.Count; i++)
                {
                    if (sceneManager.enemyList[i].GetComponent <EnemyVariableManager>().curCooldown >= sceneManager.enemyList[i].GetComponent <EnemyVariableManager>().maxCooldown / 2)
                    {
                        if (!isLectureDone)
                        {
                            Time.timeScale = 0;
                            lectureCanvas.transform.GetChild(5).gameObject.SetActive(true);
                            isLecture6ShowedBefore = true;
                        }
                    }
                }
            }
            if (!isLectureDone)
            {
                if (Input.anyKeyDown)
                {
                    Time.timeScale = 1;
                    isLectureDone  = true;
                    lectureCanvas.transform.GetChild(5).gameObject.SetActive(false);
                }
            }
            if (isEnemyAttacked)
            {
                taskCanvas.enabled = true;
                task.text          = "Kill the wolf";
                for (int i = 0; i < sceneManager.playerList.Count; i++)
                {
                    sceneManager.playerList[i].transform.GetChild(1).gameObject.SetActive(true);
                    sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 3;
                }
                for (int i = 0; i < playerAtbList.Count; i++)
                {
                    if (playerAtbList[i].enabled != true)
                    {
                        playerAtbList[i].enabled = true;
                        playerAtbList[i].gameObject.GetComponent <PlayerScrollSkill>().enabled = true;
                    }
                }
                tint.SetActive(false);
            }
        }

        if (tutorialStage == TUTORIAL_STAGE.THE_END)
        {
            //! Control of the isCanPress bool based on cannotPressTimer;
            cannotPressTimer += Time.deltaTime;
            if (cannotPressTimer >= cannotPressTime)
            {
                isCanPress = true;
            }

            //Time.timeScale = 0;
            lectureCanvas.transform.GetChild(6).gameObject.SetActive(true);
            tint.SetActive(true);
            taskCanvas.enabled = false;
            for (int i = 0; i < sceneManager.playerList.Count; i++)
            {
                sceneManager.playerList[i].transform.GetChild(1).gameObject.SetActive(false);
                sceneManager.playerList[i].transform.GetChild(2).GetChild(0).GetComponent <Canvas>().sortingOrder = 5;
                sceneManager.playerList[i].transform.GetChild(2).GetChild(2).GetComponent <Canvas>().sortingOrder = 0;
                sceneManager.playerList[i].transform.GetChild(2).GetChild(3).GetComponent <Canvas>().sortingOrder = 0;
                sceneManager.playerList[i].transform.GetChild(0).GetComponent <SpriteRenderer>().sortingOrder     = 0;
            }

            //! Can press only when the isCanPress bool is true
            if (isCanPress)
            {
                if (Input.anyKeyDown)
                {
                    Time.timeScale = 1;
                    for (int i = 0; i < sceneManager.playerList.Count; i++)
                    {
                        sceneManager.playerList[i].transform.GetChild(1).gameObject.SetActive(true);
                    }
                    isCanPress       = false;
                    cannotPressTimer = 0f;
                    //! Turn off the isTutorial bool to prevent weird happenings
                    AudioManager.instance.isTutorial = false;
                    isTheEndOfTutorial = false;
                    UnityEngine.SceneManagement.SceneManager.LoadScene(6);
                }
            }
        }
    }
 // Use this for initialization
 void Start()
 {
     tutorialStage = TUTORIAL_STAGE.STAGE_01;
 }