void State_Console::OnDestroy()
{
    EventManager* evMgr = GetStateManager().GetContext().GetEventManager();
    evMgr->RemoveCallback(StateType::Console, "Key_Tilde");
    evMgr->RemoveCallback(StateType::Console, "Text_Entered");
    evMgr->RemoveCallback(StateType::Console, "Key_Return");
    evMgr->RemoveCallback(StateType::Console, "Key_Up");
    evMgr->RemoveCallback(StateType::Console, "Key_Down");
    evMgr->RemoveCallback(StateType::Console, "Key_Left");
    evMgr->RemoveCallback(StateType::Console, "Key_Right");
    evMgr->RemoveCallback(StateType::Console, "Key_PageUp");
    evMgr->RemoveCallback(StateType::Console, "Key_PageDown");
    //evMgr->RemoveCallback(StateType::Console, "Key_Shift");
}
void State_MainMenu::OnDestroy(){
	m_stateMgr->GetContext()->m_guiManager->RemoveInterface(StateType::MainMenu, "MainMenu");
	EventManager* eMgr = m_stateMgr->GetContext()->m_eventManager;
	eMgr->RemoveCallback(StateType::MainMenu, "MainMenu_Play");
	eMgr->RemoveCallback(StateType::MainMenu, "MainMenu_Quit");
}