ProjectDDD/Assets/_DDD/_Scripts/RestaurantEnvironment/CreateEnvironmentSo.cs
2025-08-12 20:46:30 +09:00

26 lines
973 B
C#

using System.Threading.Tasks;
using UnityEngine;
namespace DDD
{
[CreateAssetMenu(fileName = "CreateEnvironmentSo", menuName = "GameFlow/CreateEnvironmentSo")]
public class CreateEnvironmentSo : ScriptableObject, IGameFlowHandler
{
public async Task OnReadyNewFlow(GameFlowState newFlowState)
{
var baseRestaurantEnvironmentPrefab = await AssetManager.LoadAsset<GameObject>(CommonConstants.BaseRestaurantEnvironment);
var props = RestaurantController.Instance.RestaurantEnvironmentStateSo.RestaurantEnvironmentProps;
foreach (var prop in props)
{
var restaurantEnvironment = Instantiate(baseRestaurantEnvironmentPrefab).GetComponent<RestaurantEnvironment>();
restaurantEnvironment.Initialize(prop);
}
}
public Task OnExitCurrentFlow(GameFlowState exitingFlowState)
{
return Task.CompletedTask;
}
}
}