1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-24 18:23:54 +00:00
This reverts commit 8dd930cf97.
This commit is contained in:
mrcheko 2013-12-20 22:39:02 +02:00
parent e480e31d1e
commit b98cfe2d1b
14 changed files with 31 additions and 92 deletions

View file

@ -202,8 +202,6 @@ namespace MWBase
virtual void setSpellVisibility(bool visible) = 0; virtual void setSpellVisibility(bool visible) = 0;
virtual void setSneakVisibility(bool visible) = 0; virtual void setSneakVisibility(bool visible) = 0;
void virtual setMainMenuNoReturn(bool noreturn) = 0;
virtual void activateQuickKey (int index) = 0; virtual void activateQuickKey (int index) = 0;
virtual void setSelectedSpell(const std::string& spellId, int successChancePercent) = 0; virtual void setSelectedSpell(const std::string& spellId, int successChancePercent) = 0;

View file

@ -40,7 +40,6 @@ namespace ESM
namespace MWRender namespace MWRender
{ {
class Camera;
class ExternalRendering; class ExternalRendering;
class Animation; class Animation;
} }
@ -116,8 +115,6 @@ namespace MWBase
virtual MWWorld::Player& getPlayer() = 0; virtual MWWorld::Player& getPlayer() = 0;
virtual MWRender::Camera* getCamera() const = 0;
virtual const MWWorld::ESMStore& getStore() const = 0; virtual const MWWorld::ESMStore& getStore() const = 0;
virtual std::vector<ESM::ESMReader>& getEsmReader() = 0; virtual std::vector<ESM::ESMReader>& getEsmReader() = 0;

View file

