mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-19 21:53:51 +00:00
Merge pull request #2386 from Capostrophic/waiting
Exit waiting at the correct time when the player is in air
This commit is contained in:
commit
6bf5960b96
2 changed files with 9 additions and 21 deletions
|
@ -81,16 +81,16 @@ namespace MWGui
|
|||
mTimeAdvancer.eventFinished += MyGUI::newDelegate(this, &WaitDialog::onWaitingFinished);
|
||||
}
|
||||
|
||||
void WaitDialog::onReferenceUnavailable ()
|
||||
{
|
||||
MWBase::Environment::get().getWindowManager()->removeGuiMode(GM_Rest);
|
||||
resetReference();
|
||||
}
|
||||
|
||||
void WaitDialog::setPtr(const MWWorld::Ptr &ptr)
|
||||
{
|
||||
mPtr = ptr;
|
||||
setCanRest(!mPtr.isEmpty() || MWBase::Environment::get().getWorld ()->canRest () == MWBase::World::Rest_Allowed);
|
||||
setCanRest(!ptr.isEmpty() || MWBase::Environment::get().getWorld ()->canRest () == MWBase::World::Rest_Allowed);
|
||||
|
||||
if (ptr.isEmpty() && MWBase::Environment::get().getWorld ()->canRest() == MWBase::World::Rest_PlayerIsInAir)
|
||||
{
|
||||
// Resting in air is not allowed unless you're using a bed
|
||||
MWBase::Environment::get().getWindowManager()->messageBox ("#{sNotifyMessage1}");
|
||||
MWBase::Environment::get().getWindowManager()->removeGuiMode(GM_Rest);
|
||||
}
|
||||
|
||||
if (mUntilHealedButton->getVisible())
|
||||
MWBase::Environment::get().getWindowManager()->setKeyFocusWidget(mUntilHealedButton);
|
||||
|
@ -107,7 +107,6 @@ namespace MWGui
|
|||
{
|
||||
mSleeping = false;
|
||||
mTimeAdvancer.stop();
|
||||
resetReference();
|
||||
}
|
||||
|
||||
void WaitDialog::onOpen()
|
||||
|
@ -141,12 +140,6 @@ namespace MWGui
|
|||
MWBase::Environment::get().getWindowManager()->messageBox ("#{sNotifyMessage1}");
|
||||
MWBase::Environment::get().getWindowManager()->popGuiMode ();
|
||||
}
|
||||
else if (mPtr.isEmpty() && canRest == MWBase::World::Rest_PlayerIsInAir)
|
||||
{
|
||||
// Resting in air is not allowed either, unless you're using a bed
|
||||
MWBase::Environment::get().getWindowManager()->messageBox ("#{sNotifyMessage1}");
|
||||
MWBase::Environment::get().getWindowManager()->popGuiMode ();
|
||||
}
|
||||
|
||||
onHourSliderChangedPosition(mHourSlider, 0);
|
||||
mHourSlider->setScrollPosition (0);
|
||||
|
@ -303,8 +296,6 @@ namespace MWGui
|
|||
|
||||
void WaitDialog::onFrame(float dt)
|
||||
{
|
||||
checkReferenceAvailable();
|
||||
|
||||
mTimeAdvancer.onFrame(dt);
|
||||
|
||||
if (mFadeTimeRemaining <= 0)
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
#include "timeadvancer.hpp"
|
||||
|
||||
#include "windowbase.hpp"
|
||||
#include "referenceinterface.hpp"
|
||||
|
||||
namespace MWGui
|
||||
{
|
||||
|
@ -23,7 +22,7 @@ namespace MWGui
|
|||
MyGUI::TextBox* mProgressText;
|
||||
};
|
||||
|
||||
class WaitDialog : public WindowBase, public ReferenceInterface
|
||||
class WaitDialog : public WindowBase
|
||||
{
|
||||
public:
|
||||
WaitDialog();
|
||||
|
@ -64,8 +63,6 @@ namespace MWGui
|
|||
|
||||
WaitDialogProgressBar mProgressBar;
|
||||
|
||||
virtual void onReferenceUnavailable();
|
||||
|
||||
void onUntilHealedButtonClicked(MyGUI::Widget* sender);
|
||||
void onWaitButtonClicked(MyGUI::Widget* sender);
|
||||
void onCancelButtonClicked(MyGUI::Widget* sender);
|
||||
|
|
Loading…
Reference in a new issue