Merge branch 'lua_crime_bounty' into 'master'

Lua: Add setCrimeLevel to types.Player

See merge request OpenMW/openmw!4008
pull/3235/head
psi29a 1 month ago
commit 3942d7fb7e

@ -186,6 +186,15 @@ namespace MWLua
const MWWorld::Class& cls = o.ptr().getClass();
return cls.getNpcStats(o.ptr()).getBounty();
};
player["setCrimeLevel"] = [](const Object& o, int amount) {
verifyPlayer(o);
if (!dynamic_cast<const GObject*>(&o))
throw std::runtime_error("Only global scripts can change crime level");
const MWWorld::Class& cls = o.ptr().getClass();
cls.getNpcStats(o.ptr()).setBounty(amount);
if (amount == 0)
MWBase::Environment::get().getWorld()->getPlayer().recordCrimeId();
};
player["isCharGenFinished"] = [](const Object&) -> bool {
return MWBase::Environment::get().getWorld()->getGlobalFloat(MWWorld::Globals::sCharGenState) == -1;
};

@ -1123,6 +1123,12 @@
-- @param openmw.core#GameObject player
-- @return #number
---
-- Sets the bounty or crime level of the player, may only be used in global scripts
-- @function [parent=#Player] setCrimeLevel
-- @param openmw.core#GameObject player
-- @param #number crimeLevel The requested crime level
---
-- Whether the character generation for this player is finished.
-- @function [parent=#Player] isCharGenFinished

Loading…
Cancel
Save