void Awake() { if (!room) { room = GetComponentInParent <DungeonRoomController>(); } if (!dungeonManager) { dungeonManager = FindObjectOfType <DungeonManager>(); } if (!enemyController) { enemyController = GetComponent <EnemyController>(); } enemyController.GivesExperienceWhenKilled = false; //enemyController.HandleFightBack = t; if (!attackRadiusCollider || !activateRadiusCollider) { var colliders = GetComponents <SphereCollider>(); if (colliders.Length == 2) { attackRadiusCollider = colliders[0]; activateRadiusCollider = colliders[1]; } else { Debug.LogError("Blerp"); } } name = "___DUNGEON__BOSS___"; }
public void NextRoom() { currentRoom.Exit(); currentRoomIndex = (currentRoomIndex + 1) % rooms.Length; if (currentRoomIndex == 0) { Exit(); return; } currentRoom = rooms[currentRoomIndex]; currentRoom.Enter(); }
// Start is called before the first frame update void Start() { if (!itemDropHandler) { itemDropHandler = GetComponent <ItemDropHandler>(); } if (!dungeonManager) { dungeonManager = FindObjectOfType <DungeonManager>(); } rooms = GetComponentsInChildren <DungeonRoomController>(); currentRoom = rooms.FirstOrDefault(x => x.RoomType == DungeonRoomType.Start); currentRoomIndex = Array.IndexOf(rooms, currentRoom); }