diff --git a/activeGameState.cpp b/activeGameState.cpp index c3f85b5..db11820 100755 --- a/activeGameState.cpp +++ b/activeGameState.cpp @@ -140,6 +140,9 @@ namespace battleship{ void ActiveGameState::onDettached() { AbstractAppState::onDettached(); + + offerScreen = false; + tradingScreen = false; } void ActiveGameState::updateCursor(){ diff --git a/inGameAppState.cpp b/inGameAppState.cpp index d627284..3212658 100755 --- a/inGameAppState.cpp +++ b/inGameAppState.cpp @@ -67,6 +67,7 @@ namespace battleship{ Camera *cam = Root::getSingleton()->getCamera(); cam->setPosition(Map::getSingleton()->getSpawnPoint(playerId) + Vector3(1, 1, 1) * configData::CAMERA_DISTANCE); cam->lookAt(Vector3(0, -1, -1).norm(), Vector3(0, 1, -1).norm()); + cam->setFarPlane(1000); GameManager *gm = GameManager::getSingleton(); StateManager *stateManager = gm->getStateManager(); diff --git a/map.cpp b/map.cpp index 36447c0..4ba9728 100755 --- a/map.cpp +++ b/map.cpp @@ -212,9 +212,10 @@ namespace battleship{ } void Map::Minimap::update(){ - if(!GameManager::getSingleton()->getStateManager()->getAppStateByType(AppStateType::ACTIVE_STATE)) return; - Button *mb = ConcreteGuiManager::getSingleton()->getButton("minimap"); + + if(!(GameManager::getSingleton()->getStateManager()->getAppStateByType(AppStateType::ACTIVE_STATE) && mb)) return; + updateCamFrame(mb); } diff --git a/researchButton.cpp b/researchButton.cpp index 21d1944..e461def 100644 --- a/researchButton.cpp +++ b/researchButton.cpp @@ -49,8 +49,10 @@ namespace battleship{ void ResearchButton::update(){ Button::update(); - ActiveGameState *activeState = (ActiveGameState*)(GameManager::getSingleton()->getStateManager()->getAppStateByType((int)AppStateType::ACTIVE_STATE)); + + if(!activeState) return; + vector technologies = activeState->getPlayer()->getTechnologies(); bool hasTech = (find(technologies.begin(), technologies.end(), techId) != technologies.end());