mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 05:30:05 +01:00
Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
This commit is contained in:
co-authored by
Aleksej Komarov
parent
39e8bd721f
commit
62676e72a8
@@ -1,135 +1,135 @@
|
||||
/obj/item/crowbar
|
||||
name = "pocket crowbar"
|
||||
desc = "A small crowbar. This handy tool is useful for lots of things, such as prying floor tiles or opening unpowered doors."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "crowbar"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
usesound = 'sound/items/crowbar.ogg'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
custom_materials = list(/datum/material/iron=50)
|
||||
drop_sound = 'sound/items/handling/crowbar_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/crowbar_pickup.ogg'
|
||||
|
||||
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
|
||||
tool_behaviour = TOOL_CROWBAR
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
var/force_opens = FALSE
|
||||
|
||||
/obj/item/crowbar/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is beating [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/weapons/genhit.ogg', 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/crowbar/red
|
||||
icon_state = "crowbar_red"
|
||||
force = 8
|
||||
|
||||
/obj/item/crowbar/abductor
|
||||
name = "alien crowbar"
|
||||
desc = "A hard-light crowbar. It appears to pry by itself, without any effort required."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
usesound = 'sound/weapons/sonic_jackhammer.ogg'
|
||||
icon_state = "crowbar"
|
||||
toolspeed = 0.1
|
||||
|
||||
|
||||
/obj/item/crowbar/large
|
||||
name = "crowbar"
|
||||
desc = "It's a big crowbar. It doesn't fit in your pockets, because it's big."
|
||||
force = 12
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throw_speed = 3
|
||||
throw_range = 3
|
||||
custom_materials = list(/datum/material/iron=70)
|
||||
icon_state = "crowbar_large"
|
||||
inhand_icon_state = "crowbar"
|
||||
toolspeed = 0.7
|
||||
|
||||
/obj/item/crowbar/power
|
||||
name = "jaws of life"
|
||||
desc = "A set of jaws of life, compressed through the magic of science."
|
||||
icon_state = "jaws_pry"
|
||||
inhand_icon_state = "jawsoflife"
|
||||
worn_icon_state = "jawsoflife"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
custom_materials = list(/datum/material/iron=150,/datum/material/silver=50,/datum/material/titanium=25)
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
force = 15
|
||||
toolspeed = 0.7
|
||||
force_opens = TRUE
|
||||
|
||||
/obj/item/crowbar/power/syndicate
|
||||
name = "Syndicate jaws of life"
|
||||
desc = "A rengineered copy of Nanotrasen's standard jaws of life. Can be used to force open airlocks in it's crowbar configuration."
|
||||
icon_state = "jaws_pry_syndie"
|
||||
toolspeed = 0.5
|
||||
force_opens = TRUE
|
||||
|
||||
/obj/item/crowbar/power/examine()
|
||||
. = ..()
|
||||
. += " It's fitted with a [tool_behaviour == TOOL_CROWBAR ? "prying" : "cutting"] head."
|
||||
|
||||
/obj/item/crowbar/power/suicide_act(mob/user)
|
||||
if(tool_behaviour == TOOL_CROWBAR)
|
||||
user.visible_message("<span class='suicide'>[user] is putting [user.p_their()] head in [src], it looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/items/jaws_pry.ogg', 50, TRUE, -1)
|
||||
else
|
||||
user.visible_message("<span class='suicide'>[user] is wrapping \the [src] around [user.p_their()] neck. It looks like [user.p_theyre()] trying to rip [user.p_their()] head off!</span>")
|
||||
playsound(loc, 'sound/items/jaws_cut.ogg', 50, TRUE, -1)
|
||||
if(iscarbon(user))
|
||||
var/mob/living/carbon/C = user
|
||||
var/obj/item/bodypart/BP = C.get_bodypart(BODY_ZONE_HEAD)
|
||||
if(BP)
|
||||
BP.drop_limb()
|
||||
playsound(loc, "desecration", 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/crowbar/power/attack_self(mob/user)
|
||||
playsound(get_turf(user), 'sound/items/change_jaws.ogg', 50, TRUE)
|
||||
if(tool_behaviour == TOOL_CROWBAR)
|
||||
tool_behaviour = TOOL_WIRECUTTER
|
||||
to_chat(user, "<span class='notice'>You attach the cutting jaws to [src].</span>")
|
||||
usesound = 'sound/items/jaws_cut.ogg'
|
||||
update_icon()
|
||||
|
||||
else
|
||||
tool_behaviour = TOOL_CROWBAR
|
||||
to_chat(user, "<span class='notice'>You attach the prying jaws to [src].</span>")
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
update_icon()
|
||||
|
||||
/obj/item/crowbar/power/update_icon()
|
||||
if(tool_behaviour == TOOL_WIRECUTTER)
|
||||
icon_state = "jaws_cutter"
|
||||
else
|
||||
icon_state = "jaws_pry"
|
||||
|
||||
/obj/item/crowbar/power/syndicate/update_icon()
|
||||
if(tool_behaviour == TOOL_WIRECUTTER)
|
||||
icon_state = "jaws_cutter_syndie"
|
||||
else
|
||||
icon_state = "jaws_pry_syndie"
|
||||
|
||||
/obj/item/crowbar/power/attack(mob/living/carbon/C, mob/user)
|
||||
if(istype(C) && C.handcuffed && tool_behaviour == TOOL_WIRECUTTER)
|
||||
user.visible_message("<span class='notice'>[user] cuts [C]'s restraints with [src]!</span>")
|
||||
qdel(C.handcuffed)
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/crowbar/cyborg
|
||||
name = "hydraulic crowbar"
|
||||
desc = "A hydraulic prying tool, simple but powerful."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "crowbar_cyborg"
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
force = 10
|
||||
toolspeed = 0.5
|
||||
/obj/item/crowbar
|
||||
name = "pocket crowbar"
|
||||
desc = "A small crowbar. This handy tool is useful for lots of things, such as prying floor tiles or opening unpowered doors."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "crowbar"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
usesound = 'sound/items/crowbar.ogg'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
custom_materials = list(/datum/material/iron=50)
|
||||
drop_sound = 'sound/items/handling/crowbar_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/crowbar_pickup.ogg'
|
||||
|
||||
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
|
||||
tool_behaviour = TOOL_CROWBAR
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
var/force_opens = FALSE
|
||||
|
||||
/obj/item/crowbar/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is beating [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/weapons/genhit.ogg', 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/crowbar/red
|
||||
icon_state = "crowbar_red"
|
||||
force = 8
|
||||
|
||||
/obj/item/crowbar/abductor
|
||||
name = "alien crowbar"
|
||||
desc = "A hard-light crowbar. It appears to pry by itself, without any effort required."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
usesound = 'sound/weapons/sonic_jackhammer.ogg'
|
||||
icon_state = "crowbar"
|
||||
toolspeed = 0.1
|
||||
|
||||
|
||||
/obj/item/crowbar/large
|
||||
name = "crowbar"
|
||||
desc = "It's a big crowbar. It doesn't fit in your pockets, because it's big."
|
||||
force = 12
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throw_speed = 3
|
||||
throw_range = 3
|
||||
custom_materials = list(/datum/material/iron=70)
|
||||
icon_state = "crowbar_large"
|
||||
inhand_icon_state = "crowbar"
|
||||
toolspeed = 0.7
|
||||
|
||||
/obj/item/crowbar/power
|
||||
name = "jaws of life"
|
||||
desc = "A set of jaws of life, compressed through the magic of science."
|
||||
icon_state = "jaws_pry"
|
||||
inhand_icon_state = "jawsoflife"
|
||||
worn_icon_state = "jawsoflife"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
custom_materials = list(/datum/material/iron=150,/datum/material/silver=50,/datum/material/titanium=25)
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
force = 15
|
||||
toolspeed = 0.7
|
||||
force_opens = TRUE
|
||||
|
||||
/obj/item/crowbar/power/syndicate
|
||||
name = "Syndicate jaws of life"
|
||||
desc = "A rengineered copy of Nanotrasen's standard jaws of life. Can be used to force open airlocks in it's crowbar configuration."
|
||||
icon_state = "jaws_pry_syndie"
|
||||
toolspeed = 0.5
|
||||
force_opens = TRUE
|
||||
|
||||
/obj/item/crowbar/power/examine()
|
||||
. = ..()
|
||||
. += " It's fitted with a [tool_behaviour == TOOL_CROWBAR ? "prying" : "cutting"] head."
|
||||
|
||||
/obj/item/crowbar/power/suicide_act(mob/user)
|
||||
if(tool_behaviour == TOOL_CROWBAR)
|
||||
user.visible_message("<span class='suicide'>[user] is putting [user.p_their()] head in [src], it looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/items/jaws_pry.ogg', 50, TRUE, -1)
|
||||
else
|
||||
user.visible_message("<span class='suicide'>[user] is wrapping \the [src] around [user.p_their()] neck. It looks like [user.p_theyre()] trying to rip [user.p_their()] head off!</span>")
|
||||
playsound(loc, 'sound/items/jaws_cut.ogg', 50, TRUE, -1)
|
||||
if(iscarbon(user))
|
||||
var/mob/living/carbon/C = user
|
||||
var/obj/item/bodypart/BP = C.get_bodypart(BODY_ZONE_HEAD)
|
||||
if(BP)
|
||||
BP.drop_limb()
|
||||
playsound(loc, "desecration", 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/crowbar/power/attack_self(mob/user)
|
||||
playsound(get_turf(user), 'sound/items/change_jaws.ogg', 50, TRUE)
|
||||
if(tool_behaviour == TOOL_CROWBAR)
|
||||
tool_behaviour = TOOL_WIRECUTTER
|
||||
to_chat(user, "<span class='notice'>You attach the cutting jaws to [src].</span>")
|
||||
usesound = 'sound/items/jaws_cut.ogg'
|
||||
update_icon()
|
||||
|
||||
else
|
||||
tool_behaviour = TOOL_CROWBAR
|
||||
to_chat(user, "<span class='notice'>You attach the prying jaws to [src].</span>")
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
update_icon()
|
||||
|
||||
/obj/item/crowbar/power/update_icon()
|
||||
if(tool_behaviour == TOOL_WIRECUTTER)
|
||||
icon_state = "jaws_cutter"
|
||||
else
|
||||
icon_state = "jaws_pry"
|
||||
|
||||
/obj/item/crowbar/power/syndicate/update_icon()
|
||||
if(tool_behaviour == TOOL_WIRECUTTER)
|
||||
icon_state = "jaws_cutter_syndie"
|
||||
else
|
||||
icon_state = "jaws_pry_syndie"
|
||||
|
||||
/obj/item/crowbar/power/attack(mob/living/carbon/C, mob/user)
|
||||
if(istype(C) && C.handcuffed && tool_behaviour == TOOL_WIRECUTTER)
|
||||
user.visible_message("<span class='notice'>[user] cuts [C]'s restraints with [src]!</span>")
|
||||
qdel(C.handcuffed)
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/crowbar/cyborg
|
||||
name = "hydraulic crowbar"
|
||||
desc = "A hydraulic prying tool, simple but powerful."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "crowbar_cyborg"
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
force = 10
|
||||
toolspeed = 0.5
|
||||
|
||||
@@ -1,141 +1,141 @@
|
||||
/obj/item/screwdriver
|
||||
name = "screwdriver"
|
||||
desc = "You can be totally screwy with this."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "screwdriver_map"
|
||||
inhand_icon_state = "screwdriver"
|
||||
worn_icon_state = "screwdriver"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
throwforce = 5
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
custom_materials = list(/datum/material/iron=75)
|
||||
attack_verb = list("stabbed")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
usesound = list('sound/items/screwdriver.ogg', 'sound/items/screwdriver2.ogg')
|
||||
tool_behaviour = TOOL_SCREWDRIVER
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
drop_sound = 'sound/items/handling/screwdriver_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/screwdriver_pickup.ogg'
|
||||
item_flags = EYE_STAB
|
||||
var/random_color = TRUE //if the screwdriver uses random coloring
|
||||
var/static/list/screwdriver_colors = list(
|
||||
"blue" = rgb(24, 97, 213),
|
||||
"red" = rgb(255, 0, 0),
|
||||
"pink" = rgb(213, 24, 141),
|
||||
"brown" = rgb(160, 82, 18),
|
||||
"green" = rgb(14, 127, 27),
|
||||
"cyan" = rgb(24, 162, 213),
|
||||
"yellow" = rgb(255, 165, 0)
|
||||
)
|
||||
|
||||
/obj/item/screwdriver/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is stabbing [src] into [user.p_their()] [pick("temple", "heart")]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
return(BRUTELOSS)
|
||||
|
||||
/obj/item/screwdriver/Initialize()
|
||||
. = ..()
|
||||
if(random_color) //random colors!
|
||||
icon_state = "screwdriver"
|
||||
var/our_color = pick(screwdriver_colors)
|
||||
add_atom_colour(screwdriver_colors[our_color], FIXED_COLOUR_PRIORITY)
|
||||
update_icon()
|
||||
if(prob(75))
|
||||
pixel_y = rand(0, 16)
|
||||
|
||||
/obj/item/screwdriver/update_overlays()
|
||||
. = ..()
|
||||
if(!random_color) //icon override
|
||||
return
|
||||
var/mutable_appearance/base_overlay = mutable_appearance(icon, "screwdriver_screwybits")
|
||||
base_overlay.appearance_flags = RESET_COLOR
|
||||
. += base_overlay
|
||||
|
||||
/obj/item/screwdriver/worn_overlays(isinhands = FALSE, icon_file)
|
||||
. = list()
|
||||
if(isinhands && random_color)
|
||||
var/mutable_appearance/M = mutable_appearance(icon_file, "screwdriver_head")
|
||||
M.appearance_flags = RESET_COLOR
|
||||
. += M
|
||||
|
||||
/obj/item/screwdriver/get_belt_overlay()
|
||||
if(random_color)
|
||||
var/mutable_appearance/body = mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver")
|
||||
var/mutable_appearance/head = mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver_head")
|
||||
body.color = color
|
||||
head.add_overlay(body)
|
||||
return head
|
||||
else
|
||||
return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', icon_state)
|
||||
|
||||
/obj/item/screwdriver/abductor
|
||||
name = "alien screwdriver"
|
||||
desc = "An ultrasonic screwdriver."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "screwdriver_a"
|
||||
inhand_icon_state = "screwdriver_nuke"
|
||||
usesound = 'sound/items/pshoom.ogg'
|
||||
toolspeed = 0.1
|
||||
random_color = FALSE
|
||||
|
||||
/obj/item/screwdriver/abductor/get_belt_overlay()
|
||||
return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver_nuke")
|
||||
|
||||
/obj/item/screwdriver/power
|
||||
name = "hand drill"
|
||||
desc = "A simple powered hand drill."
|
||||
icon_state = "drill_screw"
|
||||
inhand_icon_state = "drill"
|
||||
worn_icon_state = "drill"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
custom_materials = list(/datum/material/iron=150,/datum/material/silver=50,/datum/material/titanium=25) //done for balance reasons, making them high value for research, but harder to get
|
||||
force = 8 //might or might not be too high, subject to change
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
throwforce = 8
|
||||
throw_speed = 2
|
||||
throw_range = 3//it's heavier than a screw driver/wrench, so it does more damage, but can't be thrown as far
|
||||
attack_verb = list("drilled", "screwed", "jabbed","whacked")
|
||||
hitsound = 'sound/items/drill_hit.ogg'
|
||||
usesound = 'sound/items/drill_use.ogg'
|
||||
toolspeed = 0.7
|
||||
random_color = FALSE
|
||||
|
||||
/obj/item/screwdriver/power/examine()
|
||||
. = ..()
|
||||
. += " It's fitted with a [tool_behaviour == TOOL_SCREWDRIVER ? "screw" : "bolt"] bit."
|
||||
|
||||
/obj/item/screwdriver/power/suicide_act(mob/user)
|
||||
if(tool_behaviour == TOOL_SCREWDRIVER)
|
||||
user.visible_message("<span class='suicide'>[user] is putting [src] to [user.p_their()] temple. It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
else
|
||||
user.visible_message("<span class='suicide'>[user] is pressing [src] against [user.p_their()] head! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/items/drill_use.ogg', 50, TRUE, -1)
|
||||
return(BRUTELOSS)
|
||||
|
||||
/obj/item/screwdriver/power/attack_self(mob/user)
|
||||
playsound(get_turf(user), 'sound/items/change_drill.ogg', 50, TRUE)
|
||||
if(tool_behaviour == TOOL_SCREWDRIVER)
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
to_chat(user, "<span class='notice'>You attach the bolt bit to [src].</span>")
|
||||
icon_state = "drill_bolt"
|
||||
else
|
||||
tool_behaviour = TOOL_SCREWDRIVER
|
||||
to_chat(user, "<span class='notice'>You attach the screw bit to [src].</span>")
|
||||
icon_state = "drill_screw"
|
||||
|
||||
/obj/item/screwdriver/cyborg
|
||||
name = "automated screwdriver"
|
||||
desc = "A powerful automated screwdriver, designed to be both precise and quick."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "screwdriver_cyborg"
|
||||
hitsound = 'sound/items/drill_hit.ogg'
|
||||
usesound = 'sound/items/drill_use.ogg'
|
||||
toolspeed = 0.5
|
||||
random_color = FALSE
|
||||
/obj/item/screwdriver
|
||||
name = "screwdriver"
|
||||
desc = "You can be totally screwy with this."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "screwdriver_map"
|
||||
inhand_icon_state = "screwdriver"
|
||||
worn_icon_state = "screwdriver"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
throwforce = 5
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
custom_materials = list(/datum/material/iron=75)
|
||||
attack_verb = list("stabbed")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
usesound = list('sound/items/screwdriver.ogg', 'sound/items/screwdriver2.ogg')
|
||||
tool_behaviour = TOOL_SCREWDRIVER
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
drop_sound = 'sound/items/handling/screwdriver_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/screwdriver_pickup.ogg'
|
||||
item_flags = EYE_STAB
|
||||
var/random_color = TRUE //if the screwdriver uses random coloring
|
||||
var/static/list/screwdriver_colors = list(
|
||||
"blue" = rgb(24, 97, 213),
|
||||
"red" = rgb(255, 0, 0),
|
||||
"pink" = rgb(213, 24, 141),
|
||||
"brown" = rgb(160, 82, 18),
|
||||
"green" = rgb(14, 127, 27),
|
||||
"cyan" = rgb(24, 162, 213),
|
||||
"yellow" = rgb(255, 165, 0)
|
||||
)
|
||||
|
||||
/obj/item/screwdriver/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is stabbing [src] into [user.p_their()] [pick("temple", "heart")]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
return(BRUTELOSS)
|
||||
|
||||
/obj/item/screwdriver/Initialize()
|
||||
. = ..()
|
||||
if(random_color) //random colors!
|
||||
icon_state = "screwdriver"
|
||||
var/our_color = pick(screwdriver_colors)
|
||||
add_atom_colour(screwdriver_colors[our_color], FIXED_COLOUR_PRIORITY)
|
||||
update_icon()
|
||||
if(prob(75))
|
||||
pixel_y = rand(0, 16)
|
||||
|
||||
/obj/item/screwdriver/update_overlays()
|
||||
. = ..()
|
||||
if(!random_color) //icon override
|
||||
return
|
||||
var/mutable_appearance/base_overlay = mutable_appearance(icon, "screwdriver_screwybits")
|
||||
base_overlay.appearance_flags = RESET_COLOR
|
||||
. += base_overlay
|
||||
|
||||
/obj/item/screwdriver/worn_overlays(isinhands = FALSE, icon_file)
|
||||
. = list()
|
||||
if(isinhands && random_color)
|
||||
var/mutable_appearance/M = mutable_appearance(icon_file, "screwdriver_head")
|
||||
M.appearance_flags = RESET_COLOR
|
||||
. += M
|
||||
|
||||
/obj/item/screwdriver/get_belt_overlay()
|
||||
if(random_color)
|
||||
var/mutable_appearance/body = mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver")
|
||||
var/mutable_appearance/head = mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver_head")
|
||||
body.color = color
|
||||
head.add_overlay(body)
|
||||
return head
|
||||
else
|
||||
return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', icon_state)
|
||||
|
||||
/obj/item/screwdriver/abductor
|
||||
name = "alien screwdriver"
|
||||
desc = "An ultrasonic screwdriver."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "screwdriver_a"
|
||||
inhand_icon_state = "screwdriver_nuke"
|
||||
usesound = 'sound/items/pshoom.ogg'
|
||||
toolspeed = 0.1
|
||||
random_color = FALSE
|
||||
|
||||
/obj/item/screwdriver/abductor/get_belt_overlay()
|
||||
return mutable_appearance('icons/obj/clothing/belt_overlays.dmi', "screwdriver_nuke")
|
||||
|
||||
/obj/item/screwdriver/power
|
||||
name = "hand drill"
|
||||
desc = "A simple powered hand drill."
|
||||
icon_state = "drill_screw"
|
||||
inhand_icon_state = "drill"
|
||||
worn_icon_state = "drill"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
custom_materials = list(/datum/material/iron=150,/datum/material/silver=50,/datum/material/titanium=25) //done for balance reasons, making them high value for research, but harder to get
|
||||
force = 8 //might or might not be too high, subject to change
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
throwforce = 8
|
||||
throw_speed = 2
|
||||
throw_range = 3//it's heavier than a screw driver/wrench, so it does more damage, but can't be thrown as far
|
||||
attack_verb = list("drilled", "screwed", "jabbed","whacked")
|
||||
hitsound = 'sound/items/drill_hit.ogg'
|
||||
usesound = 'sound/items/drill_use.ogg'
|
||||
toolspeed = 0.7
|
||||
random_color = FALSE
|
||||
|
||||
/obj/item/screwdriver/power/examine()
|
||||
. = ..()
|
||||
. += " It's fitted with a [tool_behaviour == TOOL_SCREWDRIVER ? "screw" : "bolt"] bit."
|
||||
|
||||
/obj/item/screwdriver/power/suicide_act(mob/user)
|
||||
if(tool_behaviour == TOOL_SCREWDRIVER)
|
||||
user.visible_message("<span class='suicide'>[user] is putting [src] to [user.p_their()] temple. It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
else
|
||||
user.visible_message("<span class='suicide'>[user] is pressing [src] against [user.p_their()] head! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/items/drill_use.ogg', 50, TRUE, -1)
|
||||
return(BRUTELOSS)
|
||||
|
||||
/obj/item/screwdriver/power/attack_self(mob/user)
|
||||
playsound(get_turf(user), 'sound/items/change_drill.ogg', 50, TRUE)
|
||||
if(tool_behaviour == TOOL_SCREWDRIVER)
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
to_chat(user, "<span class='notice'>You attach the bolt bit to [src].</span>")
|
||||
icon_state = "drill_bolt"
|
||||
else
|
||||
tool_behaviour = TOOL_SCREWDRIVER
|
||||
to_chat(user, "<span class='notice'>You attach the screw bit to [src].</span>")
|
||||
icon_state = "drill_screw"
|
||||
|
||||
/obj/item/screwdriver/cyborg
|
||||
name = "automated screwdriver"
|
||||
desc = "A powerful automated screwdriver, designed to be both precise and quick."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "screwdriver_cyborg"
|
||||
hitsound = 'sound/items/drill_hit.ogg'
|
||||
usesound = 'sound/items/drill_use.ogg'
|
||||
toolspeed = 0.5
|
||||
random_color = FALSE
|
||||
|
||||
@@ -1,85 +1,85 @@
|
||||
/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'
|
||||
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 = list("pinched", "nipped")
|
||||
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)
|
||||
var/random_color = TRUE
|
||||
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) //random colors!
|
||||
icon_state = "cutters"
|
||||
var/our_color = pick(wirecutter_colors)
|
||||
add_atom_colour(wirecutter_colors[our_color], FIXED_COLOUR_PRIORITY)
|
||||
update_icon()
|
||||
|
||||
/obj/item/wirecutters/update_overlays()
|
||||
. = ..()
|
||||
if(!random_color) //icon override
|
||||
return
|
||||
var/mutable_appearance/base_overlay = mutable_appearance(icon, "cutters_cutty_thingy")
|
||||
base_overlay.appearance_flags = RESET_COLOR
|
||||
. += base_overlay
|
||||
|
||||
/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 class='notice'>[user] cuts [C]'s restraints with [src]!</span>")
|
||||
qdel(C.handcuffed)
|
||||
return
|
||||
else if(istype(C) && C.has_status_effect(STATUS_EFFECT_CHOKINGSTRAND))
|
||||
to_chat(C, "<span class='notice'>You attempt to remove the durathread strand from around your neck.</span>")
|
||||
if(do_after(user, 15, null, C))
|
||||
to_chat(C, "<span class='notice'>You succesfuly remove the durathread strand.</span>")
|
||||
C.remove_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/wirecutters/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is cutting at [user.p_their()] arteries with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, usesound, 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/wirecutters/abductor
|
||||
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
|
||||
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"
|
||||
toolspeed = 0.5
|
||||
random_color = FALSE
|
||||
/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'
|
||||
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 = list("pinched", "nipped")
|
||||
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)
|
||||
var/random_color = TRUE
|
||||
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) //random colors!
|
||||
icon_state = "cutters"
|
||||
var/our_color = pick(wirecutter_colors)
|
||||
add_atom_colour(wirecutter_colors[our_color], FIXED_COLOUR_PRIORITY)
|
||||
update_icon()
|
||||
|
||||
/obj/item/wirecutters/update_overlays()
|
||||
. = ..()
|
||||
if(!random_color) //icon override
|
||||
return
|
||||
var/mutable_appearance/base_overlay = mutable_appearance(icon, "cutters_cutty_thingy")
|
||||
base_overlay.appearance_flags = RESET_COLOR
|
||||
. += base_overlay
|
||||
|
||||
/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 class='notice'>[user] cuts [C]'s restraints with [src]!</span>")
|
||||
qdel(C.handcuffed)
|
||||
return
|
||||
else if(istype(C) && C.has_status_effect(STATUS_EFFECT_CHOKINGSTRAND))
|
||||
to_chat(C, "<span class='notice'>You attempt to remove the durathread strand from around your neck.</span>")
|
||||
if(do_after(user, 15, null, C))
|
||||
to_chat(C, "<span class='notice'>You succesfuly remove the durathread strand.</span>")
|
||||
C.remove_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/wirecutters/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is cutting at [user.p_their()] arteries with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, usesound, 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/wirecutters/abductor
|
||||
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
|
||||
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"
|
||||
toolspeed = 0.5
|
||||
random_color = FALSE
|
||||
|
||||
@@ -1,119 +1,119 @@
|
||||
/obj/item/wrench
|
||||
name = "wrench"
|
||||
desc = "A wrench with common uses. Can be found in your hand."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "wrench"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
usesound = 'sound/items/ratchet.ogg'
|
||||
custom_materials = list(/datum/material/iron=150)
|
||||
drop_sound = 'sound/items/handling/wrench_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/wrench_pickup.ogg'
|
||||
|
||||
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
|
||||
/obj/item/wrench/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is beating [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/weapons/genhit.ogg', 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/wrench/abductor
|
||||
name = "alien wrench"
|
||||
desc = "A polarized wrench. It causes anything placed between the jaws to turn."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "wrench"
|
||||
usesound = 'sound/effects/empulse.ogg'
|
||||
toolspeed = 0.1
|
||||
|
||||
|
||||
/obj/item/wrench/medical
|
||||
name = "medical wrench"
|
||||
desc = "A medical wrench with common(medical?) uses. Can be found in your hand."
|
||||
icon_state = "wrench_medical"
|
||||
force = 2 //MEDICAL
|
||||
throwforce = 4
|
||||
attack_verb = list("healed", "medicaled", "tapped", "poked", "analyzed") //"cobbyed"
|
||||
///var to hold the name of the person who suicided
|
||||
var/suicider
|
||||
|
||||
/obj/item/wrench/medical/examine(mob/user)
|
||||
. = ..()
|
||||
if(suicider)
|
||||
. += "<span class='notice'>For some reason, it reminds you of [suicider].</span>"
|
||||
|
||||
/obj/item/wrench/medical/suicide_act(mob/living/user)
|
||||
user.visible_message("<span class='suicide'>[user] is praying to the medical wrench to take [user.p_their()] soul. It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.Stun(100, ignore_canstun = TRUE)// Stun stops them from wandering off
|
||||
user.light_color = "#FAE48E"
|
||||
user.set_light(2)
|
||||
user.add_overlay(mutable_appearance('icons/effects/genetics.dmi', "servitude", -MUTATIONS_LAYER))
|
||||
playsound(loc, 'sound/effects/pray.ogg', 50, TRUE, -1)
|
||||
|
||||
// Let the sound effect finish playing
|
||||
add_fingerprint(user)
|
||||
sleep(20)
|
||||
if(!user)
|
||||
return
|
||||
for(var/obj/item/W in user)
|
||||
user.dropItemToGround(W)
|
||||
suicider = user.real_name
|
||||
user.dust()
|
||||
return OXYLOSS
|
||||
|
||||
/obj/item/wrench/cyborg
|
||||
name = "hydraulic wrench"
|
||||
desc = "An advanced robotic wrench, powered by internal hydraulics. Twice as fast as the handheld version."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "wrench_cyborg"
|
||||
toolspeed = 0.5
|
||||
|
||||
/obj/item/wrench/combat
|
||||
name = "combat wrench"
|
||||
desc = "It's like a normal wrench but edgier. Can be found on the battlefield."
|
||||
icon_state = "wrench_combat"
|
||||
inhand_icon_state = "wrench_combat"
|
||||
attack_verb = list("devastated", "brutalized", "committed a war crime against", "obliterated", "humiliated")
|
||||
tool_behaviour = null
|
||||
toolspeed = null
|
||||
var/on = FALSE
|
||||
|
||||
/obj/item/wrench/combat/ComponentInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/update_icon_updates_onmob)
|
||||
|
||||
/obj/item/wrench/combat/attack_self(mob/living/user)
|
||||
if(on)
|
||||
on = FALSE
|
||||
force = initial(force)
|
||||
w_class = initial(w_class)
|
||||
throwforce = initial(throwforce)
|
||||
tool_behaviour = initial(tool_behaviour)
|
||||
toolspeed = initial(toolspeed)
|
||||
playsound(user, 'sound/weapons/saberoff.ogg', 5, TRUE)
|
||||
to_chat(user, "<span class='warning'>[src] can now be kept at bay.</span>")
|
||||
else
|
||||
on = TRUE
|
||||
force = 6
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throwforce = 8
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
toolspeed = 1
|
||||
playsound(user, 'sound/weapons/saberon.ogg', 5, TRUE)
|
||||
to_chat(user, "<span class='warning'>[src] is now active. Woe onto your enemies!</span>")
|
||||
update_icon()
|
||||
|
||||
/obj/item/wrench/combat/update_icon_state()
|
||||
if(on)
|
||||
icon_state = "[initial(icon_state)]_on"
|
||||
inhand_icon_state = "[initial(inhand_icon_state)]1"
|
||||
else
|
||||
icon_state = "[initial(icon_state)]"
|
||||
inhand_icon_state = "[initial(inhand_icon_state)]"
|
||||
/obj/item/wrench
|
||||
name = "wrench"
|
||||
desc = "A wrench with common uses. Can be found in your hand."
|
||||
icon = 'icons/obj/tools.dmi'
|
||||
icon_state = "wrench"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
flags_1 = CONDUCT_1
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
force = 5
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
usesound = 'sound/items/ratchet.ogg'
|
||||
custom_materials = list(/datum/material/iron=150)
|
||||
drop_sound = 'sound/items/handling/wrench_drop.ogg'
|
||||
pickup_sound = 'sound/items/handling/wrench_pickup.ogg'
|
||||
|
||||
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
toolspeed = 1
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
|
||||
|
||||
/obj/item/wrench/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is beating [user.p_them()]self to death with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/weapons/genhit.ogg', 50, TRUE, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/wrench/abductor
|
||||
name = "alien wrench"
|
||||
desc = "A polarized wrench. It causes anything placed between the jaws to turn."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "wrench"
|
||||
usesound = 'sound/effects/empulse.ogg'
|
||||
toolspeed = 0.1
|
||||
|
||||
|
||||
/obj/item/wrench/medical
|
||||
name = "medical wrench"
|
||||
desc = "A medical wrench with common(medical?) uses. Can be found in your hand."
|
||||
icon_state = "wrench_medical"
|
||||
force = 2 //MEDICAL
|
||||
throwforce = 4
|
||||
attack_verb = list("healed", "medicaled", "tapped", "poked", "analyzed") //"cobbyed"
|
||||
///var to hold the name of the person who suicided
|
||||
var/suicider
|
||||
|
||||
/obj/item/wrench/medical/examine(mob/user)
|
||||
. = ..()
|
||||
if(suicider)
|
||||
. += "<span class='notice'>For some reason, it reminds you of [suicider].</span>"
|
||||
|
||||
/obj/item/wrench/medical/suicide_act(mob/living/user)
|
||||
user.visible_message("<span class='suicide'>[user] is praying to the medical wrench to take [user.p_their()] soul. It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.Stun(100, ignore_canstun = TRUE)// Stun stops them from wandering off
|
||||
user.light_color = "#FAE48E"
|
||||
user.set_light(2)
|
||||
user.add_overlay(mutable_appearance('icons/effects/genetics.dmi', "servitude", -MUTATIONS_LAYER))
|
||||
playsound(loc, 'sound/effects/pray.ogg', 50, TRUE, -1)
|
||||
|
||||
// Let the sound effect finish playing
|
||||
add_fingerprint(user)
|
||||
sleep(20)
|
||||
if(!user)
|
||||
return
|
||||
for(var/obj/item/W in user)
|
||||
user.dropItemToGround(W)
|
||||
suicider = user.real_name
|
||||
user.dust()
|
||||
return OXYLOSS
|
||||
|
||||
/obj/item/wrench/cyborg
|
||||
name = "hydraulic wrench"
|
||||
desc = "An advanced robotic wrench, powered by internal hydraulics. Twice as fast as the handheld version."
|
||||
icon = 'icons/obj/items_cyborg.dmi'
|
||||
icon_state = "wrench_cyborg"
|
||||
toolspeed = 0.5
|
||||
|
||||
/obj/item/wrench/combat
|
||||
name = "combat wrench"
|
||||
desc = "It's like a normal wrench but edgier. Can be found on the battlefield."
|
||||
icon_state = "wrench_combat"
|
||||
inhand_icon_state = "wrench_combat"
|
||||
attack_verb = list("devastated", "brutalized", "committed a war crime against", "obliterated", "humiliated")
|
||||
tool_behaviour = null
|
||||
toolspeed = null
|
||||
var/on = FALSE
|
||||
|
||||
/obj/item/wrench/combat/ComponentInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/update_icon_updates_onmob)
|
||||
|
||||
/obj/item/wrench/combat/attack_self(mob/living/user)
|
||||
if(on)
|
||||
on = FALSE
|
||||
force = initial(force)
|
||||
w_class = initial(w_class)
|
||||
throwforce = initial(throwforce)
|
||||
tool_behaviour = initial(tool_behaviour)
|
||||
toolspeed = initial(toolspeed)
|
||||
playsound(user, 'sound/weapons/saberoff.ogg', 5, TRUE)
|
||||
to_chat(user, "<span class='warning'>[src] can now be kept at bay.</span>")
|
||||
else
|
||||
on = TRUE
|
||||
force = 6
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throwforce = 8
|
||||
tool_behaviour = TOOL_WRENCH
|
||||
toolspeed = 1
|
||||
playsound(user, 'sound/weapons/saberon.ogg', 5, TRUE)
|
||||
to_chat(user, "<span class='warning'>[src] is now active. Woe onto your enemies!</span>")
|
||||
update_icon()
|
||||
|
||||
/obj/item/wrench/combat/update_icon_state()
|
||||
if(on)
|
||||
icon_state = "[initial(icon_state)]_on"
|
||||
inhand_icon_state = "[initial(inhand_icon_state)]1"
|
||||
else
|
||||
icon_state = "[initial(icon_state)]"
|
||||
inhand_icon_state = "[initial(inhand_icon_state)]"
|
||||
|
||||
Reference in New Issue
Block a user