Example #1
0
    public GameObject SpawnCertainMonsterWithoutName(GameObject monster)
    {
        var enemy = Instantiate(monster, transform.position, Quaternion.identity);

        if (!anyBoy)
        {
            anyBoy = true;
            CurrentEnemy.SetCurrentEnemy(currentEvilDictionary[randomSequence[sequenceIndex]], enemy);
            enemy.GetComponent <MonsterLife>().MakeBoy();
            currentBoy = enemy;
        }

        enemy.GetComponentInChildren <TMPro.TextMeshPro>().text = currentEvilDictionary[randomSequence[sequenceIndex]];
        boysList.Add(enemy);
        //roomLighting.AddToLight(1);

        if (!SpawnZone)
        {
            SetMonsterPosition(enemy);
        }
        else
        {
            enemy.transform.position = SpawnZone.SpawnPosition();
        }

        sequenceIndex++;
        return(enemy);
    }
Example #2
0
    public void MakeMonsterActive(string name1)
    {
        GameObject currentEnemy1 = boysList.Find(x => x.GetComponentInChildren <TMPro.TextMeshPro>().text == name1);

        if (currentEnemy)
        {
            currentBoy.GetComponent <MonsterLife>().MakeNoBoy();
            currentEnemy1.GetComponent <MonsterLife>().MakeBoy();

            CurrentEnemy.SetCurrentEnemy(name1, currentEnemy1);
            boysList.Remove(currentEnemy1);
            boysList.Insert(0, currentEnemy1);
            currentBoy = currentEnemy1;
        }
    }
Example #3
0
    public static void ChangeTheBoy(GameObject oldBoy)
    {
        if (scenesController)
        {
            scenesController.CurrentCount(1);
        }
        roomLighting.AddToLight(1);

        boysList.Remove(oldBoy);
        if (boysList.Count != 0)
        {
            var nextBoy = boysList[Random.Range(0, boysList.Count)];
            CurrentEnemy.SetCurrentEnemy(nextBoy.GetComponentInChildren <TMPro.TextMeshPro>().text, nextBoy);
            nextBoy.GetComponent <MonsterLife>().MakeBoy();
            currentBoy = nextBoy;
        }
        else
        {
            anyBoy = false;
        }
    }
Example #4
0
    public void SpawnСertainMonsterWithName(GameObject monster, string name, bool makeBoyIfPossible = true)
    {
        var enemy = Instantiate(monster, transform.position, Quaternion.identity);

        if (!anyBoy)
        {
            anyBoy = true;
            CurrentEnemy.SetCurrentEnemy(name, enemy);
            enemy.GetComponent <MonsterLife>().MakeBoy();
            currentBoy = enemy;
        }
        enemy.GetComponentInChildren <TMPro.TextMeshPro>().text = name;
        boysList.Add(enemy);
        //roomLighting.AddToLight(1);

        if (!SpawnZone)
        {
            SetMonsterPosition(enemy);
        }
        else
        {
            enemy.transform.position = SpawnZone.SpawnPosition();
        }
    }
Example #5
0
    private void SpawnMonsters(int waveNum)
    {
        var enemyWave = Instantiate(enemyWaves[waveNum], transform.position, Quaternion.identity);

        int enemiesInWave = enemyWave.transform.childCount;

        for (int i = 0; i < enemiesInWave; i++)
        {
            var enemy = enemyWave.transform.GetChild(i).gameObject;
            if (i == 0)
            {
                // If there is no active enemy name
                if (!anyBoy)
                {
                    anyBoy = true;
                    CurrentEnemy.SetCurrentEnemy(currentEvilDictionary[randomSequence[sequenceIndex]], enemy);
                    enemy.GetComponent <MonsterLife>().MakeBoy();
                    currentBoy = enemy;
                }
            }
            // Set random enemy name from the dictionary
            enemy.GetComponentInChildren <TMPro.TextMeshPro>().text = currentEvilDictionary[randomSequence[sequenceIndex]];
            boysList.Add(enemy);

            if (!SpawnZone)
            {
                SetMonsterPosition(enemy);
            }
            else
            {
                enemy.transform.position = SpawnZone.SpawnPosition();
            }

            sequenceIndex++;
        }
    }