setState(mrpgState newState) { stateStack.Peek().onExit(); stateStack.Pop(); stateStack.Push(newState); stateStack.Peek().onEnter(); }
pushState(mrpgState newState) { stateStack.Push(newState); stateStack.Peek().onEnter(); }