mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-27 23:14:18 +01:00
More new sounds and fixes equip sounds (#9464)
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
return
|
||||
if(WT.remove_fuel(0,user))
|
||||
user.visible_message("<b>[user]</b> starts slicing \the [src] apart.", SPAN_NOTICE("You start slicing \the [src] apart."))
|
||||
playsound(src, 'sound/items/Welder.ogg', 100, 1)
|
||||
playsound(src, 'sound/items/welder.ogg', 100, 1)
|
||||
var/slice_time = reinf_material ? 100 : 30
|
||||
if(do_after(user, slice_time, TRUE))
|
||||
user.visible_message("<b>[user]</b> slices \the [src] apart.", SPAN_NOTICE("You slice \the [src] apart."))
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
|
||||
/obj/structure/sign/poster/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(W.iswirecutter())
|
||||
playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
if(ruined)
|
||||
to_chat(user, "<span class='notice'>You remove the remnants of the poster.</span>")
|
||||
qdel(src)
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
var/obj/item/weldingtool/WT = W
|
||||
if(WT.remove_fuel(0, user))
|
||||
damage = 15
|
||||
playsound(loc, 'sound/items/Welder.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/welder.ogg', 100, 1)
|
||||
|
||||
health -= damage
|
||||
healthcheck()
|
||||
@@ -320,4 +320,4 @@
|
||||
src.visible_message(SPAN_WARNING("\The [src] splits open."))
|
||||
for(var/atom/movable/A in contents)
|
||||
A.forceMove(src.loc)
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
var/health
|
||||
var/burn_point
|
||||
var/burning
|
||||
var/hitsound
|
||||
var/hitsound = "swing_hit" //generic hit sound.
|
||||
var/storage_cost
|
||||
var/slot_flags = 0 //This is used to determine on which slots an item can fit.
|
||||
var/no_attack_log = 0 //If it's an item we don't want to log attack_logs with, set this to 1
|
||||
@@ -51,7 +51,7 @@
|
||||
///Used when thrown into a mob
|
||||
var/mob_throw_hit_sound
|
||||
///Sound used when equipping the item into a valid slot
|
||||
var/equip_sound
|
||||
var/equip_sound = null
|
||||
///Sound uses when picking the item up (into your hands)
|
||||
var/pickup_sound = 'sound/items/pickup/device.ogg'
|
||||
///Sound uses when dropping the item, or when its thrown.
|
||||
@@ -286,8 +286,8 @@
|
||||
..()
|
||||
if(isliving(hit_atom)) //Living mobs handle hit sounds differently.
|
||||
var/volume = get_volume_by_throwforce_and_or_w_class()
|
||||
if (throwforce > 0)
|
||||
if (mob_throw_hit_sound)
|
||||
if(throwforce > 0)
|
||||
if(mob_throw_hit_sound)
|
||||
playsound(hit_atom, mob_throw_hit_sound, volume, TRUE, -1)
|
||||
else if(hitsound)
|
||||
playsound(hit_atom, hitsound, volume, TRUE, -1)
|
||||
@@ -339,13 +339,13 @@
|
||||
equip_slot = slot
|
||||
if(user.client) user.client.screen |= src
|
||||
if(user.pulling == src) user.stop_pulling()
|
||||
if((slot_flags & slot))
|
||||
if(slot == slot_l_hand || slot == slot_r_hand)
|
||||
playsound(src, pickup_sound, PICKUP_SOUND_VOLUME)
|
||||
else if(slot_flags && slot)
|
||||
if(equip_sound)
|
||||
playsound(src, equip_sound, EQUIP_SOUND_VOLUME)
|
||||
else
|
||||
playsound(src, drop_sound, EQUIP_SOUND_VOLUME)
|
||||
else if(slot == slot_l_hand || slot == slot_r_hand)
|
||||
playsound(src, pickup_sound, PICKUP_SOUND_VOLUME)
|
||||
playsound(src, drop_sound, DROP_SOUND_VOLUME)
|
||||
return
|
||||
|
||||
//Defines which slots correspond to which slot flags
|
||||
@@ -836,4 +836,4 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
|
||||
return FALSE
|
||||
|
||||
/obj/item/proc/glasses_examine_atom(var/atom/A, var/user)
|
||||
return
|
||||
return
|
||||
|
||||
@@ -449,7 +449,7 @@
|
||||
"<span class='warning'>[user] begins cutting cable restrains on zipper of [src].</span>",
|
||||
"<span class='notice'>You begin cutting cable restrains on zipper of [src].</span>"
|
||||
)
|
||||
playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
if (!do_after(user, 3 SECONDS, act_target = src, extra_checks = CALLBACK(src, .proc/is_closed)))
|
||||
return
|
||||
zipped = !zipped
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
return
|
||||
else if(W.iswirecutter())
|
||||
to_chat(user, "You cut the tag off the bodybag.")
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
src.name = "body bag"
|
||||
cut_overlays()
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
/obj/item/device/multitool/hacktool/attackby(var/obj/item/W, var/mob/user)
|
||||
if(W.isscrewdriver())
|
||||
in_hack_mode = !in_hack_mode
|
||||
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/screwdriver.ogg', 50, 1)
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -149,4 +149,4 @@
|
||||
/datum/topic_state/default/must_hack/can_use_topic(var/src_object, var/mob/user)
|
||||
if(!hacktool || !hacktool.in_hack_mode || !(src_object in hacktool.known_targets))
|
||||
return STATUS_CLOSE
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
return
|
||||
else
|
||||
user.visible_message("<span class='danger'>[user] hits [src] with [I] but fails to damage it.</span>", "<span class='warning'>You hit [src] with [I], [I.force >= 10 ? "and it almost makes a dent!" : "but it appears to have no visible effect."]</span>")
|
||||
playsound(loc, "sound/weapons/Genhit.ogg", I.force*2.5, 1)
|
||||
playsound(loc, "sound/weapons/genhit.ogg", I.force*2.5, 1)
|
||||
return
|
||||
|
||||
if(invincible)
|
||||
@@ -167,7 +167,7 @@
|
||||
var/obj/item/weldingtool/WT = I
|
||||
if (WT.remove_fuel(2, user))
|
||||
user.visible_message(SPAN_NOTICE("[user] starts welding the metal shell of [src]."), SPAN_NOTICE("You start [hacked ? "repairing" : "welding open"] the metal covering of [src]."))
|
||||
playsound(loc, 'sound/items/Welder.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder.ogg', 50, 1)
|
||||
add_overlay("overlay_welding")
|
||||
if (do_after(user, 25/I.toolspeed))
|
||||
to_chat(user, SPAN_NOTICE("You are able to [hacked ? "repair" : "weld through"] the metal shell of [src]."))
|
||||
@@ -222,7 +222,7 @@
|
||||
if (3)
|
||||
if (I.iswirecutter())
|
||||
to_chat(user, SPAN_NOTICE("You cut the wires connecting the [src]'s magnets to their internal powersupply, [target ? "making the device fall off [target] and rendering it unusable." : "rendering the device unusable."]"))
|
||||
playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
setconstructionstate(4)
|
||||
return
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
to_chat(user, "<span class='warning'>[O] must be safely placed on the ground for modification.</span>")
|
||||
return
|
||||
|
||||
playsound(user.loc, 'sound/items/Screwdriver.ogg', 100, 1)
|
||||
playsound(user.loc, 'sound/items/screwdriver.ogg', 100, 1)
|
||||
|
||||
user.visible_message("<span class='notice'>\The [user] opens \the [src] and modifies \the [O].</span>","<span class='notice'>You open \the [src] and modify \the [O].</span>")
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
/obj/item/device/kit/proc/use(var/amt, var/mob/user)
|
||||
uses -= amt
|
||||
playsound(get_turf(user), 'sound/items/Screwdriver.ogg', 50, 1)
|
||||
playsound(get_turf(user), 'sound/items/screwdriver.ogg', 50, 1)
|
||||
if(uses<1)
|
||||
user.drop_from_inventory(src,get_turf(src))
|
||||
qdel(src)
|
||||
@@ -65,4 +65,4 @@
|
||||
species_restricted = list(H.species.get_bodytype())
|
||||
kit.use(1,user)
|
||||
return 1
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
else if(O.iswirecutter())
|
||||
user.drop_from_inventory(O,get_turf(src))
|
||||
to_chat(user, "<span class='notice'>You detach the wire from the [name].</span>")
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
new /obj/item/stack/cable_coil(user.loc, 5)
|
||||
new /obj/item/stack/material/glass(user.loc)
|
||||
use(1)
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
if(O.iscrowbar())
|
||||
amount--
|
||||
to_chat(user, "<span class='notice'>You pry off the steel sheet from the [name].</span>")
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, O.usesound, 100, 1)
|
||||
new /obj/item/stack/material/glass/wired(user.loc)
|
||||
new /obj/item/stack/material/steel(user.loc)
|
||||
if(amount <= 0)
|
||||
@@ -34,4 +34,4 @@
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 80, 1)
|
||||
new /obj/machinery/floor_light(user.loc)
|
||||
if(amount <= 0)
|
||||
qdel(src)
|
||||
qdel(src)
|
||||
|
||||
@@ -306,8 +306,8 @@
|
||||
icon_state = "katana"
|
||||
item_state = "katana"
|
||||
drop_sound = 'sound/items/drop/gun.ogg'
|
||||
pickup_sound = 'sound/items/pickup/gun.ogg'
|
||||
hitsound = "swing_hit"
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
flags = CONDUCT
|
||||
slot_flags = SLOT_BELT | SLOT_BACK
|
||||
force = 5
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
var/build_type
|
||||
var/build_atom
|
||||
var/build_delay
|
||||
var/last_fail = 0
|
||||
|
||||
/obj/item/rfd/Initialize()
|
||||
. = ..()
|
||||
@@ -60,7 +61,7 @@
|
||||
if(++mode > number_of_modes)
|
||||
mode = RFD_FLOORS_AND_WALL
|
||||
to_chat(user, SPAN_NOTICE("The mode selection dial is now at [modes[mode]]."))
|
||||
playsound(src.loc, 'sound/effects/pop.ogg', 50, 0)
|
||||
playsound(get_turf(src), 'sound/weapons/laser_safetyon.ogg', 50, FALSE)
|
||||
if(prob(20))
|
||||
spark(get_turf(loc), 3, alldirs)
|
||||
|
||||
@@ -73,7 +74,7 @@
|
||||
user.drop_from_inventory(W,src)
|
||||
qdel(W)
|
||||
stored_matter += 10
|
||||
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/weapons/laser_reload1.ogg', 50, FALSE)
|
||||
to_chat(user, SPAN_NOTICE("The RFD now holds [stored_matter]/30 matter-units."))
|
||||
update_icon()
|
||||
return
|
||||
@@ -165,7 +166,10 @@ RFD Construction-Class
|
||||
mode = RFD_FLOORS_AND_WALL
|
||||
if(current_mode)
|
||||
to_chat(user, SPAN_NOTICE("You switch the selection dial to <i>\"[current_mode]\"</i>."))
|
||||
playsound(src.loc, 'sound/effects/pop.ogg', 50, 0)
|
||||
if(mode == 3)
|
||||
playsound(get_turf(src), 'sound/weapons/laser_safetyoff.ogg', 50, FALSE)
|
||||
else
|
||||
playsound(get_turf(src), 'sound/weapons/laser_safetyon.ogg', 50, FALSE)
|
||||
if(prob(20))
|
||||
spark(get_turf(src), 3, alldirs)
|
||||
|
||||
@@ -242,7 +246,7 @@ RFD Construction-Class
|
||||
flick("[icon_state]-empty", src)
|
||||
return FALSE
|
||||
|
||||
playsound(get_turf(src), 'sound/machines/hydraulic_short.ogg', 50, 1)
|
||||
playsound(get_turf(src), 'sound/items/rfd_start.ogg', 50, FALSE)
|
||||
|
||||
working = TRUE
|
||||
user.visible_message(SPAN_NOTICE("[user] holds \the [src] towards \the [A]."), SPAN_NOTICE("You start [deconstruct ? "deconstructing" : "constructing"] \a [build_type]..."))
|
||||
@@ -269,7 +273,7 @@ RFD Construction-Class
|
||||
qdel(A)
|
||||
|
||||
rfd_effect.end_animation()
|
||||
playsound(get_turf(src), 'sound/effects/magnetclamp.ogg', 50, 1)
|
||||
playsound(get_turf(src), 'sound/items/rfd_end.ogg', 50, FALSE)
|
||||
build_cost = null
|
||||
build_delay = null
|
||||
build_type = null
|
||||
@@ -366,14 +370,18 @@ RFD Service-Class
|
||||
return
|
||||
else
|
||||
if(stored_matter <= 0)
|
||||
user << "The \'Low Ammo\' light on the device blinks yellow."
|
||||
flick("[icon_state]-empty", src)
|
||||
if(last_fail <= world.time - 20) //Spam limiter.
|
||||
last_fail = world.time
|
||||
to_chat(user, "The \'Low Ammo\' light on the device blinks yellow.")
|
||||
playsound(get_turf(src), 'sound/items/rfd_empty.ogg', 50, FALSE)
|
||||
flick("[icon_state]-empty", src)
|
||||
return
|
||||
|
||||
if(!istype(A, /obj/structure/table) && !istype(A, /turf/simulated/floor))
|
||||
return
|
||||
|
||||
playsound(src.loc, 'sound/machines/click.ogg', 10, 1)
|
||||
playsound(src.loc, 'sound/items/rfd_dispense.ogg', 20, FALSE)
|
||||
sleep(2)
|
||||
var/used_energy = 0
|
||||
var/obj/product
|
||||
|
||||
@@ -396,6 +404,7 @@ RFD Service-Class
|
||||
|
||||
to_chat(user, "Dispensing [product ? product : "product"]...")
|
||||
product.forceMove(get_turf(A))
|
||||
playsound(src.loc, 'sound/machines/click.ogg' , 10, 1)
|
||||
if(istype(A, /obj/structure/table))
|
||||
var/obj/structure/table/T = A
|
||||
T.auto_align(product, click_parameters)
|
||||
@@ -426,13 +435,19 @@ RFD Mining-Class
|
||||
if(isrobot(user))
|
||||
var/mob/living/silicon/robot/R = user
|
||||
if(R.stat || !R.cell || R.cell.charge <= 500)
|
||||
to_chat(user, SPAN_WARNING("You are unable to produce enough charge to use \the [src]!"))
|
||||
flick("[icon_state]-empty", src)
|
||||
if(last_fail <= world.time - 20) //Spam limiter.
|
||||
last_fail = world.time
|
||||
to_chat(user, SPAN_WARNING("You are unable to produce enough charge to use \the [src]!"))
|
||||
playsound(get_turf(src), 'sound/items/rfd_empty.ogg', 50, FALSE)
|
||||
flick("[icon_state]-empty", src)
|
||||
return
|
||||
else
|
||||
if(stored_matter <= 0)
|
||||
user << "The \'Low Ammo\' light on the device blinks yellow."
|
||||
flick("[icon_state]-empty", src)
|
||||
if(last_fail <= world.time - 20) //Spam limiter.
|
||||
last_fail = world.time
|
||||
to_chat(user, "The \'Low Ammo\' light on the device blinks yellow.")
|
||||
playsound(get_turf(src), 'sound/items/rfd_empty.ogg', 50, FALSE)
|
||||
flick("[icon_state]-empty", src)
|
||||
return
|
||||
|
||||
if(!istype(A, /turf/simulated/floor) && !istype(A, /turf/unsimulated/floor))
|
||||
@@ -490,20 +505,24 @@ RFD Mining-Class
|
||||
return
|
||||
|
||||
if(malftransformermade)
|
||||
to_chat(user, "There is already a transformer machine made!")
|
||||
flick("[icon_state]-empty", src)
|
||||
if(last_fail <= world.time - 20) //Spam limiter.
|
||||
last_fail = world.time
|
||||
to_chat(user, "There is already a transformer machine made!")
|
||||
playsound(get_turf(src), 'sound/items/rfd_empty.ogg', 50, FALSE)
|
||||
flick("[icon_state]-empty", src)
|
||||
return
|
||||
|
||||
playsound(src.loc, 'sound/machines/click.ogg', 10, 1)
|
||||
var/used_energy = 100
|
||||
to_chat(user, "Fabricating machine...")
|
||||
playsound(get_turf(src), 'sound/items/rfd_start.ogg', 50, FALSE)
|
||||
if(do_after(user, 30 SECONDS, act_target = src))
|
||||
var/obj/product = new /obj/machinery/transformer
|
||||
malftransformermade = 1
|
||||
product.forceMove(get_turf(A))
|
||||
stored_matter = 0
|
||||
update_icon()
|
||||
|
||||
playsound(get_turf(src), 'sound/items/rfd_end.ogg', 50, FALSE)
|
||||
if(isrobot(user))
|
||||
var/mob/living/silicon/robot/R = user
|
||||
if(R.cell)
|
||||
@@ -590,15 +609,17 @@ RFD Piping-Class
|
||||
|
||||
if(stored_matter < build_cost)
|
||||
to_chat(user, SPAN_WARNING("The \'Low Ammo\' light on the device blinks yellow."))
|
||||
playsound(get_turf(src), 'sound/items/rfd_empty.ogg', 50, FALSE)
|
||||
flick("[icon_state]-empty", src)
|
||||
return FALSE
|
||||
|
||||
playsound(get_turf(src), 'sound/machines/click.ogg', 50, TRUE)
|
||||
playsound(get_turf(src), 'sound/items/rfd_start.ogg', 50, FALSE)
|
||||
|
||||
working = TRUE
|
||||
user.visible_message(SPAN_NOTICE("[user] holds \the [src] towards \the [T]."), SPAN_NOTICE("You start laying down your pipe..."))
|
||||
|
||||
if((build_delay && !do_after(user, build_delay)) || (!useResource(build_cost, user)))
|
||||
playsound(get_turf(src), 'sound/items/rfd_interrupt.ogg', 50, FALSE)
|
||||
working = FALSE
|
||||
return FALSE
|
||||
|
||||
@@ -611,12 +632,12 @@ RFD Piping-Class
|
||||
pipe_dir = NORTHEAST
|
||||
new /obj/item/pipe(T, selected_pipe, pipe_dir)
|
||||
|
||||
playsound(get_turf(src), 'sound/items/rfd_end.ogg', 50, FALSE)
|
||||
working = FALSE
|
||||
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, TRUE)
|
||||
return TRUE
|
||||
|
||||
/obj/item/rfd/piping/attack_self(mob/user)
|
||||
playsound(get_turf(src), 'sound/effects/pop.ogg', 50, FALSE)
|
||||
playsound(get_turf(src), 'sound/weapons/laser_safetyon.ogg', 50, FALSE)
|
||||
var/list/pipe_selection = list()
|
||||
switch(selected_mode)
|
||||
if(STANDARD_PIPE)
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
if (!cell || !cell.checked_use(power_usage*5*CELLRATE))//Costs a small burst to enter cloak
|
||||
if (owner)
|
||||
to_chat(owner, "The [src] clicks uselessly, it has no power left.")
|
||||
playsound(get_turf(src), 'sound/weapons/empty.ogg', 25, 1)
|
||||
playsound(get_turf(src), 'sound/weapons/click.ogg', 25, 1)
|
||||
return
|
||||
|
||||
START_PROCESSING(SSprocessing, src)
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
slot_flags = SLOT_EARS
|
||||
var/colour = "red"
|
||||
var/open = 0
|
||||
drop_sound = 'sound/items/drop/glass.ogg'
|
||||
pickup_sound = 'sound/items/pickup/glass.ogg'
|
||||
drop_sound = 'sound/items/drop/screwdriver.ogg'
|
||||
pickup_sound = 'sound/items/pickup/screwdriver.ogg'
|
||||
|
||||
/obj/item/lipstick/purple
|
||||
name = "purple lipstick"
|
||||
@@ -102,7 +102,7 @@
|
||||
H.f_style = H.species.default_f_style
|
||||
|
||||
H.update_hair()
|
||||
playsound(H, 'sound/items/welder2.ogg', 20, 1)
|
||||
playsound(H, 'sound/items/welder_pry.ogg', 20, 1)
|
||||
|
||||
|
||||
/obj/item/razor/attack(mob/M, mob/user, var/target_zone)
|
||||
|
||||
@@ -181,7 +181,7 @@
|
||||
update_icon(user)
|
||||
else if(I.iswirecutter())
|
||||
user.visible_message("[user] cuts the [src].", SPAN_NOTICE("You cut the [src]."))
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
new/obj/item/stack/cable_coil(get_turf(src), 15, color)
|
||||
qdel(src)
|
||||
update_icon(user)
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
item_state = "metalbat"
|
||||
throwforce = 7
|
||||
attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked")
|
||||
hitsound = 'sound/weapons/genhit3.ogg'
|
||||
default_material = "wood"
|
||||
force_divisor = 1.1 // 22 when wielded with weight 20 (steel)
|
||||
unwielded_force_divisor = 0.7 // 15 when unwielded based on above.
|
||||
slot_flags = SLOT_BACK
|
||||
equip_sound = null
|
||||
|
||||
//Predefined materials go here.
|
||||
/obj/item/material/twohanded/baseballbat/metal/New(var/newloc)
|
||||
@@ -26,4 +26,4 @@
|
||||
..(newloc, MATERIAL_PLATINUM)
|
||||
|
||||
/obj/item/material/twohanded/baseballbat/diamond/New(var/newloc)
|
||||
..(newloc, MATERIAL_DIAMOND)
|
||||
..(newloc, MATERIAL_DIAMOND)
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
/obj/item/material/kitchen/utensil
|
||||
drop_sound = 'sound/items/drop/knife.ogg'
|
||||
pickup_sound = 'sound/items/pickup/knife.ogg'
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
w_class = 1
|
||||
thrown_force_divisor = 1
|
||||
origin_tech = list(TECH_MATERIAL = 1)
|
||||
@@ -134,8 +135,6 @@
|
||||
default_material = "wood"
|
||||
force_divisor = 0.7 // 10 when wielded with weight 15 (wood)
|
||||
thrown_force_divisor = 1 // as above
|
||||
drop_sound = 'sound/items/drop/wooden.ogg'
|
||||
pickup_sound = 'sound/items/pickup/wooden.ogg'
|
||||
|
||||
/obj/item/material/kitchen/rollingpin/attack(mob/living/M, mob/living/user, var/target_zone)
|
||||
if ((user.is_clumsy()) && prob(50))
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
unbreakable = 1
|
||||
drop_sound = 'sound/items/drop/knife.ogg'
|
||||
pickup_sound = 'sound/items/pickup/knife.ogg'
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
|
||||
/obj/item/material/knife/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob, var/target_zone)
|
||||
if(active == 1)
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
// They are also fragile based on material data and many can break/smash apart.
|
||||
/obj/item/material
|
||||
health = 10
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
gender = NEUTER
|
||||
throw_speed = 3
|
||||
throw_range = 7
|
||||
@@ -11,9 +10,9 @@
|
||||
sharp = 0
|
||||
edge = 0
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
hitsound = "swing_hit"
|
||||
|
||||
var/use_material_name = TRUE // Does the finished item put the material name in front of it?
|
||||
var/use_material_sound = TRUE
|
||||
var/applies_material_colour = 1
|
||||
var/unbreakable
|
||||
var/force_divisor = 0.5
|
||||
@@ -55,6 +54,13 @@
|
||||
else
|
||||
if(use_material_name)
|
||||
name = "[material.display_name] [initial(name)]"
|
||||
if(use_material_sound)
|
||||
if(sharp && !material.weapon_hitsound == 'sound/weapons/metalhit.ogg' || !sharp)
|
||||
// wooden swords don't sound like metal swords.
|
||||
// metalhit check is so swords when metal use their regular slice sfx.
|
||||
hitsound = material.weapon_hitsound
|
||||
drop_sound = material.weapon_drop_sound
|
||||
pickup_sound = material.weapon_pickup_sound
|
||||
health = round(material.integrity/10)
|
||||
if(applies_material_colour)
|
||||
color = material.icon_colour
|
||||
@@ -85,7 +91,7 @@
|
||||
if(istype(loc, /mob/living))
|
||||
var/mob/living/M = loc
|
||||
M.drop_from_inventory(src)
|
||||
playsound(src, "shatter", 70, 1)
|
||||
playsound(src, material.shatter_sound, 70, 1)
|
||||
if(!consumed && drops_debris) material.place_shard(T)
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -17,7 +17,8 @@
|
||||
can_embed = 0
|
||||
var/parry_chance = 40
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = 'sound/items/pickup/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
|
||||
/obj/item/material/sword/handle_shield(mob/user, var/on_back, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
|
||||
var/parry_bonus = 1
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
desc = "A sharp, perfectly weighted piece of metal."
|
||||
icon_state = "star"
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
hitsound = "swing_hit"
|
||||
force_divisor = 0.1 // 6 with hardness 60 (steel)
|
||||
thrown_force_divisor = 0.75 // 15 with weight 20 (steel)
|
||||
throw_speed = 10
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
var/wielded = 0
|
||||
var/force_wielded = 0
|
||||
var/force_unwielded
|
||||
var/wieldsound = null
|
||||
var/unwieldsound = null
|
||||
var/wield_sound = "wield_generic"
|
||||
var/unwield_sound = null
|
||||
var/base_icon
|
||||
var/base_name
|
||||
var/unwielded_force_divisor = 0.25
|
||||
@@ -33,20 +33,25 @@
|
||||
slot_l_hand_str = 'icons/mob/items/weapons/lefthand_twohanded.dmi',
|
||||
slot_r_hand_str = 'icons/mob/items/weapons/righthand_twohanded.dmi'
|
||||
)
|
||||
hitsound = "swing_hit"
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = 'sound/items/pickup/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
|
||||
/obj/item/material/twohanded/proc/wield()
|
||||
wielded = 1
|
||||
force = force_wielded
|
||||
update_icon()
|
||||
if(src.wield_sound)
|
||||
playsound(src.loc, wield_sound, 25, 1)
|
||||
|
||||
/obj/item/material/twohanded/proc/unwield()
|
||||
wielded = 0
|
||||
force = force_unwielded
|
||||
name = "[base_name]"
|
||||
update_icon()
|
||||
|
||||
/obj/item/material/twohanded/proc/wield()
|
||||
wielded = 1
|
||||
force = force_wielded
|
||||
update_icon()
|
||||
if(src.unwield_sound)
|
||||
playsound(src.loc, unwield_sound, 25, 1)
|
||||
|
||||
/obj/item/material/twohanded/update_force()
|
||||
base_name = name
|
||||
@@ -83,7 +88,7 @@
|
||||
/obj/item/material/twohanded/handle_shield(mob/user, var/on_back, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
|
||||
if(wielded && default_parry_check(user, attacker, damage_source) && prob(parry_chance))
|
||||
user.visible_message("<span class='danger'>\The [user] parries [attack_text] with \the [src]!</span>")
|
||||
playsound(user.loc, 'sound/weapons/punchmiss.ogg', 50, 1)
|
||||
playsound(user.loc, "punchmiss", 50, 1)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
@@ -114,8 +119,6 @@
|
||||
if(wielded) //Trying to unwield it
|
||||
unwield()
|
||||
to_chat(user, "<span class='notice'>You are now carrying the [name] with one hand.</span>")
|
||||
if (src.unwieldsound)
|
||||
playsound(src.loc, unwieldsound, 50, 1)
|
||||
|
||||
var/obj/item/material/twohanded/offhand/O = user.get_inactive_hand()
|
||||
if(O && istype(O))
|
||||
@@ -127,9 +130,7 @@
|
||||
to_chat(user, "<span class='warning'>You need your other hand to be empty.</span>")
|
||||
return
|
||||
wield()
|
||||
to_chat(user, "<span class='notice'>You grab the [base_name] with both hands.</span>")
|
||||
if (src.wieldsound)
|
||||
playsound(src.loc, wieldsound, 50, 1)
|
||||
to_chat(user, "<span class='notice'>You grip the [base_name] with both hands.</span>")
|
||||
|
||||
var/obj/item/material/twohanded/offhand/O = new /obj/item/material/twohanded/offhand(user) ////Let's reserve his other hand~
|
||||
O.name = "[base_name] - offhand"
|
||||
@@ -160,6 +161,10 @@
|
||||
icon_state = "offhand"
|
||||
name = "offhand"
|
||||
default_material = "placeholder"
|
||||
drop_sound = null
|
||||
pickup_sound = null
|
||||
equip_sound = null
|
||||
use_material_sound = FALSE
|
||||
|
||||
/obj/item/material/twohanded/offhand/unwield()
|
||||
if (ismob(loc))
|
||||
@@ -196,6 +201,7 @@
|
||||
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
|
||||
applies_material_colour = 0
|
||||
can_embed = 0
|
||||
use_material_sound = FALSE
|
||||
drop_sound = 'sound/items/drop/axe.ogg'
|
||||
pickup_sound = 'sound/items/pickup/axe.ogg'
|
||||
|
||||
@@ -232,11 +238,11 @@
|
||||
thrown_force_divisor = 1.2 // 24 damage for steel (weight 20)
|
||||
edge = 1
|
||||
sharp = 0
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
mob_throw_hit_sound = 'sound/weapons/pierce.ogg'
|
||||
attack_verb = list("attacked", "poked", "jabbed", "torn", "gored")
|
||||
default_material = "glass"
|
||||
var/obj/item/grenade/explosive = null
|
||||
use_material_sound = FALSE
|
||||
|
||||
/obj/item/material/twohanded/spear/Destroy()
|
||||
if(explosive)
|
||||
@@ -338,7 +344,6 @@
|
||||
edge = 1
|
||||
origin_tech = list(TECH_COMBAT = 5)
|
||||
attack_verb = list("chopped", "sliced", "shredded", "slashed", "cut", "ripped")
|
||||
hitsound = "sound/weapons/bladeslice.ogg"
|
||||
can_embed = 0
|
||||
applies_material_colour = 0
|
||||
default_material = "steel"
|
||||
@@ -350,6 +355,7 @@
|
||||
|
||||
var/cutting = 0 //Ignore
|
||||
var/powered = 0 //Ignore
|
||||
use_material_sound = FALSE
|
||||
drop_sound = 'sound/items/drop/axe.ogg'
|
||||
pickup_sound = 'sound/items/pickup/axe.ogg'
|
||||
|
||||
@@ -526,7 +532,6 @@
|
||||
|
||||
AltClick(usr)
|
||||
|
||||
|
||||
/obj/item/material/twohanded/pike
|
||||
icon_state = "pike0"
|
||||
base_icon = "pike"
|
||||
@@ -543,6 +548,7 @@
|
||||
reach = 2
|
||||
applies_material_colour = 0
|
||||
can_embed = 0
|
||||
use_material_sound = FALSE
|
||||
drop_sound = 'sound/items/drop/woodweapon.ogg'
|
||||
pickup_sound = 'sound/items/pickup/woodweapon.ogg'
|
||||
|
||||
|
||||
@@ -324,7 +324,8 @@
|
||||
active_w_class = 3
|
||||
w_class = 3
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = 'sound/items/pickup/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
|
||||
/obj/item/melee/energy/sword/powersword/activate(mob/living/user)
|
||||
..()
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
/obj/item/melee
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
hitsound = "swing_hit"
|
||||
item_icons = list(
|
||||
slot_l_hand_str = 'icons/mob/items/weapons/lefthand_melee.dmi',
|
||||
slot_r_hand_str = 'icons/mob/items/weapons/righthand_melee.dmi'
|
||||
@@ -76,8 +75,6 @@
|
||||
attack_verb = list("smashed", "beaten", "slammed", "smacked", "struck", "battered", "bonked")
|
||||
w_class = 3
|
||||
origin_tech = list(TECH_MATERIAL = 3, TECH_ILLEGAL = 2)
|
||||
hitsound = 'sound/weapons/genhit3.ogg'
|
||||
|
||||
|
||||
/obj/item/melee/hammer/powered
|
||||
name = "powered hammer"
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
|
||||
/obj/item/shield
|
||||
name = "shield"
|
||||
hitsound = "swing_hit"
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
item_icons = list(
|
||||
slot_l_hand_str = 'icons/mob/items/weapons/lefthand_shield.dmi',
|
||||
@@ -79,7 +78,7 @@
|
||||
|
||||
/obj/item/shield/riot/handle_shield(mob/user)
|
||||
. = ..()
|
||||
if(.) playsound(user.loc, 'sound/weapons/Genhit.ogg', 50, 1)
|
||||
if(.) playsound(user.loc, 'sound/weapons/genhit.ogg', 50, 1)
|
||||
|
||||
/obj/item/shield/riot/get_block_chance(mob/user, var/damage, atom/damage_source = null, mob/attacker = null)
|
||||
if(istype(damage_source, /obj/item/projectile))
|
||||
@@ -118,7 +117,7 @@
|
||||
|
||||
/obj/item/shield/buckler/handle_shield(mob/user)
|
||||
. = ..()
|
||||
if(.) playsound(user.loc, 'sound/weapons/Genhit.ogg', 50, 1)
|
||||
if(.) playsound(user.loc, 'sound/weapons/genhit.ogg', 50, 1)
|
||||
|
||||
/obj/item/shield/buckler/get_block_chance(mob/user, var/damage, atom/damage_source = null, mob/attacker = null)
|
||||
if(istype(damage_source, /obj/item/projectile))
|
||||
@@ -308,11 +307,11 @@
|
||||
. = ..()
|
||||
|
||||
if(.)
|
||||
if(.) playsound(user.loc, 'sound/weapons/Genhit.ogg', 50, 1)
|
||||
if(.) playsound(user.loc, 'sound/weapons/genhit.ogg', 50, 1)
|
||||
|
||||
/obj/item/shield/riot/tact/attack_self(mob/living/user)
|
||||
active = !active
|
||||
playsound(src.loc, 'sound/weapons/empty.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/weapons/click.ogg', 50, 1)
|
||||
|
||||
if(active)
|
||||
icon_state = "[initial(icon_state)]_[active]"
|
||||
|
||||
@@ -80,6 +80,9 @@
|
||||
icon_state = "offhand"
|
||||
name = "second hand"
|
||||
use_to_pickup = 0
|
||||
drop_sound = null
|
||||
pickup_sound = null
|
||||
equip_sound = null
|
||||
|
||||
/obj/item/storage/laundry_basket/offhand/dropped(mob/user as mob)
|
||||
user.drop_from_inventory(linked)
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
desc = "You can drill using this item. You dig?"
|
||||
icon_state = "drill"
|
||||
item_state = "drill"
|
||||
hitsound = 'sound/weapons/saw/circsawhit.ogg'
|
||||
hitsound = "drillhit"
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 15000, MATERIAL_GLASS = 10000)
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
H.update_inv_l_hand()
|
||||
H.update_inv_r_hand()
|
||||
|
||||
playsound(src.loc, 'sound/weapons/empty.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/weapons/click.ogg', 50, 1)
|
||||
add_fingerprint(user)
|
||||
|
||||
if(blood_overlay && blood_DNA && (blood_DNA.len >= 1)) //updates blood overlay, if any
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
origin_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1)
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 150)
|
||||
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
||||
usesound = 'sound/items/Ratchet.ogg'
|
||||
usesound = 'sound/items/wrench.ogg'
|
||||
drop_sound = 'sound/items/drop/wrench.ogg'
|
||||
pickup_sound = 'sound/items/pickup/wrench.ogg'
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
w_class = ITEMSIZE_TINY
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 75)
|
||||
attack_verb = list("stabbed")
|
||||
usesound = 'sound/items/Screwdriver.ogg'
|
||||
usesound = 'sound/items/screwdriver.ogg'
|
||||
drop_sound = 'sound/items/drop/screwdriver.ogg'
|
||||
pickup_sound = 'sound/items/pickup/screwdriver.ogg'
|
||||
lock_picking_level = 5
|
||||
@@ -130,6 +130,7 @@
|
||||
attack_verb = list("pinched", "nipped")
|
||||
sharp = TRUE
|
||||
edge = TRUE
|
||||
usesound = 'sound/items/wirecutter.ogg'
|
||||
drop_sound = 'sound/items/drop/wirecutter.ogg'
|
||||
pickup_sound = 'sound/items/pickup/wirecutter.ogg'
|
||||
var/bomb_defusal_chance = 30 // 30% chance to safely defuse a bomb
|
||||
@@ -201,6 +202,7 @@
|
||||
slot_flags = SLOT_BELT
|
||||
drop_sound = 'sound/items/drop/weldingtool.ogg'
|
||||
pickup_sound = 'sound/items/pickup/weldingtool.ogg'
|
||||
usesound = 'sound/items/welder.ogg'
|
||||
var/base_iconstate = "welder"//These are given an _on/_off suffix before being used
|
||||
var/base_itemstate = "welder"
|
||||
|
||||
@@ -385,7 +387,7 @@
|
||||
)
|
||||
affecting.heal_damage(brute = 15, robo_repair = TRUE)
|
||||
user.visible_message(SPAN_WARNING("\The [user] [pick(repair_messages)] on [target]'s [affecting.name] with \the [src]."))
|
||||
playsound(target, 'sound/items/Welder2.ogg', 15)
|
||||
playsound(target, 'sound/items/welder_pry.ogg', 15)
|
||||
repair_organ(user, target, affecting)
|
||||
|
||||
/obj/item/weldingtool/afterattack(obj/O, mob/user, proximity)
|
||||
@@ -481,7 +483,7 @@
|
||||
to_chat(M, "<span class='notice'>You switch the [src] on.</span>")
|
||||
else if(T)
|
||||
T.visible_message("<span class='danger'>\The [src] turns on.</span>")
|
||||
playsound(loc, 'sound/items/WelderActivate.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_activate.ogg', 50, 1)
|
||||
force = 15
|
||||
damtype = BURN
|
||||
w_class = ITEMSIZE_LARGE
|
||||
@@ -498,7 +500,7 @@
|
||||
to_chat(M, "<span class='notice'>You switch \the [src] off.</span>")
|
||||
else if(T)
|
||||
T.visible_message("<span class='warning'>\The [src] turns off.</span>")
|
||||
playsound(loc, 'sound/items/WelderDeactivate.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_deactivate.ogg', 50, 1)
|
||||
force = 3
|
||||
damtype = BRUTE
|
||||
w_class = initial(w_class)
|
||||
@@ -600,7 +602,7 @@
|
||||
w_class = ITEMSIZE_SMALL
|
||||
drop_sound = 'sound/items/drop/crowbar.ogg'
|
||||
pickup_sound = 'sound/items/pickup/crowbar.ogg'
|
||||
usesound = 'sound/items/Crowbar.ogg'
|
||||
usesound = "crowbar"
|
||||
origin_tech = list(TECH_ENGINEERING = 1)
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 50)
|
||||
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
|
||||
|
||||
@@ -385,7 +385,7 @@
|
||||
icon = 'icons/obj/vaurca_items.dmi'
|
||||
icon_state = "gaussrifle"
|
||||
item_state = "gaussrifle"
|
||||
fire_sound = 'sound/effects/Explosion2.ogg'
|
||||
fire_sound = "gauss_fire"
|
||||
fire_sound_text = "a subdued boom"
|
||||
fire_delay = 12
|
||||
slot_flags = SLOT_BACK
|
||||
@@ -420,7 +420,7 @@
|
||||
pump(user)
|
||||
|
||||
/obj/item/gun/launcher/crossbow/vaurca/proc/pump(mob/M as mob)
|
||||
playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1)
|
||||
playsound(M, 'sound/weapons/shotgun_pump.ogg', 60, 1)
|
||||
|
||||
if(bolt)
|
||||
if(tension < max_tension)
|
||||
|
||||
@@ -163,7 +163,8 @@
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
contained_sprite = TRUE
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = 'sound/items/pickup/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
|
||||
/obj/item/sord
|
||||
name = "\improper SORD"
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
|
||||
if(WT.remove_fuel(0, user))
|
||||
damage = 15
|
||||
playsound(loc, 'sound/items/Welder.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/welder.ogg', 100, 1)
|
||||
|
||||
health -= damage
|
||||
healthcheck()
|
||||
@@ -102,4 +102,4 @@
|
||||
health -= 5
|
||||
healthcheck()
|
||||
|
||||
#undef NODERANGE
|
||||
#undef NODERANGE
|
||||
|
||||
@@ -270,7 +270,7 @@
|
||||
"<span class='notice'>You begin cutting [src] apart.</span>",
|
||||
"You hear a welding torch on metal."
|
||||
)
|
||||
playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
if (!do_after(user, 2 SECONDS, act_target = src, extra_checks = CALLBACK(src, .proc/is_open)))
|
||||
return
|
||||
if(!WT.remove_fuel(0,user))
|
||||
@@ -314,7 +314,7 @@
|
||||
"<span class='notice'>You begin welding [src] [welded ? "open" : "shut"].</span>",
|
||||
"You hear a welding torch on metal."
|
||||
)
|
||||
playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
if (!do_after(user, 2/W.toolspeed SECONDS, act_target = src, extra_checks = CALLBACK(src, .proc/is_closed)))
|
||||
return
|
||||
if(!WT.remove_fuel(0,user))
|
||||
@@ -509,4 +509,4 @@
|
||||
/obj/structure/closet/Destroy()
|
||||
if(linked_teleporter)
|
||||
QDEL_NULL(linked_teleporter)
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
"<span class='notice'>You begin cutting [src] apart.</span>",
|
||||
"You hear a welding torch on metal."
|
||||
)
|
||||
playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
if (!do_after(user, 2/W.toolspeed SECONDS, act_target = src, extra_checks = CALLBACK(src, .proc/is_open)))
|
||||
return
|
||||
if(!WT.remove_fuel(0,user))
|
||||
@@ -126,7 +126,7 @@
|
||||
screwed = 0
|
||||
else if(!screwed && wrenched)
|
||||
to_chat(user, "<span class='notice'>You start to screw the locker to the floor...</span>")
|
||||
playsound(src, 'sound/items/Welder.ogg', 80, 1)
|
||||
playsound(src, 'sound/items/welder.ogg', 80, 1)
|
||||
if (do_after(user, 15/W.toolspeed SECONDS, act_target = src))
|
||||
to_chat(user, "<span class='notice'>You screw the locker!</span>")
|
||||
playsound(loc, W.usesound, 50, 1)
|
||||
@@ -179,7 +179,7 @@
|
||||
"<span class='notice'>You begin welding [src] [welded ? "open" : "shut"].</span>",
|
||||
"You hear a welding torch on metal."
|
||||
)
|
||||
playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
if (!do_after(user, 2 SECONDS, act_target = src, extra_checks = CALLBACK(src, .proc/is_closed)))
|
||||
return
|
||||
if(!WT.remove_fuel(0,user))
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
else if(W.iswirecutter())
|
||||
if(rigged)
|
||||
to_chat(user, "<span class='notice'>You cut away the wiring.</span>")
|
||||
playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
rigged = 0
|
||||
return
|
||||
else return attack_hand(user)
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
if(!do_after(user, 30/W.toolspeed))
|
||||
manipulating = FALSE
|
||||
return
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
visible_message(SPAN_NOTICE("[user] cuts down \the [src]."),
|
||||
SPAN_NOTICE("You cut down \the [src]."))
|
||||
if(istype(src, /obj/structure/curtain/open/medical))
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
src.density = 0
|
||||
src.destroyed = 1
|
||||
new /obj/item/material/shard( src.loc )
|
||||
playsound(src, "shatter", 70, 1)
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
update_icon()
|
||||
else
|
||||
playsound(src.loc, 'sound/effects/glass_hit.ogg', 75, 1)
|
||||
|
||||
@@ -175,7 +175,7 @@
|
||||
if(W.iswelder() && ( (istext(glass)) || (glass == 1) || (!anchored) ))
|
||||
var/obj/item/weldingtool/WT = W
|
||||
if (WT.remove_fuel(0, user))
|
||||
playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
if(istext(glass))
|
||||
user.visible_message("[user] welds the [glass] plating off the airlock assembly.", "You start to weld the [glass] plating off the airlock assembly.")
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
@@ -228,7 +228,7 @@
|
||||
to_chat(user, "<span class='notice'>You wire the airlock.</span>")
|
||||
|
||||
else if(W.iswirecutter() && state == 1 )
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
user.visible_message("[user] cuts the wires from the airlock assembly.", "You start to cut the wires from airlock assembly.")
|
||||
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
@@ -240,7 +240,7 @@
|
||||
else if(istype(W, /obj/item/airlock_electronics) && state == 1)
|
||||
var/obj/item/airlock_electronics/EL = W
|
||||
if(!EL.is_installed)
|
||||
playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/screwdriver.ogg', 100, 1)
|
||||
user.visible_message("[user] installs the electronics into the airlock assembly.", "You start to install electronics into the airlock assembly.")
|
||||
EL.is_installed = 1
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
@@ -261,7 +261,7 @@
|
||||
src.state = 1
|
||||
return
|
||||
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, W.usesound, 100, 1)
|
||||
user.visible_message("\The [user] starts removing the electronics from the airlock assembly.", "You start removing the electronics from the airlock assembly.")
|
||||
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
@@ -278,7 +278,7 @@
|
||||
if (S)
|
||||
if (S.get_amount() >= 1)
|
||||
if(material_name == "rglass")
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, "crowbar", 100, 1)
|
||||
user.visible_message("[user] adds [S.name] to the airlock assembly.", "You start to install [S.name] into the airlock assembly.")
|
||||
if(do_after(user, 40) && !glass)
|
||||
if (S.use(1))
|
||||
@@ -290,7 +290,7 @@
|
||||
to_chat(user, "You cannot make an airlock out of that material.")
|
||||
return
|
||||
if(S.get_amount() >= 2)
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, "crowbar", 100, 1)
|
||||
user.visible_message("[user] adds [S.name] to the airlock assembly.", "You start to install [S.name] into the airlock assembly.")
|
||||
if(do_after(user, 40) && !glass)
|
||||
if (S.use(2))
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
shattered = 1
|
||||
unlocked = 1
|
||||
open = 1
|
||||
playsound(user, "shatter", 100, 1)
|
||||
playsound(user, "glass_break", 100, 1)
|
||||
update_icon()
|
||||
|
||||
/obj/structure/fireaxecabinet/update_icon()
|
||||
|
||||
@@ -150,7 +150,7 @@
|
||||
return
|
||||
|
||||
else if(W.iswirecutter() && state == 1)
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
to_chat(user, "<span class='notice'>Now removing support struts...</span>")
|
||||
if(do_after(user,40/W.toolspeed))
|
||||
if(!src) return
|
||||
@@ -159,7 +159,7 @@
|
||||
reset_girder()
|
||||
|
||||
else if(W.iscrowbar() && state == 0 && anchored)
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, W.usesound, 100, 1)
|
||||
to_chat(user, "<span class='notice'>Now dislodging the girder...</span>")
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
if(!src) return
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
/obj/structure/grille/attackby(obj/item/W, mob/user)
|
||||
if(W.iswirecutter())
|
||||
if(!shock(user, 100))
|
||||
playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
new /obj/item/stack/rods(get_turf(src), destroyed ? 1 : 2)
|
||||
qdel(src)
|
||||
else if(istype(W, /obj/item/gun/energy/plasmacutter))
|
||||
@@ -110,7 +110,7 @@
|
||||
qdel(src)
|
||||
else if((W.isscrewdriver()) && (istype(loc, /turf/simulated) || anchored))
|
||||
if(!shock(user, 90))
|
||||
playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1)
|
||||
playsound(loc, 'sound/items/screwdriver.ogg', 100, 1)
|
||||
anchored = !anchored
|
||||
user.visible_message("<span class='notice'>[user] [anchored ? "fastens" : "unfastens"] the grille.</span>", \
|
||||
"<span class='notice'>You have [anchored ? "fastened the grille to" : "unfastened the grill from"] the floor.</span>")
|
||||
|
||||
@@ -144,23 +144,23 @@
|
||||
//This prevents dumb stuff like splashing the cart with the contents of a container, after putting said container into trash
|
||||
|
||||
else if (!has_items && (I.iswrench() || I.iswelder() || istype(I, /obj/item/gun/energy/plasmacutter)))
|
||||
dismantle(user)
|
||||
dismantle(user, I)
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/structure/janitorialcart/proc/dismantle(var/mob/user = null)
|
||||
if (!dismantled)
|
||||
if (has_items)
|
||||
/obj/structure/janitorialcart/proc/dismantle(var/mob/user = null, var/obj/item/I)
|
||||
if(!dismantled)
|
||||
if(has_items)
|
||||
spill()
|
||||
|
||||
if (user)
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
if(user)
|
||||
playsound(src.loc, I.usesound, 50, 1)
|
||||
user.visible_message("[user] starts taking apart the [src]", "You start disasembling the [src]")
|
||||
if (!do_after(user, 30, needhand = 0))
|
||||
return
|
||||
|
||||
new /obj/item/stack/material/steel(src.loc, 15)
|
||||
dismantled = 1
|
||||
dismantled = TRUE
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/janitorialcart/ex_act(severity)
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
var/obj/item/stack/rods/R = C
|
||||
if (R.use(2))
|
||||
to_chat(user, "<span class='notice'>Constructing catwalk ...</span>")
|
||||
playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
|
||||
playsound(src, 'sound/weapons/genhit.ogg', 50, 1)
|
||||
new /obj/structure/lattice/catwalk(src.loc)
|
||||
qdel(src)
|
||||
return
|
||||
@@ -81,7 +81,7 @@
|
||||
var/obj/item/weldingtool/WT = C
|
||||
if (do_after(user, 5/C.toolspeed, act_target = src) && WT.remove_fuel(1, user))
|
||||
to_chat(user, "<span class='notice'>You slice apart [src].</span>")
|
||||
playsound(src, 'sound/items/Welder.ogg', 50, 1)
|
||||
playsound(src, 'sound/items/welder.ogg', 50, 1)
|
||||
var/obj/item/stack/rods/R = new /obj/item/stack/rods(get_turf(src))
|
||||
R.amount = return_amount
|
||||
R.update_icon()
|
||||
@@ -145,7 +145,7 @@
|
||||
var/obj/item/weldingtool/WT = C
|
||||
if(do_after(user, 5/C.toolspeed, act_target = src) && WT.remove_fuel(1, user))
|
||||
to_chat(user, SPAN_NOTICE("You slice apart the [src] leaving nothing useful behind."))
|
||||
playsound(src, 'sound/items/Welder.ogg', 50, 1)
|
||||
playsound(src, 'sound/items/welder.ogg', 50, 1)
|
||||
qdel(src)
|
||||
else
|
||||
..()
|
||||
@@ -160,4 +160,4 @@
|
||||
damaged = TRUE
|
||||
else
|
||||
qdel(src)
|
||||
return
|
||||
return
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
if(shattered) return
|
||||
shattered = 1
|
||||
icon_state = "mirror_broke"
|
||||
playsound(src, "shatter", 70, 1)
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
desc = "Oh no, seven years of bad luck!"
|
||||
|
||||
|
||||
@@ -150,4 +150,4 @@
|
||||
if(!newname || newname == "")
|
||||
newname = user.species.get_random_name()
|
||||
user.fully_replace_character_name(user.real_name,newname)
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
if(!do_after(user, 30/W.toolspeed))
|
||||
manipulating = FALSE
|
||||
return
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 50, 1)
|
||||
visible_message(SPAN_NOTICE("[user] cuts down \the [src]."),
|
||||
SPAN_NOTICE("You cut down \the [src]."))
|
||||
qdel(src)
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
to_chat(user, "\The [src] has no padding to remove.")
|
||||
return
|
||||
to_chat(user, "You remove the padding from \the [src].")
|
||||
playsound(src, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
remove_padding()
|
||||
|
||||
else if(istype(W, /obj/item/grab))
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
to_chat(user, "\The [src] has no padding to remove.")
|
||||
return
|
||||
to_chat(user, "You remove the padding from \the [src].")
|
||||
playsound(src, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
remove_padding()
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -74,7 +74,7 @@ obj/structure/windoor_assembly/Destroy()
|
||||
var/obj/item/weldingtool/WT = W
|
||||
if (WT.remove_fuel(0,user))
|
||||
user.visible_message("[user] dissassembles the windoor assembly.", "You start to dissassemble the windoor assembly.")
|
||||
playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1)
|
||||
playsound(src.loc, 'sound/items/welder_pry.ogg', 50, 1)
|
||||
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
if(!src || !WT.isOn()) return
|
||||
@@ -152,7 +152,7 @@ obj/structure/windoor_assembly/Destroy()
|
||||
|
||||
//Removing wire from the assembly. Step 5 undone.
|
||||
if(W.iswirecutter() && !src.electronics)
|
||||
playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/wirecutter.ogg', 100, 1)
|
||||
user.visible_message("[user] cuts the wires from the airlock assembly.", "You start to cut the wires from airlock assembly.")
|
||||
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
@@ -170,7 +170,7 @@ obj/structure/windoor_assembly/Destroy()
|
||||
else if(istype(W, /obj/item/airlock_electronics) && W:icon_state != "door_electronics_smoked")
|
||||
var/obj/item/airlock_electronics/EL = W
|
||||
if(!EL.is_installed)
|
||||
playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1)
|
||||
playsound(src.loc, 'sound/items/screwdriver.ogg', 100, 1)
|
||||
user.visible_message("[user] installs the electronics into the airlock assembly.", "You start to install electronics into the airlock assembly.")
|
||||
EL.is_installed = 1
|
||||
if(do_after(user, 40))
|
||||
@@ -205,7 +205,7 @@ obj/structure/windoor_assembly/Destroy()
|
||||
to_chat(usr, "<span class='warning'>The assembly is missing electronics.</span>")
|
||||
return
|
||||
usr << browse(null, "window=windoor_access")
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
playsound(src.loc, W.usesound, 100, 1)
|
||||
user.visible_message("[user] pries the windoor into the frame.", "You start prying the windoor into the frame.")
|
||||
|
||||
if(do_after(user, 40/W.toolspeed))
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
add_overlay(img)
|
||||
|
||||
/obj/structure/window/proc/shatter(var/display_message = 1)
|
||||
playsound(src, "shatter", 70, 1)
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
if(display_message)
|
||||
visible_message(SPAN_WARNING("\The [src] shatters!"))
|
||||
if(dir == SOUTHWEST)
|
||||
|
||||
Reference in New Issue
Block a user