/datum/buildmode_mode/varedit key = "edit" // Varedit mode var/varholder = null var/valueholder = null /datum/buildmode_mode/varedit/Destroy() varholder = null valueholder = null return ..() /datum/buildmode_mode/varedit/show_help(client/c) to_chat(c, "***********************************************************") to_chat(c, "Right Mouse Button on buildmode button = Select var(type) & value") to_chat(c, "Left Mouse Button on turf/obj/mob = Set var(type) & value") to_chat(c, "Right Mouse Button on turf/obj/mob = Reset var's value") to_chat(c, "***********************************************************") /datum/buildmode_mode/varedit/Reset() . = ..() varholder = null valueholder = null /datum/buildmode_mode/varedit/change_settings(client/c) varholder = input(c, "Enter variable name:" ,"Name", "name") if(!vv_varname_lockcheck(varholder)) return var/temp_value = c.vv_get_value() if(isnull(temp_value["class"])) Reset() to_chat(c, "Variable unset.") return valueholder = temp_value["value"] /datum/buildmode_mode/varedit/handle_click(client/c, params, obj/object) var/list/pa = params2list(params) var/left_click = pa.Find("left") var/right_click = pa.Find("right") if(isnull(varholder)) to_chat(c, "Choose a variable to modify first.") return if(left_click) if(object.vars.Find(varholder)) if(object.vv_edit_var(varholder, valueholder) == FALSE) to_chat(c, "Your edit was rejected by the object.") return log_admin("Build Mode: [key_name(c)] modified [object.name]'s [varholder] to [valueholder]") else to_chat(c, "[initial(object.name)] does not have a var called '[varholder]'") if(right_click) if(object.vars.Find(varholder)) var/reset_value = initial(object.vars[varholder]) if(object.vv_edit_var(varholder, reset_value) == FALSE) to_chat(c, "Your edit was rejected by the object.") return log_admin("Build Mode: [key_name(c)] modified [object.name]'s [varholder] to [reset_value]") else to_chat(c, "[initial(object.name)] does not have a var called '[varholder]'")