Add main menu, loding screen and loding logic
This commit is contained in:
parent
0c71d06fb8
commit
2ffb285e0b
15 changed files with 3176 additions and 525 deletions
35
Assets/Scripts/Loader.cs
Normal file
35
Assets/Scripts/Loader.cs
Normal file
|
@ -0,0 +1,35 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
public static class Loader
|
||||
{
|
||||
|
||||
public enum Scene
|
||||
{
|
||||
MainMenuScene,
|
||||
GaneScene, // Spelling mistake I am leaving in because it's funny :)
|
||||
LoadingScene
|
||||
}
|
||||
|
||||
private static Scene targetScene;
|
||||
|
||||
public static void Load(Scene targetScene)
|
||||
{
|
||||
|
||||
Loader.targetScene = targetScene;
|
||||
|
||||
SceneManager.LoadScene(Scene.LoadingScene.ToString());
|
||||
|
||||
}
|
||||
|
||||
// Jank AF
|
||||
public static void LoaderCallback()
|
||||
{
|
||||
|
||||
SceneManager.LoadScene(Loader.targetScene.ToString());
|
||||
|
||||
}
|
||||
|
||||
}
|
11
Assets/Scripts/Loader.cs.meta
Normal file
11
Assets/Scripts/Loader.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ade5d2e62f782c14daf8b02d90a50adc
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
20
Assets/Scripts/LoaderCallback.cs
Normal file
20
Assets/Scripts/LoaderCallback.cs
Normal file
|
@ -0,0 +1,20 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class LoaderCallback : MonoBehaviour
|
||||
{
|
||||
|
||||
private bool isFirstUpdate = true;
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (isFirstUpdate)
|
||||
{
|
||||
isFirstUpdate = false;
|
||||
|
||||
Loader.LoaderCallback();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
11
Assets/Scripts/LoaderCallback.cs.meta
Normal file
11
Assets/Scripts/LoaderCallback.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1d4c37254668f184290dd632048d09e9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Scripts/UI/MainMenu.meta
Normal file
8
Assets/Scripts/UI/MainMenu.meta
Normal file
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 59b7078030cbddb47baaea404501078c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
26
Assets/Scripts/UI/MainMenu/MainMenuUI.cs
Normal file
26
Assets/Scripts/UI/MainMenu/MainMenuUI.cs
Normal file
|
@ -0,0 +1,26 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class MainMenuUI : MonoBehaviour
|
||||
{
|
||||
|
||||
[SerializeField] private Button playButton;
|
||||
[SerializeField] private Button quitButton;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
playButton.onClick.AddListener(() =>
|
||||
{
|
||||
Loader.Load(Loader.Scene.GaneScene);
|
||||
});
|
||||
|
||||
quitButton.onClick.AddListener(() =>
|
||||
{
|
||||
Application.Quit();
|
||||
});
|
||||
}
|
||||
|
||||
}
|
11
Assets/Scripts/UI/MainMenu/MainMenuUI.cs.meta
Normal file
11
Assets/Scripts/UI/MainMenu/MainMenuUI.cs.meta
Normal file
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b1723c8b0762f894bb8b90e418526980
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Reference in a new issue