mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-21 12:53:51 +00:00
Fix activation not working sometimes
The current player cell was only being updated when the reference was not empty, causing it to incorrectly detect a cell change the first time something was activated in a newly visited cell, immediately closing the opened dialogue again.
This commit is contained in:
parent
2dc01fe56b
commit
a7092ef2d7
1 changed files with 6 additions and 6 deletions
|
@ -18,17 +18,17 @@ namespace MWGui
|
||||||
|
|
||||||
void ReferenceInterface::checkReferenceAvailable()
|
void ReferenceInterface::checkReferenceAvailable()
|
||||||
{
|
{
|
||||||
if (mPtr.isEmpty())
|
|
||||||
return;
|
|
||||||
|
|
||||||
MWWorld::Ptr::CellStore* playerCell = MWBase::Environment::get().getWorld()->getPlayer().getPlayer().getCell();
|
MWWorld::Ptr::CellStore* playerCell = MWBase::Environment::get().getWorld()->getPlayer().getPlayer().getCell();
|
||||||
|
|
||||||
// check if player has changed cell, or count of the reference has become 0
|
// check if player has changed cell, or count of the reference has become 0
|
||||||
if ((playerCell != mCurrentPlayerCell && mCurrentPlayerCell != NULL)
|
if ((playerCell != mCurrentPlayerCell && mCurrentPlayerCell != NULL)
|
||||||
|| mPtr.getRefData().getCount() == 0)
|
|| (!mPtr.isEmpty() && mPtr.getRefData().getCount() == 0))
|
||||||
{
|
{
|
||||||
mPtr = MWWorld::Ptr();
|
if (!mPtr.isEmpty())
|
||||||
onReferenceUnavailable();
|
{
|
||||||
|
mPtr = MWWorld::Ptr();
|
||||||
|
onReferenceUnavailable();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mCurrentPlayerCell = playerCell;
|
mCurrentPlayerCell = playerCell;
|
||||||
|
|
Loading…
Reference in a new issue