초기화 순서 문제 수정, 데이터 세팅, 경고 제거
This commit is contained in:
parent
c704259e47
commit
7f10b9695c
BIN
Assets/_DDD/_Addressables/So/RestaurantDataSo.asset
(Stored with Git LFS)
BIN
Assets/_DDD/_Addressables/So/RestaurantDataSo.asset
(Stored with Git LFS)
Binary file not shown.
BIN
Assets/_DDD/_Addressables/So/RestaurantManagementDataSo.asset
(Stored with Git LFS)
Normal file
BIN
Assets/_DDD/_Addressables/So/RestaurantManagementDataSo.asset
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8c4fcb278b09f944cbfa342ace27fcd4
|
||||
guid: d4af913216da4468ea23c8f910d86644
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
BIN
Assets/_DDD/_Addressables/So/RestaurantManagementSo.asset
(Stored with Git LFS)
BIN
Assets/_DDD/_Addressables/So/RestaurantManagementSo.asset
(Stored with Git LFS)
Binary file not shown.
@ -7,7 +7,7 @@ public class RestaurantPlayerInput : MonoBehaviour
|
||||
{
|
||||
private RestaurantPlayerDataSo _playerDataSo;
|
||||
|
||||
private async void Start()
|
||||
private void Start()
|
||||
{
|
||||
_playerDataSo = RestaurantDataSo.instance.PlayerData;
|
||||
_playerDataSo.OpenManagementUiAction = InputManager.Instance.GetAction(InputActionMaps.Restaurant, nameof(RestaurantActions.OpenManagementUi));
|
||||
|
@ -15,7 +15,7 @@ protected override void Start()
|
||||
_ = Initialize();
|
||||
}
|
||||
|
||||
private async Task Initialize()
|
||||
private Task Initialize()
|
||||
{
|
||||
_restaurantPlayerDataSo = RestaurantDataSo.instance.PlayerData;
|
||||
Debug.Assert(_restaurantPlayerDataSo != null, "_restaurantPlayerDataSo is null");
|
||||
@ -28,6 +28,8 @@ private async Task Initialize()
|
||||
_interactionLayerMask = _restaurantPlayerDataSo.InteractionLayerMask;
|
||||
|
||||
EventBus.Register<RestaurantInteractionEvent>(this);
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
protected override void OnDestroy()
|
||||
|
@ -77,7 +77,7 @@ private void InitializeComponents()
|
||||
#endif
|
||||
}
|
||||
|
||||
private async System.Threading.Tasks.Task InitializePlayerData()
|
||||
private System.Threading.Tasks.Task InitializePlayerData()
|
||||
{
|
||||
try
|
||||
{
|
||||
@ -89,6 +89,8 @@ private async System.Threading.Tasks.Task InitializePlayerData()
|
||||
{
|
||||
Debug.LogError($"Player data load failed\n{e}");
|
||||
}
|
||||
|
||||
return System.Threading.Tasks.Task.CompletedTask;
|
||||
}
|
||||
|
||||
private void SubscribeToInputEvents()
|
||||
|
@ -6,23 +6,26 @@ namespace DDD
|
||||
public class RestaurantEnvironmentController : RestaurantFlowController
|
||||
{
|
||||
private RestaurantEnvironmentStateSo _environmentState;
|
||||
public override async Task InitializeController()
|
||||
public override Task InitializeController()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task InitializeState()
|
||||
public override Task InitializeState()
|
||||
{
|
||||
_environmentState = RestaurantState.instance.EnvironmentState;
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
public override Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
{
|
||||
// if(newFlowState == GameFlowState.ReadyForRestaurant) GenerateDummyEnvironmentProps(); // XXX : DUMMY! REMOVE THIS
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
public override Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
private void GenerateDummyEnvironmentProps()
|
||||
|
@ -5,22 +5,26 @@ namespace DDD
|
||||
{
|
||||
public class RestaurantManagementController : RestaurantFlowController
|
||||
{
|
||||
public override async Task InitializeController()
|
||||
public override Task InitializeController()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task InitializeState()
|
||||
public override Task InitializeState()
|
||||
{
|
||||
// Load default asset
|
||||
RestaurantState.instance.ManagementState.InitializeReadyForRestaurant();
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
public override Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
public override Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
}
|
@ -6,12 +6,14 @@ namespace DDD
|
||||
{
|
||||
public class RestaurantPlayerController : RestaurantFlowController
|
||||
{
|
||||
public override async Task InitializeController()
|
||||
public override Task InitializeController()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task InitializeState()
|
||||
public override Task InitializeState()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
@ -20,23 +22,20 @@ public override async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
{
|
||||
List<Task> tasks = new List<Task>();
|
||||
// Spawn player job
|
||||
CreateRestaurantPlayer createRestaurantPlayerJob = new CreateRestaurantPlayer();
|
||||
CreateRestaurantPlayer createRestaurantPlayerJob = CreateInstance<CreateRestaurantPlayer>();
|
||||
|
||||
var createPlayerReadyHandle = createRestaurantPlayerJob.ReadyFlowTask();
|
||||
var createPlayerHandle = createRestaurantPlayerJob.RunFlowTask();
|
||||
tasks.Add(createPlayerReadyHandle);
|
||||
tasks.Add(createPlayerHandle);
|
||||
|
||||
Task.WhenAll(tasks);
|
||||
await createRestaurantPlayerJob.ReadyFlowTask();
|
||||
await createRestaurantPlayerJob.RunFlowTask();
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
public override Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
{
|
||||
if (exitingFlowState == GameFlowState.SettlementRestaurant)
|
||||
{
|
||||
// TODO : Remove player character
|
||||
}
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,17 +6,22 @@ namespace DDD
|
||||
public class RestaurantRunController : RestaurantFlowController
|
||||
{
|
||||
RestaurantCustomerStateSo _restaurantCustomerStateSo;
|
||||
public override async Task InitializeController()
|
||||
public override Task InitializeController()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
|
||||
}
|
||||
|
||||
public override async Task InitializeState()
|
||||
public override Task InitializeState()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
|
||||
}
|
||||
|
||||
public override async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
{
|
||||
var restaurantCustomerStateHandle = _restaurantCustomerStateSo.OnReadyNewFlow(newFlowState);
|
||||
await Task.WhenAll(restaurantCustomerStateHandle);
|
||||
}
|
||||
public override async Task OnExitCurrentFlow(GameFlowState exitingFlowState)
|
||||
{
|
||||
|
@ -5,11 +5,13 @@ namespace DDD
|
||||
{
|
||||
public class CreateRestaurantEnvironment : RestaurantFlowTask
|
||||
{
|
||||
public override async Task ReadyFlowTask()
|
||||
public override Task ReadyFlowTask()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
|
||||
}
|
||||
|
||||
public override async Task RunFlowTask()
|
||||
public override Task RunFlowTask()
|
||||
{
|
||||
// TODO : Base prefab from EnvironmentDataSo
|
||||
|
||||
@ -18,6 +20,8 @@ public override async Task RunFlowTask()
|
||||
{
|
||||
// TODO : Instantiate and Initialize
|
||||
}
|
||||
return Task.CompletedTask;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -9,22 +9,25 @@ public class CreateRestaurantPlayer : RestaurantFlowTask
|
||||
[SerializeField]
|
||||
private Vector3 _spawnPosition;
|
||||
|
||||
private GameObject playerPrefab;
|
||||
|
||||
public override async Task ReadyFlowTask()
|
||||
{
|
||||
|
||||
playerPrefab = await AssetManager.LoadAsset<GameObject>(CommonConstants.RestaurantPlayer);
|
||||
}
|
||||
|
||||
public override async Task RunFlowTask()
|
||||
public override Task RunFlowTask()
|
||||
{
|
||||
// TODO : Player exist check
|
||||
|
||||
var playerPrefab = await AssetManager.LoadAsset<GameObject>(CommonConstants.RestaurantPlayer);
|
||||
var player = PrefabUtility.InstantiatePrefab(playerPrefab) as GameObject;
|
||||
player.transform.position = _spawnPosition;
|
||||
player.transform.rotation = playerPrefab.transform.rotation;
|
||||
player.name = CommonConstants.RestaurantPlayer;
|
||||
CameraManager.Instance.GetCameraGameObject(CameraType.RestaurantBaseCamera)
|
||||
.SetFollowAndLookAtTarget(player.transform);
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
}
|
@ -30,11 +30,11 @@ public async Task Init()
|
||||
{
|
||||
await LoadData();
|
||||
await RestaurantDataSo.instance.LoadData();
|
||||
InitializeAllFlowControllers();
|
||||
}
|
||||
|
||||
public void PostInit()
|
||||
{
|
||||
InitializeAllFlowControllers();
|
||||
}
|
||||
|
||||
private void RegisterFlowHandler()
|
||||
@ -60,8 +60,9 @@ private void InitializeAllFlowControllers()
|
||||
}
|
||||
}
|
||||
|
||||
private async Task LoadData()
|
||||
private Task LoadData()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public async Task OnReadyNewFlow(GameFlowState newFlowState)
|
||||
|
Loading…
Reference in New Issue
Block a user