Add tutorial splash screen

This commit is contained in:
BuyMyMojo 2023-03-04 08:49:27 +11:00
parent 701ef5a2ec
commit 60ee4185e2
4 changed files with 3342 additions and 8 deletions

2
.erp
View file

@ -5,7 +5,7 @@
<resetOnSceneChange>false</resetOnSceneChange> <resetOnSceneChange>false</resetOnSceneChange>
<debugMode>false</debugMode> <debugMode>false</debugMode>
<EditorClosed>true</EditorClosed> <EditorClosed>true</EditorClosed>
<LastTimestamp>1677882343</LastTimestamp> <LastTimestamp>1677885521</LastTimestamp>
<LastSessionID>2115309888051293429</LastSessionID> <LastSessionID>2115309888051293429</LastSessionID>
<Errored>false</Errored> <Errored>false</Errored>
</ERPSettings> </ERPSettings>

File diff suppressed because it is too large Load diff

View file

@ -14,6 +14,7 @@ public class GameInput : MonoBehaviour
public event EventHandler OnInteractAction; public event EventHandler OnInteractAction;
public event EventHandler OnInteractAlteranteAction; public event EventHandler OnInteractAlteranteAction;
public event EventHandler OnPauseAction; public event EventHandler OnPauseAction;
public event EventHandler OnKeyRebind;
public enum Bindings public enum Bindings
{ {
@ -172,6 +173,8 @@ public class GameInput : MonoBehaviour
string playerOveridesJson = playerInputActions.SaveBindingOverridesAsJson(); string playerOveridesJson = playerInputActions.SaveBindingOverridesAsJson();
PlayerPrefs.SetString(PLAYER_PREFS_BINDINGS, playerOveridesJson); PlayerPrefs.SetString(PLAYER_PREFS_BINDINGS, playerOveridesJson);
PlayerPrefs.Save(); PlayerPrefs.Save();
OnKeyRebind?.Invoke(this, EventArgs.Empty);
}).Start(); }).Start();
} }

View file

@ -24,7 +24,6 @@ public class GameStateManager : MonoBehaviour
private bool isGamePaused = false; private bool isGamePaused = false;
// --- Timers --- // --- Timers ---
private float waitingToStartTimer = 1f;
private float countdownToStartTimer = 3f; private float countdownToStartTimer = 3f;
private float gamePlayTimer; private float gamePlayTimer;
private float gamePlayTimerMax = 10f; private float gamePlayTimerMax = 10f;
@ -38,6 +37,17 @@ public class GameStateManager : MonoBehaviour
private void Start() private void Start()
{ {
GameInput.Instance.OnPauseAction += GameInput_OnPauseAction; GameInput.Instance.OnPauseAction += GameInput_OnPauseAction;
GameInput.Instance.OnInteractAction += GameInput_OnInteractAction;
}
private void GameInput_OnInteractAction(object sender, EventArgs e)
{
if (state == State.WaitingToStart)
{
state = State.StartingCountdown;
OnStateChanged?.Invoke(this, EventArgs.Empty);
}
} }
private void GameInput_OnPauseAction(object sender, EventArgs e) private void GameInput_OnPauseAction(object sender, EventArgs e)
@ -52,12 +62,6 @@ public class GameStateManager : MonoBehaviour
switch (state) switch (state)
{ {
case State.WaitingToStart: case State.WaitingToStart:
waitingToStartTimer -= Time.deltaTime;
if (waitingToStartTimer < 0f)
{
state = State.StartingCountdown;
OnStateChanged?.Invoke(this, EventArgs.Empty);
}
break; break;
case State.StartingCountdown: case State.StartingCountdown:
countdownToStartTimer -= Time.deltaTime; countdownToStartTimer -= Time.deltaTime;