mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-19 21:23:52 +00:00
Add option to always allow stealing from KO'd actors (feature #5545)
This commit is contained in:
parent
899966f0d3
commit
9c930e38fa
6 changed files with 44 additions and 1 deletions
|
@ -51,6 +51,7 @@
|
||||||
Feature #5519: Code Patch tab in launcher
|
Feature #5519: Code Patch tab in launcher
|
||||||
Feature #5524: Resume failed script execution after reload
|
Feature #5524: Resume failed script execution after reload
|
||||||
Feature #5525: Search fields tweaks (utf-8)
|
Feature #5525: Search fields tweaks (utf-8)
|
||||||
|
Feature #5545: Option to allow stealing from an unconscious NPC during combat
|
||||||
Task #5480: Drop Qt4 support
|
Task #5480: Drop Qt4 support
|
||||||
Task #5520: Improve cell name autocompleter implementation
|
Task #5520: Improve cell name autocompleter implementation
|
||||||
|
|
||||||
|
|
|
@ -122,6 +122,7 @@ bool Launcher::AdvancedPage::loadSettings()
|
||||||
int unarmedFactorsStrengthIndex = mEngineSettings.getInt("strength influences hand to hand", "Game");
|
int unarmedFactorsStrengthIndex = mEngineSettings.getInt("strength influences hand to hand", "Game");
|
||||||
if (unarmedFactorsStrengthIndex >= 0 && unarmedFactorsStrengthIndex <= 2)
|
if (unarmedFactorsStrengthIndex >= 0 && unarmedFactorsStrengthIndex <= 2)
|
||||||
unarmedFactorsStrengthComboBox->setCurrentIndex(unarmedFactorsStrengthIndex);
|
unarmedFactorsStrengthComboBox->setCurrentIndex(unarmedFactorsStrengthIndex);
|
||||||
|
loadSettingBool(stealingFromKnockedOutCheckBox, "always allow stealing from knocked out actors", "Game");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Visuals
|
// Visuals
|
||||||
|
@ -215,6 +216,7 @@ void Launcher::AdvancedPage::saveSettings()
|
||||||
int unarmedFactorsStrengthIndex = unarmedFactorsStrengthComboBox->currentIndex();
|
int unarmedFactorsStrengthIndex = unarmedFactorsStrengthComboBox->currentIndex();
|
||||||
if (unarmedFactorsStrengthIndex != mEngineSettings.getInt("strength influences hand to hand", "Game"))
|
if (unarmedFactorsStrengthIndex != mEngineSettings.getInt("strength influences hand to hand", "Game"))
|
||||||
mEngineSettings.setInt("strength influences hand to hand", "Game", unarmedFactorsStrengthIndex);
|
mEngineSettings.setInt("strength influences hand to hand", "Game", unarmedFactorsStrengthIndex);
|
||||||
|
saveSettingBool(stealingFromKnockedOutCheckBox, "always allow stealing from knocked out actors", "Game");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Visuals
|
// Visuals
|
||||||
|
|
|
@ -911,6 +911,12 @@ namespace MWClass
|
||||||
if (!getNpcStats(ptr).isWerewolf())
|
if (!getNpcStats(ptr).isWerewolf())
|
||||||
return std::shared_ptr<MWWorld::Action>(new MWWorld::ActionTalk(ptr));
|
return std::shared_ptr<MWWorld::Action>(new MWWorld::ActionTalk(ptr));
|
||||||
}
|
}
|
||||||
|
else // In combat
|
||||||
|
{
|
||||||
|
const bool stealingInCombat = Settings::Manager::getBool ("always allow stealing from knocked out actors", "Game");
|
||||||
|
if (stealingInCombat && stats.getKnockedDown())
|
||||||
|
return std::shared_ptr<MWWorld::Action>(new MWWorld::ActionOpen(ptr)); // stealing
|
||||||
|
}
|
||||||
|
|
||||||
// Tribunal and some mod companions oddly enough must use open action as fallback
|
// Tribunal and some mod companions oddly enough must use open action as fallback
|
||||||
if (!getScript(ptr).empty() && ptr.getRefData().getLocals().getIntVar(getScript(ptr), "companion"))
|
if (!getScript(ptr).empty() && ptr.getRefData().getLocals().getIntVar(getScript(ptr), "companion"))
|
||||||
|
@ -1062,7 +1068,14 @@ namespace MWClass
|
||||||
if (customData.mNpcStats.isDead() && customData.mNpcStats.isDeathAnimationFinished())
|
if (customData.mNpcStats.isDead() && customData.mNpcStats.isDeathAnimationFinished())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return !customData.mNpcStats.getAiSequence().isInCombat();
|
if (!customData.mNpcStats.getAiSequence().isInCombat())
|
||||||
|
return true;
|
||||||
|
|
||||||
|
const bool stealingInCombat = Settings::Manager::getBool ("always allow stealing from knocked out actors", "Game");
|
||||||
|
if (stealingInCombat && customData.mNpcStats.getKnockedDown())
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
MWGui::ToolTipInfo Npc::getToolTipInfo (const MWWorld::ConstPtr& ptr, int count) const
|
MWGui::ToolTipInfo Npc::getToolTipInfo (const MWWorld::ConstPtr& ptr, int count) const
|
||||||
|
|
|
@ -356,3 +356,17 @@ If disabled then the 3 best skills of trainers and the training limits take into
|
||||||
If enabled then the 3 best skills of trainers and the training limits are based on the trainer base skills.
|
If enabled then the 3 best skills of trainers and the training limits are based on the trainer base skills.
|
||||||
|
|
||||||
This setting can be controlled in Advanced tab of the launcher.
|
This setting can be controlled in Advanced tab of the launcher.
|
||||||
|
|
||||||
|
always allow stealing from knocked out actors
|
||||||
|
---------------------------------------------
|
||||||
|
|
||||||
|
:Type: boolean
|
||||||
|
:Range: True/False
|
||||||
|
:Default: False
|
||||||
|
|
||||||
|
By Bethesda's design, in the latest released version of Morrowind pickpocketing is impossible during combat,
|
||||||
|
even if the fighting NPC is knocked out.
|
||||||
|
|
||||||
|
This setting allows the player to steal items from fighting NPCs that were knocked out if enabled.
|
||||||
|
|
||||||
|
This setting can be controlled in Advanced tab of the launcher.
|
||||||
|
|
|
@ -331,6 +331,9 @@ swim upward coef = 0.0
|
||||||
# Make the training skills proposed by a trainer based on its base attribute instead of its modified ones
|
# Make the training skills proposed by a trainer based on its base attribute instead of its modified ones
|
||||||
trainers training skills based on base skill = false
|
trainers training skills based on base skill = false
|
||||||
|
|
||||||
|
# Make stealing items from NPCs that were knocked down possible during combat.
|
||||||
|
always allow stealing from knocked out actors = false
|
||||||
|
|
||||||
[General]
|
[General]
|
||||||
|
|
||||||
# Anisotropy reduces distortion in textures at low angles (e.g. 0 to 16).
|
# Anisotropy reduces distortion in textures at low angles (e.g. 0 to 16).
|
||||||
|
|
|
@ -154,6 +154,16 @@
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="stealingFromKnockedOutCheckBox">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string><html><head/><body><p>Make stealing items from NPCs that were knocked down possible during combat.</p></body></html></string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Always allow stealing from knocked out actors</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer>
|
<spacer>
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
|
Loading…
Reference in a new issue