Open-sourced some code

This commit is contained in:
2019-03-08 09:54:14 +11:00
commit 645272872c
142 changed files with 3028 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PauseManager {
//singleton members
private static PauseManager singletonObject = null;
public static PauseManager Instance {
get {
if (singletonObject != null) {
return singletonObject;
} else {
return singletonObject = new PauseManager();
}
}
set {
singletonObject = value;
}
}
//paused controller
bool paused = false;
public bool Paused {
get {
return paused;
}
set {
paused = value;
TriggerLists();
}
}
public delegate void CallbackHandler();
List<CallbackHandler> onPausedList = new List<CallbackHandler>();
List<CallbackHandler> onResumeList = new List<CallbackHandler>();
private PauseManager() {}
public void PushOnPaused(CallbackHandler callback) {
onPausedList.Add(callback);
}
public void PushOnResume(CallbackHandler callback) {
onResumeList.Add(callback);
}
public void PurgeLists() {
onPausedList.Clear();
onResumeList.Clear();
}
void TriggerLists() {
if (Paused) {
foreach(CallbackHandler callback in onPausedList) {
callback();
}
}
else {
foreach(CallbackHandler callback in onResumeList) {
callback();
}
}
}
}