OldBlueWater/BlueWater/Assets/02.Scripts/BossMapController.cs

59 lines
1.6 KiB
C#
Raw Normal View History

using System.Collections.Generic;
using BlueWaterProject;
using Sirenix.OdinInspector;
using UnityEngine;
// ReSharper disable once CheckNamespace
public class BossMapController : MonoBehaviour
{
/// 컴포넌트
[Title("컴포넌트")]
[SerializeField, Required] protected Transform playerSpawnTransform;
[SerializeField, Required] protected Transform bossSpawnTransform;
[SerializeField, Required] protected Transform bossInstantiateTransform;
[SerializeField, Required] protected GameObject bossPrefab;
[field: SerializeField] public Transform ParticleInstantiateLocation { get; private set; }
protected List<GameObject> bossInstanceList = new(10);
public virtual void InitBossMap()
{
AllDestroyObjects();
bossInstanceList = new List<GameObject>(10);
if (GameManager.Inst)
{
var player = GameManager.Inst.CurrentCombatPlayer;
if (player)
{
Destroy(player.gameObject);
}
GameManager.Inst.InstantiateCombatPlayer(playerSpawnTransform.position);
}
// 보스 override로 추가
}
public void AllDestroyBoss()
{
foreach (var element in bossInstanceList)
{
Destroy(element);
}
}
public void AllDestroyObjects()
{
foreach (var element in bossInstanceList)
{
Destroy(element);
}
foreach (Transform element in ParticleInstantiateLocation)
{
Destroy(element.gameObject);
}
}
}