mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-02-27 10:09:40 +00:00
Do not allow player to take items from evidence chests (bug #3609)
This commit is contained in:
parent
271d8e6d74
commit
4a6d2cbaff
3 changed files with 10 additions and 2 deletions
|
@ -9,6 +9,7 @@
|
|||
Bug #3109: SetPos/Position handles actors differently
|
||||
Bug #3282: Unintended behaviour when assigning F3 and Windows keys
|
||||
Bug #3550: Companion from mod attacks the air after combat has ended
|
||||
Bug #3609: Items from evidence chest are not considered to be stolen if player is allowed to use the chest
|
||||
Bug #3623: Display scaling breaks mouse recognition
|
||||
Bug #3725: Using script function in a non-conditional expression breaks script compilation
|
||||
Bug #3733: Normal maps are inverted on mirrored UVs
|
||||
|
|
|
@ -275,9 +275,11 @@ namespace MWClass
|
|||
if (ptr.getCellRef().getTrap() != "")
|
||||
text += "\n#{sTrapped}";
|
||||
|
||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp()) {
|
||||
text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||
if (MWBase::Environment::get().getWindowManager()->getFullHelp())
|
||||
{ text += MWGui::ToolTips::getCellRefString(ptr.getCellRef());
|
||||
text += MWGui::ToolTips::getMiscString(ref->mBase->mScript, "Script");
|
||||
if (Misc::StringUtils::ciEqual(ptr.getCellRef().getRefId(), "stolen_goods"))
|
||||
text += "\nYou can not use evidence chests";
|
||||
}
|
||||
|
||||
info.text = text;
|
||||
|
|
|
@ -950,6 +950,7 @@ namespace MWMechanics
|
|||
return true;
|
||||
|
||||
const MWWorld::CellRef& cellref = target.getCellRef();
|
||||
|
||||
// there is no harm to use unlocked doors
|
||||
int lockLevel = cellref.getLockLevel();
|
||||
if (target.getClass().isDoor() &&
|
||||
|
@ -1005,6 +1006,10 @@ namespace MWMechanics
|
|||
if (!cellref.getOwner().empty())
|
||||
victim = MWBase::Environment::get().getWorld()->searchPtr(cellref.getOwner(), true, false);
|
||||
|
||||
// A special case for evidence chest - we should not allow to take items even if it is technically permitted
|
||||
if (Misc::StringUtils::ciEqual(cellref.getRefId(), "stolen_goods"))
|
||||
return false;
|
||||
|
||||
return (!isOwned && !isFactionOwned);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue