diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 9551b57ebde..d957cfe5431 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -1857,3 +1857,14 @@ return bait.reagents?.has_reagent(special_identifier[FISH_BAIT_VALUE], special_identifier[FISH_BAIT_AMOUNT], check_subtypes = TRUE) else CRASH("Unknown bait identifier in fish favourite/disliked list") + +/obj/item/vv_get_header() + . = ..() + . += {" +
+ DAMTYPE: [uppertext(damtype)] + FORCE: [force] + WOUND: [wound_bonus] + BARE WOUND: [bare_wound_bonus] + + "} diff --git a/code/modules/admin/view_variables/topic.dm b/code/modules/admin/view_variables/topic.dm index 75ed4aab4a5..4fde1e30d1a 100644 --- a/code/modules/admin/view_variables/topic.dm +++ b/code/modules/admin/view_variables/topic.dm @@ -113,10 +113,51 @@ admin_ticket_log(L, "[log_msg]") vv_update_display(L, Text, "[newamt]") + else if(href_list["item_to_tweak"] && href_list["var_tweak"]) + if(!check_rights(NONE)) + return + + var/obj/item/editing = locate(href_list["item_to_tweak"]) + if(!istype(editing) || QDELING(editing)) + return + + var/existing_val = -1 + switch(href_list["var_tweak"]) + if("damtype") + existing_val = editing.damtype + if("force") + existing_val = editing.force + if("wound") + existing_val = editing.wound_bonus + if("bare wound") + existing_val = editing.bare_wound_bonus + else + CRASH("Invalid var_tweak passed to item vv set var: [href_list["var_tweak"]]") + + var/new_val + if(href_list["var_tweak"] == "damtype") + new_val = input("Enter the new damage type for [editing]","Set Damtype", existing_val) in list(BRUTE, BURN, TOX, OXY, STAMINA, BRAIN) + else + new_val = input("Enter the new value for [editing]'s [href_list["var_tweak"]]","Set [href_list["var_tweak"]]", existing_val) as num|null + if(isnull(new_val) || new_val == existing_val || QDELETED(editing) || !check_rights(NONE)) + return + + switch(href_list["var_tweak"]) + if("damtype") + editing.damtype = new_val + if("force") + editing.force = new_val + if("wound") + editing.wound_bonus = new_val + if("bare wound") + editing.bare_wound_bonus = new_val + + message_admins("[key_name(usr)] set [editing]'s [href_list["var_tweak"]] to [new_val] (was [existing_val])") + log_admin("[key_name(usr)] set [editing]'s [href_list["var_tweak"]] to [new_val] (was [existing_val])") + vv_update_display(editing, href_list["var_tweak"], istext(new_val) ? uppertext(new_val) : new_val) //Finally, refresh if something modified the list. if(href_list["datumrefresh"]) var/datum/DAT = locate(href_list["datumrefresh"]) if(isdatum(DAT) || istype(DAT, /client) || islist(DAT)) debug_variables(DAT) -