fix game state/process instantiation

This commit is contained in:
Gered 2013-08-24 18:17:20 -04:00
parent 2547677649
commit de552d03d3
2 changed files with 5 additions and 5 deletions

View file

@ -216,7 +216,7 @@ namespace Blarg.GameFramework.Processes
public T Add<T>(string name = null) where T : GameProcess public T Add<T>(string name = null) where T : GameProcess
{ {
var newProcess = (T)Activator.CreateInstance(typeof(T), this); var newProcess = (T)Activator.CreateInstance(typeof(T), this, GameState.EventManager);
var processInfo = new ProcessInfo(newProcess, name); var processInfo = new ProcessInfo(newProcess, name);
Queue(processInfo); Queue(processInfo);
return newProcess; return newProcess;

View file

@ -217,7 +217,7 @@ namespace Blarg.GameFramework.States
public T Push<T>(string name = null) where T : GameState public T Push<T>(string name = null) where T : GameState
{ {
var newState = (T)Activator.CreateInstance(typeof(T), this); var newState = (T)Activator.CreateInstance(typeof(T), this, EventManager);
var stateInfo = new StateInfo(newState, name); var stateInfo = new StateInfo(newState, name);
QueueForPush(stateInfo); QueueForPush(stateInfo);
return newState; return newState;
@ -225,7 +225,7 @@ namespace Blarg.GameFramework.States
public T Overlay<T>(string name = null) where T : GameState public T Overlay<T>(string name = null) where T : GameState
{ {
var newState = (T)Activator.CreateInstance(typeof(T), this); var newState = (T)Activator.CreateInstance(typeof(T), this, EventManager);
var stateInfo = new StateInfo(newState, name); var stateInfo = new StateInfo(newState, name);
stateInfo.IsOverlay = true; stateInfo.IsOverlay = true;
QueueForPush(stateInfo); QueueForPush(stateInfo);
@ -241,7 +241,7 @@ namespace Blarg.GameFramework.States
throw new InvalidOperationException("Cannot swap, no existing states."); throw new InvalidOperationException("Cannot swap, no existing states.");
bool isOverlay = currentTopStateInfo.IsOverlay; bool isOverlay = currentTopStateInfo.IsOverlay;
var newState = (T)Activator.CreateInstance(typeof(T), this); var newState = (T)Activator.CreateInstance(typeof(T), this, EventManager);
var stateInfo = new StateInfo(newState, name); var stateInfo = new StateInfo(newState, name);
stateInfo.IsOverlay = isOverlay; stateInfo.IsOverlay = isOverlay;
QueueForSwap(stateInfo, false); QueueForSwap(stateInfo, false);
@ -250,7 +250,7 @@ namespace Blarg.GameFramework.States
public T SwapTopNonOverlayWith<T>(string name = null) where T : GameState public T SwapTopNonOverlayWith<T>(string name = null) where T : GameState
{ {
var newState = (T)Activator.CreateInstance(typeof(T), this); var newState = (T)Activator.CreateInstance(typeof(T), this, EventManager);
var stateInfo = new StateInfo(newState, name); var stateInfo = new StateInfo(newState, name);
QueueForSwap(stateInfo, true); QueueForSwap(stateInfo, true);
return newState; return newState;