diff --git a/library/include/dfhack/modules/Creatures.h b/library/include/dfhack/modules/Creatures.h index 99db5853e..062319f9f 100644 --- a/library/include/dfhack/modules/Creatures.h +++ b/library/include/dfhack/modules/Creatures.h @@ -387,6 +387,7 @@ namespace DFHack bool WriteAttributes(const uint32_t index, const t_creature &creature); bool WriteSex(const uint32_t index, const uint8_t sex); bool WriteTraits(const uint32_t index, const t_soul &soul); + bool WriteMood(const uint32_t index, const uint16_t mood); private: struct Private; diff --git a/library/modules/Creatures.cpp b/library/modules/Creatures.cpp index e1250f01b..ff2fbc6b8 100644 --- a/library/modules/Creatures.cpp +++ b/library/modules/Creatures.cpp @@ -474,6 +474,17 @@ bool Creatures::WriteTraits(const uint32_t index, const t_soul &soul) return true; } +bool Creatures::WriteMood(const uint32_t index, const uint16_t mood) +{ + if(!d->Started) + return false; + + uint32_t temp = d->p_cre->at (index); + Process * p = d->owner; + p->writeWord(temp + d->creatures.mood_offset, mood); + return true; +} + uint32_t Creatures::GetDwarfRaceIndex() { if(!d->Inited) return 0;