CapersProject/Assets/02.Scripts/Map/MapManager.cs
Nam Tae Gun 15bfe87a09 #20 미니 모래 두더지 소환 기능 추가
+ MiniSandMole 프리팹 추가
+ BossConfiguration So에 MiniSandMole 추가
+ MiniSandMoleData, MiniSingleRollData So 추가
+ MiniSandMole BehaviorTree 추가
+ SandMoleMapController 클래스 추가
+ ITarget, ICurrentDirection 인터페이스 추가
+ Bt Actions - CanSkill, ActivateSkill 로직 변경
+ BossHealthPoint 로직 변경
+ 미니 모래 두더지에 소환할 때, 죽을 때, 디졸브 효과 추가

Closes #20
2024-06-16 20:09:42 +09:00

60 lines
2.0 KiB
C#

using System;
using UnityEngine;
namespace BlueWater.Maps
{
public class MapManager : Singleton<MapManager>
{
[field: SerializeField]
public FirstTutorialMapController FirstTutorialMapController { get; private set; }
[field: SerializeField]
public TitanSlimeMapController TitanSlimeMapController { get; private set; }
[field: SerializeField]
public BossMapController RhinocerosMapController { get; private set; }
[field: SerializeField]
public SandMoleMapController SandMoleMapController { get; private set; }
private MapController _currentMapController;
public void InitializeMap()
{
MapController newMapController = null;
switch (DataManager.Instance.CurrentSaveStage)
{
case SaveStage.None:
break;
case SaveStage.FirstTutorial:
newMapController = FirstTutorialMapController;
break;
case SaveStage.SecondTutorial:
//MapController = FindAnyObjectByType<SecondTutorialMapController>();
break;
case SaveStage.TitanSlime:
newMapController = TitanSlimeMapController;
break;
case SaveStage.Rhinoceros:
newMapController = RhinocerosMapController;
break;
case SaveStage.SandMole:
newMapController = SandMoleMapController;
break;
default:
throw new ArgumentOutOfRangeException();
}
if (_currentMapController != null)
{
_currentMapController.AllDestroyObjects();
}
_currentMapController = newMapController;
if (_currentMapController != null)
{
_currentMapController.InitializeMap();
}
}
}
}