dfhack/scripts/remove-stress.lua

42 lines
1.0 KiB
Lua

-- Sets stress to negative one million
--By Putnam; http://www.bay12forums.com/smf/index.php?topic=139553.msg5820486#msg5820486
--[[=begin
remove-stress
=============
Sets stress to -1,000,000; the normal range is 0 to 500,000 with very stable or
very stressed dwarves taking on negative or greater values respectively.
Applies to the selected unit, or use ``remove-stress -all`` to apply to all units.
=end]]
local utils = require 'utils'
validArgs = validArgs or utils.invert({
'help',
'all'
})
local args = utils.processArgs({...}, validArgs)
if args.help then
print([[
remove-stress [-all]
sets the stress level of every unit to -1000000, or just the selected unit if the '-all' argument is not given
]])
return
end
if args.all then
for k,v in ipairs(df.global.world.units.active) do
v.status.current_soul.personality.stress_level=-1000000
end
else
local unit = dfhack.gui.getSelectedUnit()
if unit then
unit.status.current_soul.personality.stress_level=-1000000
else
error 'Invalid usage: No unit selected and -all argument not given.'
end
end