Example #1
0
    public IEnumerator LevelCheckHandler()
    {
        while (true)
        {
            yield return(new WaitForSeconds(1));

            if (ListEnemies.Count <= 0)
            {
                // Level finished

                UI_Canvas ui = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.UI).GetComponent <UI_Canvas>();
                ui.ShowMessage("Isle cleared!\nPortals are open now!");

                UnlockPortals();

                UnlockSmallBoxes();

                isleAbstract.finished = true;

                StopCoroutine(levelCheckRoutine);

                yield return(null);
            }
        }
    }
Example #2
0
    public void StartIsle()
    {
        // clear list
        for (int i = 0; i < ListEnemies.Count; i++)
        {
            mr.returnObject(ListEnemies[i].GetComponent <GhostCopy>().ghost.gameObject);
            mr.returnObject(ListEnemies[i]);
        }
        ListEnemies.Clear();

        for (int i = 0; i < EnemyPoints.Count; i++)
        {
            EnemyPoints[i].Initialize();

            if (EnemyPoints[i].CanCreateEnemy == true)
            {
                ExplosionScript expl = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.enemySpawn).GetComponent <ExplosionScript>();
                expl.Initialize(EnemyPoints[i].transform.position);
            }
        }

        enemySpawnRoutine = StartCoroutine(EnemySpawnHandler());

        UI_Canvas ui = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.UI).GetComponent <UI_Canvas>();

        ui.ShowMessage("Destroy all enemies!");
    }
Example #3
0
    public IEnumerator checkBigBoxFinishedHandler()
    {
        while (true)
        {
            if (ContentObj.GetComponent <Lerper>().Lerping == false)
            {
                break;
            }
            else
            {
                yield return(new WaitForSeconds(0.3f));
            }
        }

        Player player      = mr.getObject(ObjectPool.categorie.essential, (int)ObjectPool.essential.player).GetComponent <Player>();
        Stats  playerStats = player.GetComponent <Stats>();

        switch (ContentBig)
        {
        case ContentTypeBig.SpeedUpgrade:
            playerStats.speed += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
            ui.ShowMessage("Much more Speed!");
            break;

        case ContentTypeBig.DamageUpgrade:
            playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
            ui.ShowMessage("Much more Damage!");
            break;

        case ContentTypeBig.RateUpgrade:
            playerStats.fireRate *= ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
            ui.ShowMessage("Fire rate extremely increased!");
            break;

        case ContentTypeBig.ShotSpeedUpgrade:
            playerStats.shotSpeed += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
            ui.ShowMessage("Shots are much faster!");
            break;

        case ContentTypeBig.Splitter:
            if (player.HasSplitter == false)
            {
                player.HasSplitter = true;
                playerStats.possibleShotEffects.Add(new multiplyOnContact());
                ui.ShowMessage("You have Splitter-Shots!");
            }
            else
            {
                playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
                ui.ShowMessage("Much more Damage!");
            }
            break;

        case ContentTypeBig.Bluffer:
            if (player.HasBluffer == false)
            {
                player.HasBluffer = true;
                playerStats.possibleShotEffects.Add(new bluff());
                ui.ShowMessage("You have Bluffer-Shots!");
            }
            else
            {
                playerStats.shotStrength += ContentObj.GetComponent <StatUpgrade>().IncreaseBigValue;
                ui.ShowMessage("Much more Damage!");
            }
            break;
        }

        ExplosionScript itemEffect = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.itemCollected).GetComponent <ExplosionScript>();

        itemEffect.Initialize(ContentObj.transform.position);

        GameObject heroEffect = mr.getObject(ObjectPool.categorie.explosion, (int)ObjectPool.explosion.itemCollectedHero);

        heroEffect.GetComponent <ExplosionScript>().Initialize(player.transform.position);
        heroEffect.GetComponent <Follow>().Initialize(player.gameObject);

        mr.returnObject(ContentObj);
        ContentObj = null;

        StopCoroutine(checkBigBoxFinished);

        yield return(null);
    }