Handle AllowWerewolfForceGreeting variable (bug #7609)

macos_ci_fix
Alexei Kotov 7 months ago
parent 1129e7b746
commit cecb2b71ea

@ -75,6 +75,7 @@
Bug #7573: Drain Fatigue can't bring fatigue below zero by default
Bug #7603: Scripts menu size is not updated properly
Bug #7604: Goblins Grunt becomes idle once injured
Bug #7609: ForceGreeting should not open dialogue for werewolves
Feature #3537: Shader-based water ripples
Feature #5492: Let rain and snow collide with statics
Feature #6149: Dehardcode Lua API_REVISION

@ -135,6 +135,15 @@ namespace MWScript
return;
}
bool greetWerewolves = false;
const ESM::RefId& script = ptr.getClass().getScript(ptr);
if (!script.empty())
greetWerewolves = ptr.getRefData().getLocals().hasVar(script, "allowwerewolfforcegreeting");
const MWWorld::Ptr& player = MWBase::Environment::get().getWorld()->getPlayerPtr();
if (player.getClass().getNpcStats(player).isWerewolf() && !greetWerewolves)
return;
MWBase::Environment::get().getWindowManager()->pushGuiMode(MWGui::GM_Dialogue, ptr);
}
};

Loading…
Cancel
Save