Esempio n. 1
0
    void OnTriggerEnter2D(Collider2D other)
    {
        print(other.tag);
        if (other.tag == "Player" && !_intoTheCaves)
        {
            ChunkMover mover = other.gameObject.GetComponent <ChunkMover>();

            StartCoroutine(HackitHeiluu());
            print("LUOLIIIN.." + mover.UnderGround);

            if (mover.UnderGround)
            {
                // maan päälle
                fireplace.SetActive(false);
                _tilemap.EnableTileMap();
                MobsControl.instance.DeleteAllCurrentMobs();
                mover.UnderGround = false;
                MapGenerator.Instance.DestroyCave();
                GameObject player = GameObject.FindGameObjectWithTag("Player");
                player.GetComponent <UpdatePathFind>().tilemap  = GameObject.FindGameObjectWithTag("Tilemap").GetComponent <TileMap>();
                player.GetComponent <UpdatePathFind>().path.map = GameObject.FindGameObjectWithTag("Tilemap").GetComponent <TileMap>();
                int[] m = player.GetComponent <UpdatePathFind>().path.calculateIndex(player.transform.position);
                player.GetComponent <UpdatePathFind>().path.uptadeTiles(m[0], m[1], GameObject.FindGameObjectWithTag("Tilemap").GetComponent <TileMap>());
                ParticleSpawner.instance.destroybloods();
                MobsControl.instance.cave = false;

                player.GetComponent <FishSpawner>().enabled = true;
            }
            else
            {
                // maan Alle
                _tilemap.DisableTileMap();
                MobsControl.instance.DeleteAllCurrentMobs();
                Activate();
                mover.UnderGround = true;

                MapGenerator         dungeon = MapGenerator.Instance;
                var                  go      = GameObject.FindWithTag("SpriteController");
                TileSpriteController tileSpriteController = go.GetComponent <TileSpriteController>();
                tileSpriteController.ResetAllTiles();
                tileSpriteController.SetTileSprites(dungeon.Width - 1, dungeon.Height - 1, dungeon, 1, 1);

                GameObject player = GameObject.FindGameObjectWithTag("Player");
                player.GetComponent <UpdatePathFind>().tilemap = dungeon;

                int[] m = player.GetComponent <UpdatePathFind>().path.calculateIndex(player.transform.position);


                player.GetComponent <UpdatePathFind>().path.uptadeTiles(m[0], m[1], dungeon);

                MobsControl.instance._door = this.gameObject;
                MobsControl.instance.cave  = true;

                //player.GetComponent<UpdatePathFind>().path.uptadeTiles(player.transform.position,dungeon);

                if (!spawnedMobs)
                {
                    spawnCaveMobs();
                    spawnedMobs = true;
                }
                else
                {
                    spawnCreadedMobs();
                }
                ParticleSpawner.instance.destroybloods();

                player.GetComponent <FishSpawner>().enabled = false;
            }
        }
    }
Esempio n. 2
0
 public void EnableTileMap()
 {
     gameObject.SetActive(true);
     SpriteController.ResetAllTiles();
     ResetBorders();
 }