/atom/vv_edit_var(var_name, var_value) . = ..() switch(var_name) if("light_power", "light_range", "light_color") update_light() if("color") add_atom_colour(color, ADMIN_COLOUR_PRIORITY) /atom/vv_get_dropdown() . = ..() VV_DROPDOWN_OPTION(VV_HK_MANIPULATE_COLOR_MATRIX, "Manipulate Colour Matrix") var/turf/curturf = get_turf(src) if(curturf) . += "" VV_DROPDOWN_OPTION(VV_HK_ADDREAGENT, "Add reagent") VV_DROPDOWN_OPTION(VV_HK_EDITREAGENTS, "Edit reagents") VV_DROPDOWN_OPTION(VV_HK_EXPLODE, "Trigger explosion") VV_DROPDOWN_OPTION(VV_HK_EMP, "Trigger EM pulse") if(istype(ai_controller)) VV_DROPDOWN_OPTION(VV_HK_DEBUG_AI_CONTROLLER, "Debug AI Controller") /atom/proc/vv_modify_name_link() return "byond://?_src_=vars;datumedit=[UID()];varnameedit=name" /atom/vv_get_header() . = ..() . += "[src]" if(dir) . += "
<< [dir2text(dir)] >>" /atom/vv_do_topic(list/href_list) . = ..() if(!.) return if(href_list["rotatedatum"]) if(!check_rights(R_DEBUG|R_ADMIN)) return switch(href_list["rotatedir"]) if("right") dir = turn(dir, -45) if("left") dir = turn(dir, 45) message_admins("[key_name_admin(usr)] has rotated \the [src]") log_admin("[key_name(usr)] has rotated \the [src]") href_list["datumrefresh"] = UID() if(href_list[VV_HK_EXPLODE]) SSuser_verbs.invoke_verb(usr.client, /datum/user_verb/admin_explosion, src) href_list["datumrefresh"] = UID() if(href_list[VV_HK_EMP]) SSuser_verbs.invoke_verb(usr.client, /datum/user_verb/admin_emp, src) href_list["datumrefresh"] = UID() if(href_list[VV_HK_ADDREAGENT]) /* Made on /TG/, credit to them. */ if(!check_rights(R_DEBUG|R_ADMIN)) return if(!reagents) var/amount = tgui_input_number(usr, "Specify the reagent size of [src]", "Set Reagent Size", 50, 1000000, 1) if(!amount) return create_reagents(amount) var/list/reagent_options = sortAssoc(GLOB.chemical_reagents_list) var/chosen_id = tgui_input_list(usr, "Choose a reagent to add.", "Choose a reagent", reagent_options) if(!chosen_id) return var/amount = tgui_input_number(usr, "Choose the amount to add.", "Choose the amount.", reagents.maximum_volume) if(amount) reagents.add_reagent(chosen_id, amount) log_admin("[key_name(usr)] has added [amount] units of [chosen_id] to [src]") message_admins(SPAN_NOTICE("[key_name(usr)] has added [amount] units of [chosen_id] to [src]")) if(href_list[VV_HK_EDITREAGENTS]) if(!check_rights(R_DEBUG|R_ADMIN)) return usr.client.try_open_reagent_editor(src) if(href_list[VV_HK_MANIPULATE_COLOR_MATRIX]) if(!check_rights(R_DEBUG)) return message_admins("[key_name_admin(usr)] is manipulating the colour matrix for [src]") var/datum/ui_module/colour_matrix_tester/CMT = new(target=src) CMT.ui_interact(usr) if(href_list[VV_HK_DEBUG_AI_CONTROLLER]) if(!check_rights(R_DEBUG|R_DEV_TEAM)) return if(!istype(ai_controller)) to_chat(usr, "Could not find atom [href_list[VV_HK_DEBUG_AI_CONTROLLER]] with AI controller") return var/datum/ui_module/ai_controller_debugger/debugger = new(ai_controller) debugger.ui_interact(usr)