Files
Bubberstation/code/game/objects/items/tools/wirecutters.dm
SkyratBot 7d1d0e1fad [MIRROR] Refactors most spans into span procs (#6315)
* Refactors most spans into span procs

* AA

* a

* AAAAAAAAAAAAAAAAAAAAAA

* Update species.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-16 00:24:49 +01:00

83 lines
3.0 KiB
Plaintext

/obj/item/wirecutters
name = "wirecutters"
desc = "This cuts wires."
icon = 'icons/obj/tools.dmi'
icon_state = "cutters_map"
inhand_icon_state = "cutters"
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
greyscale_config = /datum/greyscale_config/wirecutters
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_BELT
force = 6
throw_speed = 3
throw_range = 7
w_class = WEIGHT_CLASS_SMALL
custom_materials = list(/datum/material/iron=80)
attack_verb_continuous = list("pinches", "nips")
attack_verb_simple = list("pinch", "nip")
hitsound = 'sound/items/wirecutter.ogg'
usesound = 'sound/items/wirecutter.ogg'
drop_sound = 'sound/items/handling/wirecutter_drop.ogg'
pickup_sound = 'sound/items/handling/wirecutter_pickup.ogg'
tool_behaviour = TOOL_WIRECUTTER
toolspeed = 1
armor = list(MELEE = 0, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, BIO = 0, RAD = 0, FIRE = 50, ACID = 30)
/// If the item should be assigned a random color
var/random_color = TRUE
/// List of possible random colors
var/static/list/wirecutter_colors = list(
"blue" = "#1861d5",
"red" = "#951710",
"pink" = "#d5188d",
"brown" = "#a05212",
"green" = "#0e7f1b",
"cyan" = "#18a2d5",
"yellow" = "#d58c18"
)
/obj/item/wirecutters/Initialize()
if(random_color)
var/our_color = pick(wirecutter_colors)
set_greyscale(colors=list(wirecutter_colors[our_color]))
return ..()
/obj/item/wirecutters/attack(mob/living/carbon/C, mob/user)
if(istype(C) && C.handcuffed && istype(C.handcuffed, /obj/item/restraints/handcuffs/cable))
user.visible_message(span_notice("[user] cuts [C]'s restraints with [src]!"))
qdel(C.handcuffed)
return
else if(istype(C) && C.has_status_effect(STATUS_EFFECT_CHOKINGSTRAND))
user.visible_message(span_notice("[user] attempts to cut the durathread strand from around [C]'s neck."))
if(do_after(user, 1.5 SECONDS, C))
user.visible_message(span_notice("[user] succesfully cuts the durathread strand from around [C]'s neck."))
C.remove_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
playsound(loc, usesound, 50, TRUE, -1)
return
else
..()
/obj/item/wirecutters/suicide_act(mob/user)
user.visible_message(span_suicide("[user] is cutting at [user.p_their()] arteries with [src]! It looks like [user.p_theyre()] trying to commit suicide!"))
playsound(loc, usesound, 50, TRUE, -1)
return (BRUTELOSS)
/obj/item/wirecutters/abductor//SKYRAT EDIT - ICON OVERRIDEN BY AESTHETICS - SEE MODULE
name = "alien wirecutters"
desc = "Extremely sharp wirecutters, made out of a silvery-green metal."
icon = 'icons/obj/abductor.dmi'
icon_state = "cutters"
toolspeed = 0.1
random_color = FALSE
/obj/item/wirecutters/cyborg//SKYRAT EDIT - ICON OVERRIDEN BY AESTHETICS - SEE MODULE
name = "powered wirecutters"
desc = "Cuts wires with the power of ELECTRICITY. Faster than normal wirecutters."
icon = 'icons/obj/items_cyborg.dmi'
icon_state = "wirecutters_cyborg"
worn_icon_state = "cutters"
toolspeed = 0.5
random_color = FALSE