@@ -123,7 +123,8 @@ namespace MWLua
123123
124124 SelfObject* obj = mObject .asSelfObject ();
125125 addStatUpdateAction (context.mLuaManager , *obj);
126- obj->mStatsCache [SelfObject::CachedStat{ &setNpcValue, attributeId, " skillIncreasesForAttribute" }] = value;
126+ obj->mStatsCache [SelfObject::CachedStat{ &setNpcValue, attributeId, " skillIncreasesForAttribute" }]
127+ = sol::main_object (value);
127128 }
128129 };
129130
@@ -159,7 +160,7 @@ namespace MWLua
159160 SelfObject* obj = mObject .asSelfObject ();
160161 addStatUpdateAction (context.mLuaManager , *obj);
161162 obj->mStatsCache [SelfObject::CachedStat{ &setNpcValue, specialization, " skillIncreasesForSpecialization" }]
162- = value;
163+ = sol::main_object ( value) ;
163164 }
164165 };
165166
@@ -183,7 +184,8 @@ namespace MWLua
183184 {
184185 SelfObject* obj = mObject .asSelfObject ();
185186 addStatUpdateAction (context.mLuaManager , *obj);
186- obj->mStatsCache [SelfObject::CachedStat{ &setCreatureValue, std::monostate{}, " current" }] = value;
187+ obj->mStatsCache [SelfObject::CachedStat{ &setCreatureValue, std::monostate{}, " current" }]
188+ = sol::main_object (value);
187189 }
188190
189191 sol::object getProgress (const Context& context) const
@@ -204,7 +206,8 @@ namespace MWLua
204206
205207 SelfObject* obj = mObject .asSelfObject ();
206208 addStatUpdateAction (context.mLuaManager , *obj);
207- obj->mStatsCache [SelfObject::CachedStat{ &setNpcValue, std::monostate{}, " progress" }] = value;
209+ obj->mStatsCache [SelfObject::CachedStat{ &setNpcValue, std::monostate{}, " progress" }]
210+ = sol::main_object (value);
208211 }
209212
210213 SkillIncreasesForAttributeStats getSkillIncreasesForAttributeStats () const
@@ -258,7 +261,7 @@ namespace MWLua
258261 {
259262 SelfObject* obj = mObject .asSelfObject ();
260263 addStatUpdateAction (context.mLuaManager , *obj);
261- obj->mStatsCache [SelfObject::CachedStat{ &DynamicStat::setValue, mIndex , prop }] = value;
264+ obj->mStatsCache [SelfObject::CachedStat{ &DynamicStat::setValue, mIndex , prop }] = sol::main_object ( value) ;
262265 }
263266
264267 static void setValue (Index i, std::string_view prop, const MWWorld::Ptr& ptr, const sol::object& value)
@@ -318,7 +321,7 @@ namespace MWLua
318321 {
319322 SelfObject* obj = mObject .asSelfObject ();
320323 addStatUpdateAction (context.mLuaManager , *obj);
321- obj->mStatsCache [SelfObject::CachedStat{ &AttributeStat::setValue, mId , prop }] = value;
324+ obj->mStatsCache [SelfObject::CachedStat{ &AttributeStat::setValue, mId , prop }] = sol::main_object ( value) ;
322325 }
323326
324327 static void setValue (Index i, std::string_view prop, const MWWorld::Ptr& ptr, const sol::object& value)
@@ -402,7 +405,7 @@ namespace MWLua
402405 {
403406 SelfObject* obj = mObject .asSelfObject ();
404407 addStatUpdateAction (context.mLuaManager , *obj);
405- obj->mStatsCache [SelfObject::CachedStat{ &SkillStat::setValue, mId , prop }] = value;
408+ obj->mStatsCache [SelfObject::CachedStat{ &SkillStat::setValue, mId , prop }] = sol::main_object ( value) ;
406409 }
407410
408411 static void setValue (Index index, std::string_view prop, const MWWorld::Ptr& ptr, const sol::object& value)
@@ -465,7 +468,8 @@ namespace MWLua
465468 {
466469 SelfObject* obj = mObject .asSelfObject ();
467470 addStatUpdateAction (context.mLuaManager , *obj);
468- obj->mStatsCache [SelfObject::CachedStat{ &AIStat::setValue, static_cast <int >(mIndex ), prop }] = value;
471+ obj->mStatsCache [SelfObject::CachedStat{ &AIStat::setValue, static_cast <int >(mIndex ), prop }]
472+ = sol::main_object (value);
469473 }
470474
471475 static void setValue (Index i, std::string_view prop, const MWWorld::Ptr& ptr, const sol::object& value)
0 commit comments