public void changeLevel() { print("change"); RoomHolder holder = RQ.Dequeue(); if (holder.PsychFirst) { var ps = Psych; ps.NextRoom = holder.NextRoom; RQ.Enqueue(ps); //pysch } else { RQ.Enqueue(holder.NextRoom); } if (curEnabled != null) { curEnabled.gameObject.SetActive(false); } curEnabled = holder; holder.gameObject.SetActive(true); setPlayerPositionAndRotation(holder.SpawnPoint); try{ BlinkController.OnBlink -= changeLevel; } catch (System.Exception e) { } }
/// <summary> /// Spawns the rooms on the map /// <\summary> void Awake() { rooms = GetComponent <RoomHolder>(); player = Instantiate(player, playerSpawnpoint, Quaternion.identity); NextLevel.SetLevelsComplete(0); SpawnMap(); }
public void Init(GameObject prefab, Transform parent) { this.instance = Object.Instantiate(prefab, new Vector2(gridPos.x * LevelGeneration.I.roomWidth, gridPos.y * LevelGeneration.I.roomHeight), Quaternion.identity, parent).transform; roomHolder = instance.GetComponent <RoomHolder>(); corridorTilemap = roomHolder.corridorTilemap; obstacleTilemap = roomHolder.obstacleTilemap; groundTilemap = roomHolder.groundTilemap; roomHolder.Init(this); if (type == RoomType.START) { if (instance.Find("Portal")) { spawnPoint = (Vector2)instance.Find("Portal").position - new Vector2(0, 2); } } }