refactor GameManager.cs

This commit is contained in:
kimura 2022-08-03 13:56:01 +09:00
parent 66c8aed7ed
commit e8c646f2b9
1 changed files with 11 additions and 12 deletions

View File

@ -188,12 +188,21 @@ namespace MyGame.Scenes.MiniGame.Scripts
state.Value = GameState.Play;
}).AddTo(this);
var playerTransform = player.transform;
characterBeginPos = playerTransform.position;
var cameraTransform = Camera.main.transform;
var cameraOffset = cameraTransform.position - characterBeginPos.x * Vector3.right;
state.Subscribe(x =>
{
readyObject.SetActive(x == GameState.Ready);
switch (x)
{
case GameState.Ready:
var playerPosX = playerTransform.position.x;
// カメラ移動
cameraTransform.position = playerPosX * Vector3.right + cameraOffset;
bgManager.UpdatePos(playerPosX);
break;
case GameState.Play:
SoundManager.Instance.PlaySE("se_minigame_Start");
@ -213,17 +222,6 @@ namespace MyGame.Scenes.MiniGame.Scripts
}
}).AddTo(this);
var playerTransform = player.transform;
characterBeginPos = playerTransform.position;
var cameraTransform = Camera.main.transform;
var cameraOffset = cameraTransform.position - characterBeginPos.x * Vector3.right;
state.Where(x => x is GameState.Ready).Subscribe(_ =>
{
var playerPosX = playerTransform.position.x;
// カメラ移動
cameraTransform.position = playerPosX * Vector3.right + cameraOffset;
bgManager.ResetBg(playerPosX);
}).AddTo(this);
this.UpdateAsObservable()
.Where(_ => state.Value == GameState.Play)
.Subscribe(_ =>
@ -357,13 +355,14 @@ namespace MyGame.Scenes.MiniGame.Scripts
{
SoundManager.Instance.ChangeVolumeUniqueBGM(1f);
ResetTimer();
bgManager.ResetBg(characterBeginPos.x);
// ステージ読み込み
stageManager.SetBeginStages();
player.transform.position = characterBeginPos;
player.ResetPlayer();
scoreCount.Value = 0;
resultManager.Reset();
state.Value = GameState.Ready;
state.SetValueAndForceNotify(GameState.Ready);
}
private static void UpdatePlayCount()