@ -17,7 +17,6 @@ namespace MWGui
MainMenu::MainMenu(int w, int h) MainMenu::MainMenu(int w, int h)
: OEngine::GUI::Layout("openmw_mainmenu.layout") : OEngine::GUI::Layout("openmw_mainmenu.layout")
, mButtonBox(0) , mButtonBox(0)
, mNoReturn(false)
{ {
onResChange(w,h); onResChange(w,h);
} }
@ -34,8 +33,7 @@ namespace MWGui
int curH = 0; int curH = 0;
std::vector<std::string> buttons; std::vector<std::string> buttons;
if(!mNoReturn) buttons.push_back("return");
buttons.push_back("return");
buttons.push_back("newgame"); buttons.push_back("newgame");
//buttons.push_back("loadgame"); //buttons.push_back("loadgame");
//buttons.push_back("savegame"); //buttons.push_back("savegame");
@ -70,15 +68,6 @@ namespace MWGui
mButtonBox->setCoord (w/2 - maxwidth/2, h/2 - curH/2, maxwidth, curH); mButtonBox->setCoord (w/2 - maxwidth/2, h/2 - curH/2, maxwidth, curH);
} }
void MainMenu::setNoReturn(bool bNoReturn)
{
if (mNoReturn != bNoReturn)
{
mNoReturn = bNoReturn;
onResChange( Settings::Manager::getInt("resolution x", "Video"), Settings::Manager::getInt("resolution y", "Video") );
}
}
void MainMenu::onButtonClicked(MyGUI::Widget *sender) void MainMenu::onButtonClicked(MyGUI::Widget *sender)
{ {
MWBase::Environment::get().getSoundManager()->playSound("Menu Click", 1.f, 1.f); MWBase::Environment::get().getSoundManager()->playSound("Menu Click", 1.f, 1.f);

View file

@ -12,13 +12,9 @@ namespace MWGui
void onResChange(int w, int h); void onResChange(int w, int h);
void setNoReturn(bool bNoReturn);
private: private:
MyGUI::Widget* mButtonBox; MyGUI::Widget* mButtonBox;
bool mNoReturn;
std::map<std::string, MWGui::ImageButton*> mButtons; std::map<std::string, MWGui::ImageButton*> mButtons;
void onButtonClicked (MyGUI::Widget* sender); void onButtonClicked (MyGUI::Widget* sender);

View file

@ -880,11 +880,6 @@ namespace MWGui
mHud->setSneakVisible(visible); mHud->setSneakVisible(visible);
} }
void WindowManager::setMainMenuNoReturn(bool noreturn)
{
mMenu->setNoReturn(noreturn);
}
void WindowManager::setDragDrop(bool dragDrop) void WindowManager::setDragDrop(bool dragDrop)
{ {
mToolTips->setEnabled(!dragDrop); mToolTips->setEnabled(!dragDrop);

View file

@ -198,9 +198,6 @@ namespace MWGui
virtual void setSpellVisibility(bool visible); virtual void setSpellVisibility(bool visible);
virtual void setSneakVisibility(bool visible); virtual void setSneakVisibility(bool visible);
//disables 'return' button in the main menu (used when player is dead)
void virtual setMainMenuNoReturn(bool noreturn);
virtual void activateQuickKey (int index); virtual void activateQuickKey (int index);
virtual void setSelectedSpell(const std::string& spellId, int successChancePercent); virtual void setSelectedSpell(const std::string& spellId, int successChancePercent);

View file

@ -367,27 +367,24 @@ namespace MWInput
} }
} }
MWWorld::Ptr player = MWBase::Environment::get().getWorld ()->getPlayer().getPlayer(); if (mControlSwitch["playerviewswitch"]) {
if ( !player.getClass().getCreatureStats(player).isDead() ) {
if (mControlSwitch["playerviewswitch"]) { // work around preview mode toggle when pressing Alt+Tab
// work around preview mode toggle when pressing Alt+Tab if (actionIsActive(A_TogglePOV) && !mInputManager->isModifierHeld(SDL_Keymod(KMOD_ALT))) {
if (actionIsActive(A_TogglePOV) && !mInputManager->isModifierHeld(SDL_Keymod(KMOD_ALT))) { if (mPreviewPOVDelay <= 0.5 &&
(mPreviewPOVDelay += dt) > 0.5)
if (mPreviewPOVDelay <= 0.5 && {
(mPreviewPOVDelay += dt) > 0.5) mPreviewPOVDelay = 1.f;
{ MWBase::Environment::get().getWorld()->togglePreviewMode(true);
mPreviewPOVDelay = 1.f;
MWBase::Environment::get().getWorld()->togglePreviewMode(true);
}
} else {
if (mPreviewPOVDelay > 0.5) {
//disable preview mode
MWBase::Environment::get().getWorld()->togglePreviewMode(false);
} else if (mPreviewPOVDelay > 0.f) {
MWBase::Environment::get().getWorld()->togglePOV();
}
mPreviewPOVDelay = 0.f;
} }
} else {
if (mPreviewPOVDelay > 0.5) {
//disable preview mode
MWBase::Environment::get().getWorld()->togglePreviewMode(false);
} else if (mPreviewPOVDelay > 0.f) {
MWBase::Environment::get().getWorld()->togglePOV();
}
mPreviewPOVDelay = 0.f;
} }
} }
} }

View file

@ -570,13 +570,15 @@ namespace MWMechanics
continue; continue;
} }
if (iter->second->kill()) if(iter->second->isDead())
{ continue;
++mDeathCount[cls.getId(iter->first)];
if(cls.isEssential(iter->first)) iter->second->kill();
MWBase::Environment::get().getWindowManager()->messageBox("#{sKilledEssential}");
} ++mDeathCount[cls.getId(iter->first)];
if(cls.isEssential(iter->first))
MWBase::Environment::get().getWindowManager()->messageBox("#{sKilledEssential}");
} }
} }

View file

