ゲーム終了表示を追加
This commit is contained in:
parent
34169603fa
commit
77f85b3a6a
|
|
@ -620,7 +620,7 @@ GameObject:
|
|||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &460945447
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -1028,7 +1028,7 @@ GameObject:
|
|||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &642263094
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -1513,7 +1513,7 @@ GameObject:
|
|||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &832390347
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -2612,7 +2612,7 @@ GameObject:
|
|||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1370567322
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -7923,7 +7923,9 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
startingGuide: {fileID: 8786490829224139677}
|
||||
gameResultText: {fileID: 1003859323}
|
||||
perfectResultObject: {fileID: 642263093}
|
||||
goodResultObject: {fileID: 1370567321}
|
||||
failureResultObject: {fileID: 460945446}
|
||||
characterSweat: {fileID: 580170368}
|
||||
characterFlower: {fileID: 785034261}
|
||||
thermalControl: {fileID: 1870432535}
|
||||
|
|
@ -7986,7 +7988,7 @@ MonoBehaviour:
|
|||
baseGrowSpeed: 1
|
||||
hotGrowSpeed: 1.5
|
||||
baseCornPopTime: 10
|
||||
cornBurntDuration: 3
|
||||
cornBurntDuration: 1
|
||||
--- !u!1 &1928679189
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
|
|||
|
|
@ -17,8 +17,9 @@ public enum GameState
|
|||
public class PopcornGameManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject startingGuide;
|
||||
// [SerializeField] private Text powerResultText;
|
||||
[SerializeField] private Text gameResultText;
|
||||
[SerializeField] private GameObject perfectResultObject;
|
||||
[SerializeField] private GameObject goodResultObject;
|
||||
[SerializeField] private GameObject failureResultObject;
|
||||
|
||||
[SerializeField] private GameObject characterSweat;
|
||||
[SerializeField] private GameObject characterFlower;
|
||||
|
|
@ -28,6 +29,7 @@ public class PopcornGameManager : MonoBehaviour
|
|||
|
||||
public IReadOnlyReactiveProperty<GameState> State => state;
|
||||
private readonly ReactiveProperty<GameState> state = new ReactiveProperty<GameState>(GameState.Guide);
|
||||
private readonly CompositeDisposable compositeDisposable = new CompositeDisposable();
|
||||
|
||||
|
||||
// Start is called before the first frame update
|
||||
|
|
@ -54,37 +56,73 @@ public class PopcornGameManager : MonoBehaviour
|
|||
throw new ArgumentOutOfRangeException(nameof(x), x, null);
|
||||
}
|
||||
}).AddTo(this);
|
||||
|
||||
this.UpdateAsObservable().Where(_ => Input.GetMouseButton(0)).FirstOrDefault().Subscribe(_ =>
|
||||
|
||||
cornManager.Result.SkipLatestValueOnSubscribe().Subscribe(x =>
|
||||
{
|
||||
StartGame();
|
||||
state.Value = GameState.Result;
|
||||
thermalControl.StopMeter();
|
||||
characterFlower.gameObject.SetActive(false);
|
||||
characterSweat.gameObject.SetActive(false);
|
||||
switch (x)
|
||||
{
|
||||
case CornResult.Perfect:
|
||||
perfectResultObject.SetActive(true);
|
||||
break;
|
||||
case CornResult.Good:
|
||||
|
||||
goodResultObject.SetActive(true);
|
||||
break;
|
||||
case CornResult.Failure:
|
||||
failureResultObject.SetActive(true);
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(x), x, null);
|
||||
}
|
||||
|
||||
// 再度画面タップでリセット
|
||||
this.UpdateAsObservable()
|
||||
.Select(_ => Input.GetMouseButton(0))
|
||||
.DistinctUntilChanged()
|
||||
.Skip(1)
|
||||
.FirstOrDefault(b => b)
|
||||
.Subscribe(_ =>
|
||||
{
|
||||
ResetGame();
|
||||
}).AddTo(this);
|
||||
}).AddTo(this);
|
||||
|
||||
ResetGame();
|
||||
|
||||
// コーンマネージャからResultきたらStateもResult
|
||||
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
}
|
||||
|
||||
private void ResetUI()
|
||||
{
|
||||
startingGuide.SetActive(true);
|
||||
thermoMeter.gameObject.SetActive(false);
|
||||
gameResultText.text = "";
|
||||
perfectResultObject.SetActive(false);
|
||||
goodResultObject.SetActive(false);
|
||||
failureResultObject.SetActive(false);
|
||||
|
||||
thermalControl.StopMeter();
|
||||
thermoMeter.gameObject.SetActive(false);
|
||||
characterFlower.gameObject.SetActive(false);
|
||||
characterSweat.gameObject.SetActive(false);
|
||||
}
|
||||
|
||||
private void ResetGame()
|
||||
{
|
||||
compositeDisposable.Clear();
|
||||
this.UpdateAsObservable()
|
||||
.Select(_ => Input.GetMouseButton(0))
|
||||
.DistinctUntilChanged()
|
||||
.Skip(1)
|
||||
.FirstOrDefault(b => b)
|
||||
.Subscribe(_ =>
|
||||
{
|
||||
StartGame();
|
||||
}).AddTo(compositeDisposable);
|
||||
ResetUI();
|
||||
thermalControl.ResetMeter();
|
||||
cornManager.RespawnCorn();
|
||||
state.Value = GameState.Guide;
|
||||
}
|
||||
|
||||
private void StartGame()
|
||||
|
|
|
|||
Loading…
Reference in New Issue