|
|
|
@ -2,13 +2,14 @@
|
|
|
|
|
|
|
|
|
|
local utils=require('utils')
|
|
|
|
|
|
|
|
|
|
local function addEmotionToUnit(emotions,thought,emotion,severity,subthought)
|
|
|
|
|
local function addEmotionToUnit(unit,thought,emotion,severity,strength,subthought)
|
|
|
|
|
local emotions=unit.status.current_soul.personality.emotions
|
|
|
|
|
if not (type(emotion)=='number') then emotion=df.emotion_type[emotion] end
|
|
|
|
|
if not (type(thought)=='number') then thought=df.unit_thought_type[thought] end
|
|
|
|
|
emotions:insert('#',{new=df.unit_personality.T_emotions,
|
|
|
|
|
type=emotion,
|
|
|
|
|
unk2=1,
|
|
|
|
|
strength=1,
|
|
|
|
|
strength=strength,
|
|
|
|
|
thought=thought,
|
|
|
|
|
subthought=subthought,
|
|
|
|
|
severity=severity,
|
|
|
|
@ -17,6 +18,10 @@ local function addEmotionToUnit(emotions,thought,emotion,severity,subthought)
|
|
|
|
|
year=df.global.cur_year,
|
|
|
|
|
year_tick=df.global.cur_year_tick
|
|
|
|
|
})
|
|
|
|
|
local divider=df.emotion_type.attrs[emotion].divider
|
|
|
|
|
if divider~=0 then
|
|
|
|
|
unit.status.current_soul.personality.stress_level=unit.status.current_soul.personality.stress_level+math.ceil(severity/df.emotion_type.attrs[emotion].divider)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
validArgs = validArgs or utils.invert({
|
|
|
|
@ -24,6 +29,7 @@ validArgs = validArgs or utils.invert({
|
|
|
|
|
'thought',
|
|
|
|
|
'emotion',
|
|
|
|
|
'severity',
|
|
|
|
|
'strength',
|
|
|
|
|
'gui'
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
@ -49,7 +55,10 @@ if args.gui then
|
|
|
|
|
if eok then
|
|
|
|
|
local sok,severity=script.showInputPrompt('emotions','At what severity?',COLOR_WHITE,'0')
|
|
|
|
|
if sok then
|
|
|
|
|
addEmotionToUnit(unit.status.current_soul.personality.emotions,thought,emotion,severity,0)
|
|
|
|
|
local stok,strength=script.showInputPrompt('emotions','At what strength?',COLOR_WHITE,'0')
|
|
|
|
|
if stok then
|
|
|
|
|
addEmotionToUnit(unit,thought,emotion,severity,strength,0)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
@ -63,5 +72,7 @@ else
|
|
|
|
|
|
|
|
|
|
local subthought = args.subthought or 0
|
|
|
|
|
|
|
|
|
|
addEmotionToUnit(unit.status.current_soul.personality.emotions,thought,emotion,severity,subthought)
|
|
|
|
|
local strength = args.strength or 0
|
|
|
|
|
|
|
|
|
|
addEmotionToUnit(unit,thought,emotion,severity,strength,subthought)
|
|
|
|
|
end
|
|
|
|
|