CapersProject/Assets/02.Scripts/Tycoon/TycoonManager.cs

53 lines
1.6 KiB
C#
Raw Normal View History

2024-07-08 06:02:12 +00:00
using System;
using UnityEngine;
using Sirenix.OdinInspector;
namespace BlueWater.Tycoons
{
2024-07-08 06:02:12 +00:00
public enum BuildableObjectType
{
None = 0,
CustomerTable
}
public class TycoonManager : Singleton<TycoonManager>
{
[field: SerializeField]
public CustomerTableController CustomerTableController { get; private set; }
[field: SerializeField]
public TycoonStageController TycoonStageController { get; private set; }
2024-07-08 06:02:12 +00:00
[SerializeField]
private Transform _customerTables;
// TODO : 타이쿤 오픈 연출 추가, 게임시간 흐름, 타이쿤 시작하면 상호작용 금지해야하는 것들
public Action OnTycoonOpenedEvent;
public Action OnTycoonClosedEvent;
protected override void OnAwake()
{
InitializeComponents();
}
[Button("컴포넌트 초기화")]
private void InitializeComponents()
{
CustomerTableController = GetComponent<CustomerTableController>();
TycoonStageController = GetComponent<TycoonStageController>();
}
2024-07-08 06:02:12 +00:00
public Transform GetParent(BuildableObjectType buildableObjectType)
{
switch (buildableObjectType)
{
case BuildableObjectType.None:
return null;
case BuildableObjectType.CustomerTable:
return _customerTables;
default:
throw new ArgumentOutOfRangeException(nameof(buildableObjectType), buildableObjectType, null);
}
}
}
}