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

60 lines
1.7 KiB
C#
Raw Normal View History

using UnityEngine;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public class BossController : MonoBehaviour
{
[field: SerializeField] public GameObject BossPrefab { get; set; }
[field: SerializeField] public Transform BossSpawnTransform { get; set; }
[field: SerializeField] public Transform PlayerSpawnTransform { get; set; }
[SerializeField] private Transform bossInstantiateLocation;
private GameObject instantiatedBoss;
private void Start()
{
InitStart();
}
private void InitStart()
{
if (!instantiatedBoss)
{
instantiatedBoss = Instantiate(BossPrefab, BossSpawnTransform.position, Quaternion.identity, bossInstantiateLocation);
}
instantiatedBoss.SetActive(false);
}
public void ResetBoss()
{
if (instantiatedBoss)
{
if (instantiatedBoss.activeSelf)
{
Destroy(instantiatedBoss);
}
}
}
public void Respawn()
{
if (instantiatedBoss)
{
if (instantiatedBoss.activeSelf)
{
Destroy(instantiatedBoss);
}
else
{
instantiatedBoss.transform.position = BossSpawnTransform.position;
instantiatedBoss.SetActive(true);
return;
}
}
instantiatedBoss = Instantiate(BossPrefab, BossSpawnTransform.position, Quaternion.identity, bossInstantiateLocation);
}
}
}