Files
CHOMPStation2/modular_chomp/code/game/objects/items.dm
CHOMPStation2StaffMirrorBot 2c9453b5c3 [MIRROR] var/global/list -> GLOB. conversion (#11193)
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-07-16 00:24:42 +02:00

37 lines
1.5 KiB
Plaintext

/obj/item
var/user_vars_to_edit //fun times :3 - pretty much just grabbed from tg immabehonest - list(variable_name = variable_value) eg list("name" = "Wizardly Wizard", "real_name" = "Wizardly Wizard")
var/user_vars_remembered //not needed for manual editing, just stores the original vars from the above list to make sure they go back to normal later
/obj/item/Destroy(force, ...)
user_vars_remembered = null
return ..()
/obj/item/dropped(mob/living/user)
. = ..()
if (!istype(user))
return
if(LAZYLEN(user_vars_remembered))
for(var/variable in user_vars_remembered)
if(variable in user.vars)
if(user.vars[variable] == user_vars_to_edit[variable])
user.vars[variable] = user_vars_remembered[variable]
user_vars_remembered = initial(user_vars_remembered)
/obj/item/equipped(mob/living/user, slot_equipped)
. = ..()
if (!istype(user))
return
if(("[slot_equipped]" in slot_flags_enumeration) && (slot_flags & slot_flags_enumeration["[slot_equipped]"]))
if (LAZYLEN(user_vars_to_edit))
for(var/variable in user_vars_to_edit)
if(variable in user.vars)
LAZYSET(user_vars_remembered, variable, user.vars[variable])
user.vv_edit_var(variable, user_vars_to_edit[variable])
else
if(LAZYLEN(user_vars_remembered))
for(var/variable in user_vars_remembered)
if(variable in user.vars)
if(user.vars[variable] == user_vars_to_edit[variable])
user.vars[variable] = user_vars_remembered[variable]
user_vars_remembered = initial(user_vars_remembered)