Example #1
0
    public void ConfigurarProfessor(GameObject professorGO, CustomGameSettings settings)
    {
        professor = settings.Professor;

        introducaoAula    = settings.IntroducaoAula;
        descricaoMomento1 = settings.DescricaoMomento1;
        descricaoMomento2 = settings.DescricaoMomento2;
        descricaoMomento3 = settings.DescricaoMomento3;
        DividirEInserirFalas(professorGO);

        // Definir o meu sprite como o sprite do professor escolhido e na
        // direção correta definida no Unity inspector
        spriteNW = CharacterSpriteDatabase.SpriteNW(professor);
        spriteNE = CharacterSpriteDatabase.SpriteNE(professor);
        spriteSE = CharacterSpriteDatabase.SpriteSE(professor);
        spriteSW = CharacterSpriteDatabase.SpriteSW(professor);

        SpriteRenderer mySP = professorGO.GetComponent <SpriteRenderer>();

        switch (facingDirection)
        {
        case Direction.NW:
            mySP.sprite = spriteNW;
            break;

        case Direction.NE:
            mySP.sprite = spriteNE;
            break;

        case Direction.SE:
            mySP.sprite = spriteSE;
            break;

        case Direction.SW:
            mySP.sprite = spriteSW;
            break;
        }

        // Alguns casos especiais, não quero mexer no .png
        // Basicamente, alterar o tamanho de alguns professores
        var professorTransform = professorGO.transform;

        switch (professor)
        {
        case CharacterName.Vladmir:
        case CharacterName.Paulino:
            professorTransform.localScale = Vector3.one * 0.7f;
            break;
        }
    }
    private void ConfigurarSpritesDoProfessor(GameObject professor, CustomGameSettings settings)
    {
        var teacherScript = professor.GetComponent <TeacherScript>();
        var professorName = settings.Professor;

        // Load dos sprites do professor selecionado pelo criador do custom
        var spriteNW = CharacterSpriteDatabase.SpriteNW(professorName);
        var spriteNE = CharacterSpriteDatabase.SpriteNE(professorName);
        var spriteSE = CharacterSpriteDatabase.SpriteSE(professorName);
        var spriteSW = CharacterSpriteDatabase.SpriteSW(professorName);

        // Configurar sprites no componente TeacherScript
        teacherScript.Sprites[0] = spriteSE;
        teacherScript.Sprites[1] = spriteSW;
        teacherScript.Sprites[2] = spriteNE;
        teacherScript.Sprites[3] = spriteNW;

        // Inicialmente o professor vai olhar para o sudeste (SE)
        var mySP = teacherScript.GetComponent <SpriteRenderer>();

        mySP.sprite = spriteSE;

        // Alguns casos especiais, não quero mexer no .png
        // Basicamente, alterar o tamanho de alguns professores
        var professorTransform = professor.transform;

        switch (professorName)
        {
        case CharacterName.Vladmir:
        case CharacterName.Paulino:
            professorTransform.localScale = Vector3.one * 0.7f;
            break;
        }


        // Configurar sprites do professor caminhando
        // Por enquanto estamos usando os mesmos sprites dos professores parados
        // porque alguns professores do custom não tem sprites caminhando ainda
        //for (int i = 0; i < teacherScript.GoLeft.Length; i++)
        //    teacherScript.GoLeft[i] = spriteSW;

        //for (int i = 0; i < teacherScript.GoRight.Length; i++)
        //    teacherScript.GoRight[i] = spriteNE;
    }