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

25 lines
952 B
C#

using System.Threading.Tasks;
using UnityEngine;
namespace DDD
{
[CreateAssetMenu(fileName = "CreateRestaurantPlayerSo", menuName = "GameFlow/CreateRestaurantPlayerSo")]
public class CreateRestaurantPlayerSo : ScriptableObject, IGameFlowHandler
{
[SerializeField]
private Vector3 _spawnPosition;
public async Task OnReadyNewFlow(GameFlowState newFlowState)
{
var playerPrefab = await AssetManager.LoadAsset<GameObject>(CommonConstants.RestaurantPlayer);
var player = Instantiate(playerPrefab, _spawnPosition, playerPrefab.transform.rotation);
player.name = CommonConstants.RestaurantPlayer;
CameraManager.Instance.GetCameraGameObject(CameraType.RestaurantBaseCamera).SetFollowAndLookAtTarget(player.transform);
}
public Task OnExitCurrentFlow(GameFlowState exitingFlowState)
{
return Task.CompletedTask;
}
}
}