@ -27,7 +27,6 @@
#include "security.hpp" #include "security.hpp"
#include "../mwrender/animation.hpp" #include "../mwrender/animation.hpp"
#include "../mwrender/camera.hpp"
#include "../mwbase/environment.hpp" #include "../mwbase/environment.hpp"
#include "../mwbase/world.hpp" #include "../mwbase/world.hpp"
@ -1056,19 +1055,10 @@ void CharacterController::forceStateUpdate()
} }
} }
bool CharacterController::kill() void CharacterController::kill()
{ {
if( isDead() ) if(mDeathState != CharState_None)
{ return;
//player death animation is over: toggle game menu without 'return' option
if( mPtr == MWBase::Environment::get().getWorld()->getPlayer().getPlayer()
&& !isAnimPlaying(mCurrentDeath) )
{
MWBase::Environment::get().getWindowManager()->setMainMenuNoReturn(true);
MWBase::Environment::get().getWindowManager()->pushGuiMode (MWGui::GM_MainMenu);
}
return false;
}
if(mPtr.getTypeName() == typeid(ESM::NPC).name()) if(mPtr.getTypeName() == typeid(ESM::NPC).name())
{ {
@ -1106,10 +1096,6 @@ bool CharacterController::kill()
if(mAnimation) if(mAnimation)
{ {
if (mPtr == MWBase::Environment::get().getWorld()->getPlayer().getPlayer()
&& MWBase::Environment::get().getWorld()->getCamera()->isFirstPerson() )
MWBase::Environment::get().getWorld()->togglePOV();
mAnimation->play(mCurrentDeath, Priority_Death, MWRender::Animation::Group_All, mAnimation->play(mCurrentDeath, Priority_Death, MWRender::Animation::Group_All,
false, 1.0f, "start", "stop", 0.0f, 0); false, 1.0f, "start", "stop", 0.0f, 0);
mAnimation->disable(mCurrentIdle); mAnimation->disable(mCurrentIdle);
@ -1117,8 +1103,6 @@ bool CharacterController::kill()
mIdleState = CharState_None; mIdleState = CharState_None;
mCurrentIdle.clear(); mCurrentIdle.clear();
return true;
} }
void CharacterController::resurrect() void CharacterController::resurrect()

View file

@ -190,7 +190,7 @@ public:
void skipAnim(); void skipAnim();
bool isAnimPlaying(const std::string &groupName); bool isAnimPlaying(const std::string &groupName);
bool kill(); void kill();
void resurrect(); void resurrect();
bool isDead() const bool isDead() const
{ return mDeathState != CharState_None; } { return mDeathState != CharState_None; }

View file

@ -211,11 +211,6 @@ MWRender::SkyManager* RenderingManager::getSkyManager()
return mSkyManager; return mSkyManager;
} }
MWRender::Camera* RenderingManager::getCamera() const
{
return mCamera;
}
MWRender::Objects& RenderingManager::getObjects(){ MWRender::Objects& RenderingManager::getObjects(){
return *mObjects; return *mObjects;
} }

View file

@ -98,8 +98,6 @@ public:
SkyManager* getSkyManager(); SkyManager* getSkyManager();
Compositors* getCompositors(); Compositors* getCompositors();
MWRender::Camera* getCamera() const;
void toggleLight(); void toggleLight();
bool toggleRenderMode(int mode); bool toggleRenderMode(int mode);

View file

@ -312,8 +312,6 @@ namespace MWWorld
mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback); mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback);
MWBase::Environment::get().getScriptManager()->resetGlobalScripts(); MWBase::Environment::get().getScriptManager()->resetGlobalScripts();
MWBase::Environment::get().getWindowManager()->setMainMenuNoReturn(false);
} }
@ -405,11 +403,6 @@ namespace MWWorld
return *mPlayer; return *mPlayer;
} }
MWRender::Camera* World::getCamera() const
{
return mRendering->getCamera();
}
const MWWorld::ESMStore& World::getStore() const const MWWorld::ESMStore& World::getStore() const
{ {
return mStore; return mStore;
@ -1311,7 +1304,7 @@ namespace MWWorld
// inform the GUI about focused object // inform the GUI about focused object
MWWorld::Ptr object = getFacedObject (); MWWorld::Ptr object = getFacedObject ();
MWBase::Environment::get().getWindowManager()->setFocusObject(object); MWBase::Environment::get().getWindowManager()->setFocusObject(object);
// retrieve object dimensions so we know where to place the floating label // retrieve object dimensions so we know where to place the floating label
if (!object.isEmpty ()) if (!object.isEmpty ())

View file

@ -187,8 +187,6 @@ namespace MWWorld
virtual Player& getPlayer(); virtual Player& getPlayer();
virtual MWRender::Camera* getCamera() const;
virtual const MWWorld::ESMStore& getStore() const; virtual const MWWorld::ESMStore& getStore() const;
virtual std::vector<ESM::ESMReader>& getEsmReader(); virtual std::vector<ESM::ESMReader>& getEsmReader();