mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-21 20:11:04 +01:00
Refactors sound groups to use decls instead of a massive switch with dozens of global lists. (#9702)
This commit is contained in:
+9
-9
@@ -86,32 +86,32 @@ obj/item/check_airflow_movable(n)
|
||||
|
||||
*/
|
||||
|
||||
atom/movable/proc/airflow_hit(atom/A)
|
||||
/atom/movable/proc/airflow_hit(atom/A)
|
||||
airflow_speed = 0
|
||||
airflow_dest = null
|
||||
|
||||
mob/airflow_hit(atom/A)
|
||||
/mob/airflow_hit(atom/A)
|
||||
for(var/mob/M in hearers(src))
|
||||
M.show_message("<span class='danger'>\The [src] slams into \a [A]!</span>",1,"<span class='danger'>You hear a loud slam!</span>",2)
|
||||
playsound(src.loc, "smash.ogg", 25, 1, -1)
|
||||
playsound(src.loc, 'sound/weapons/smash.ogg', 25, 1, -1)
|
||||
var/weak_amt = istype(A,/obj/item) ? A:w_class : rand(1,5) //Heheheh
|
||||
Weaken(weak_amt)
|
||||
. = ..()
|
||||
|
||||
obj/airflow_hit(atom/A)
|
||||
/obj/airflow_hit(atom/A)
|
||||
for(var/mob/M in hearers(src))
|
||||
M.show_message("<span class='danger'>\The [src] slams into \a [A]!</span>",1,"<span class='danger'>You hear a loud slam!</span>",2)
|
||||
playsound(src.loc, "smash.ogg", 25, 1, -1)
|
||||
playsound(src.loc, 'sound/weapons/smash.ogg', 25, 1, -1)
|
||||
. = ..()
|
||||
|
||||
obj/item/airflow_hit(atom/A)
|
||||
/obj/item/airflow_hit(atom/A)
|
||||
airflow_speed = 0
|
||||
airflow_dest = null
|
||||
|
||||
mob/living/carbon/human/airflow_hit(atom/A)
|
||||
/mob/living/carbon/human/airflow_hit(atom/A)
|
||||
// for(var/mob/M in hearers(src))
|
||||
// M.show_message("<span class='danger'>[src] slams into [A]!</span>",1,"<span class='danger'>You hear a loud slam!</span>",2)
|
||||
playsound(src.loc, "punch", 25, 1, -1)
|
||||
playsound(src.loc, /decl/sound_category/punch_sound, 25, 1, -1)
|
||||
if (prob(33))
|
||||
loc:add_blood(src)
|
||||
bloody_body(src)
|
||||
@@ -133,7 +133,7 @@ mob/living/carbon/human/airflow_hit(atom/A)
|
||||
Stun(round(airflow_speed * vsc.airflow_stun/2))
|
||||
. = ..()
|
||||
|
||||
zone/proc/movables(list/origins)
|
||||
/zone/proc/movables(list/origins)
|
||||
. = list()
|
||||
if (!origins?.len)
|
||||
return
|
||||
|
||||
@@ -149,7 +149,7 @@ var/datum/controller/subsystem/explosives/SSexplosives
|
||||
if (reception == 2 && (M.ear_deaf <= 0 || !M.ear_deaf))//Dont play sounds to deaf people
|
||||
// If inside the blast radius + world.view - 2
|
||||
if(dist <= closedist)
|
||||
M.playsound_simple(epicenter, get_sfx("explosion"), min(100, volume), use_random_freq = TRUE, falloff = 5)
|
||||
M.playsound_simple(epicenter, get_sfx(/decl/sound_category/explosion_sound), min(100, volume), use_random_freq = TRUE, falloff = 5)
|
||||
//You hear a far explosion if you're outside the blast radius. Small bombs shouldn't be heard all over the station.
|
||||
|
||||
else
|
||||
@@ -313,7 +313,7 @@ var/datum/controller/subsystem/explosives/SSexplosives
|
||||
|
||||
var/close_dist = round(power + world.view - 2, 1)
|
||||
|
||||
var/sound/explosion_sound = sound(get_sfx("explosion"))
|
||||
var/sound/explosion_sound = sound(get_sfx(/decl/sound_category/explosion_sound))
|
||||
|
||||
for (var/thing in player_list)
|
||||
var/mob/M = thing
|
||||
|
||||
@@ -487,7 +487,6 @@
|
||||
SearchVar(lava)
|
||||
SearchVar(snow)
|
||||
SearchVar(sand)
|
||||
SearchVar(footstepfx)
|
||||
SearchVar(FALLOFF_SOUNDS)
|
||||
SearchVar(all_antag_types)
|
||||
SearchVar(all_antag_spawnpoints)
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
sharp = TRUE
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
can_embed = FALSE //can't get stuck anymore, because blood magic
|
||||
|
||||
@@ -429,7 +429,7 @@
|
||||
|
||||
/obj/structure/cult/pylon/proc/shatter()
|
||||
visible_message(SPAN_DANGER("The pylon shatters into shards of crystal!"), SPAN_WARNING("You hear a tinkle of crystal shards."))
|
||||
playsound(get_turf(src), "glass_break", 75, 1)
|
||||
playsound(get_turf(src), /decl/sound_category/glass_break_sound, 75, 1)
|
||||
isbroken = TRUE
|
||||
if(pylonmode == PYLON_TURRET)
|
||||
//If the pylon had a soul in it then it plays a creepy evil sound as the soul is released
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
suppressing = !suppressing
|
||||
user.visible_message(SPAN_NOTICE("\The [user] switches [suppressing ? "on" : "off"] \the [src]'s neural suppressor."))
|
||||
playsound(loc, "switchsounds", 50, 1)
|
||||
playsound(loc, /decl/sound_category/switch_sound, 50, 1)
|
||||
|
||||
/obj/machinery/optable/CanPass(atom/movable/mover, turf/target, height = 0, air_group = 0)
|
||||
if(air_group || (height == 0))
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
active_power_usage = 1500 //For heating/cooling rooms. 1000 joules equates to about 1 degree every 2 seconds for a single tile of air.
|
||||
power_channel = ENVIRON
|
||||
req_one_access = list(access_atmospherics, access_engine_equip)
|
||||
clicksound = "button"
|
||||
clicksound = /decl/sound_category/button_sound
|
||||
clickvol = 30
|
||||
|
||||
var/alarm_id = null
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
/obj/machinery/anti_bluespace/emag_act()
|
||||
spark(src, 3)
|
||||
playsound(src, "sparks", 50, 1)
|
||||
playsound(src, /decl/sound_category/spark_sound, 50, 1)
|
||||
emp_act(1)
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
use_power = TRUE
|
||||
idle_power_usage = 10
|
||||
active_power_usage = 2000
|
||||
clicksound = "keyboard"
|
||||
clicksound = /decl/sound_category/keyboard_sound
|
||||
clickvol = 30
|
||||
|
||||
var/print_loc
|
||||
|
||||
@@ -578,7 +578,7 @@
|
||||
else
|
||||
points -= totake
|
||||
use_power(totake * 0.25)
|
||||
playsound(src.loc, "switchsounds", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/switch_sound, 50, 1)
|
||||
var/new_object = recipie_data["object"]
|
||||
if(ispath(new_object, /obj/item/reagent_containers/pill))
|
||||
if(!made_container)
|
||||
|
||||
@@ -262,7 +262,7 @@
|
||||
|
||||
//sparks
|
||||
spark(loc, 5)
|
||||
playsound(loc, "sparks", 50, 1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
|
||||
/obj/machinery/camera/proc/set_status(var/newstatus)
|
||||
if (status != newstatus)
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
use_power = 1
|
||||
idle_power_usage = 300
|
||||
active_power_usage = 300
|
||||
clicksound = "keyboard"
|
||||
clicksound = /decl/sound_category/keyboard_sound
|
||||
|
||||
var/circuit = null //The path to the circuit board type. If circuit==null, the computer can't be disassembled.
|
||||
var/processing = 0
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
if(!emagged)
|
||||
emmaged = TRUE
|
||||
spark(src, 3)
|
||||
playsound(src, "sparks", 50, 1)
|
||||
playsound(src, /decl/sound_category/spark_sound, 50, 1)
|
||||
return TRUE
|
||||
|
||||
/obj/machinery/computer/slot_machine/ui_interact(mob/living/user)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
if(req_access.len || req_one_access.len)
|
||||
req_access = list()
|
||||
req_one_access = list()
|
||||
playsound(src.loc, "sparks", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 100, 1)
|
||||
return 1
|
||||
|
||||
/obj/machinery/button/remote/attack_hand(mob/user as mob)
|
||||
|
||||
@@ -867,7 +867,7 @@ About the new airlock wires panel:
|
||||
cutting = TRUE
|
||||
else if(istype(tool,/obj/item/melee/energy/blade) || istype(tool,/obj/item/melee/energy/sword))
|
||||
cut_verb = "slicing"
|
||||
cut_sound = "sparks"
|
||||
cut_sound = /decl/sound_category/spark_sound
|
||||
cut_delay *= 1
|
||||
cutting = TRUE
|
||||
else if(istype(tool,/obj/item/surgery/circular_saw))
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
ae.icon_state = "door_electronics_smoked"
|
||||
operating = 0
|
||||
src.density = 0
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
if(display_message)
|
||||
visible_message("[src] shatters!")
|
||||
qdel(src)
|
||||
@@ -180,7 +180,7 @@
|
||||
if (istype(I, /obj/item/melee/energy/blade))
|
||||
if(emag_act(10, user))
|
||||
spark(src.loc, 5)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
playsound(src.loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
visible_message("<span class='warning'>The glass door was sliced open by [user]!</span>")
|
||||
return 1
|
||||
|
||||
@@ -65,7 +65,7 @@ var/list/floor_light_cache = list()
|
||||
if(user.a_intent == I_HURT && !issmall(user))
|
||||
if(!isnull(damaged) && !(stat & BROKEN))
|
||||
visible_message("<span class='danger'>\The [user] smashes \the [src]!</span>")
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
update_icon()
|
||||
stat |= BROKEN
|
||||
else
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
|
||||
/obj/machinery/gumballmachine/proc/smashgumball()
|
||||
icon_state = "[initialicon]_broken"
|
||||
playsound(get_turf(src), "glass_break", 75, 1)
|
||||
playsound(get_turf(src), /decl/sound_category/glass_break_sound, 75, 1)
|
||||
if(amountleft)
|
||||
var/amountleftinside = amountleft
|
||||
for(var/i = 1;i<=amountleftinside,i++)
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
idle_power_usage = 5
|
||||
active_power_usage = 2000
|
||||
flags = OPENCONTAINER | NOREACT
|
||||
clicksound = "button"
|
||||
clicksound = /decl/sound_category/button_sound
|
||||
clickvol = 30
|
||||
|
||||
var/operating = FALSE // Is it on?
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
to_chat(user, "A light switch. It is [on? "on" : "off"].")
|
||||
|
||||
/obj/machinery/light_switch/attack_hand(mob/user)
|
||||
playsound(src, "switch", 30)
|
||||
playsound(src, /decl/sound_category/switch_sound, 30)
|
||||
on = !on
|
||||
sync_lights()
|
||||
|
||||
|
||||
@@ -396,7 +396,7 @@ Class Procs:
|
||||
return 1
|
||||
|
||||
/obj/machinery/proc/dismantle()
|
||||
playsound(loc, "crowbar", 50, 1)
|
||||
playsound(loc, /decl/sound_category/crowbar_sound, 50, 1)
|
||||
var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(loc)
|
||||
M.set_dir(src.dir)
|
||||
M.state = 3
|
||||
|
||||
@@ -749,7 +749,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
||||
for (var/mob/O in hearers(5, src.loc))
|
||||
O.show_message("[user.name] smashes the [src.name]!" )
|
||||
src.isbroken=1
|
||||
playsound(src.loc, "glass_break", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/glass_break_sound, 100, 1)
|
||||
else
|
||||
for (var/mob/O in hearers(5, src.loc))
|
||||
O.show_message("[user.name] forcefully slams the [src.name] with the [I.name]!" )
|
||||
@@ -918,7 +918,7 @@ obj/item/newspaper/Topic(href, href_list)
|
||||
if(curr_page == 0) //We're at the start, get to the middle
|
||||
src.screen=1
|
||||
src.curr_page++
|
||||
playsound(src.loc, "pageturn", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/page_sound, 50, 1)
|
||||
|
||||
else if(href_list["prev_page"])
|
||||
if(curr_page == 0)
|
||||
@@ -930,7 +930,7 @@ obj/item/newspaper/Topic(href, href_list)
|
||||
if(curr_page == src.pages+1) //we're at the end, let's go back to the middle.
|
||||
src.screen = 1
|
||||
src.curr_page--
|
||||
playsound(src.loc, "pageturn", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/page_sound, 50, 1)
|
||||
|
||||
if (istype(src.loc, /mob))
|
||||
src.attack_self(src.loc)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
var/heating_power = 42000
|
||||
emagged = FALSE
|
||||
has_special_power_checks = TRUE
|
||||
clicksound = "switch"
|
||||
clicksound = /decl/sound_category/switch_sound
|
||||
|
||||
/obj/machinery/space_heater/Initialize()
|
||||
. = ..()
|
||||
@@ -52,7 +52,7 @@
|
||||
emagged = TRUE
|
||||
to_chat(user, SPAN_WARNING("You disable \the [src]'s temperature safety checks!"))
|
||||
spark(src, 3)
|
||||
playsound(src, "sparks", 100, 1)
|
||||
playsound(src, /decl/sound_category/spark_sound, 100, 1)
|
||||
heating_power = 45000 //Overridden safeties make it stronger, and it needs to work more efficiently to make use of big temp ranges
|
||||
return 1
|
||||
else
|
||||
|
||||
@@ -226,7 +226,7 @@
|
||||
protected = 1
|
||||
|
||||
if(!protected)
|
||||
playsound(src.loc, "sparks", 75, 1, -1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 75, 1, -1)
|
||||
to_chat(user, "<font color='red'>You try to touch the controls but you get zapped. There must be a short circuit somewhere.</font>")
|
||||
return*/
|
||||
else //welp, the guy is protected, we can continue
|
||||
@@ -252,7 +252,7 @@
|
||||
protected = 1
|
||||
|
||||
if(!protected)
|
||||
playsound(src.loc, "sparks", 75, 1, -1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 75, 1, -1)
|
||||
to_chat(user, "<font color='red'>You try to touch the controls but you get zapped. There must be a short circuit somewhere.</font>")
|
||||
return*/
|
||||
else
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
layer = 2.9
|
||||
anchored = 1
|
||||
density = 1
|
||||
clicksound = "button"
|
||||
clicksound = /decl/sound_category/button_sound
|
||||
|
||||
var/icon_vend //Icon_state when vending
|
||||
var/deny_time // How long the physical icon state lasts, used cut the deny overlay
|
||||
@@ -105,7 +105,7 @@
|
||||
var/cooling_temperature = T0C + 5 //Best temp for soda.
|
||||
var/heating_temperature = T0C + 57 //Best temp for coffee.
|
||||
|
||||
var/vending_sound = "machines/vending/vending_drop.ogg"
|
||||
var/vending_sound = 'sound/machines/vending/vending_drop.ogg'
|
||||
|
||||
var/global/list/screen_overlays
|
||||
var/exclusive_screen = TRUE // Are we not allowed to show the deny and screen states at the same time?
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
product_ads = "Drink up!;Booze is good for you!;Alcohol is humanity's best friend.;Quite delighted to serve you!;Care for a nice, cold beer?;Nothing cures you like booze!;Have a sip!;Have a drink!;Have a beer!;Beer is good for you!;Only the finest alcohol!;Best quality booze since 2053!;Award-winning wine!;Maximum alcohol!;Man loves beer.;A toast for progress!"
|
||||
req_access = list(access_bar)
|
||||
random_itemcount = 0
|
||||
vending_sound = "machines/vending/vending_cans.ogg"
|
||||
vending_sound = 'sound/machines/vending/vending_cans.ogg'
|
||||
light_color = COLOR_PALE_BLUE_GRAY
|
||||
exclusive_screen = FALSE
|
||||
|
||||
@@ -176,7 +176,7 @@
|
||||
premium = list(
|
||||
/obj/item/reagent_containers/food/drinks/teapot/ = 5
|
||||
)
|
||||
vending_sound = "machines/vending/vending_coffee.ogg"
|
||||
vending_sound = 'sound/machines/vending/vending_coffee.ogg'
|
||||
cooling_temperature = T0C + 57 //Optimal coffee temperature
|
||||
heating_temperature = T0C + 100 //ULTRA HOT COFFEE
|
||||
temperature_setting = -1
|
||||
@@ -289,7 +289,7 @@
|
||||
/obj/item/reagent_containers/food/drinks/cans/beetle_milk = 5
|
||||
)
|
||||
idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan.
|
||||
vending_sound = "machines/vending/vending_cans.ogg"
|
||||
vending_sound = 'sound/machines/vending/vending_cans.ogg'
|
||||
temperature_setting = -1
|
||||
light_color = COLOR_GUNMETAL
|
||||
|
||||
@@ -792,7 +792,7 @@
|
||||
idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan.
|
||||
random_itemcount = 0
|
||||
temperature_setting = -1
|
||||
vending_sound = "machines/vending/vending_cans.ogg"
|
||||
vending_sound = 'sound/machines/vending/vending_cans.ogg'
|
||||
light_color = COLOR_RED
|
||||
|
||||
/obj/machinery/vending/tool
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
icon_state = "wm_10"
|
||||
density = 1
|
||||
anchored = 1.0
|
||||
clicksound = "button"
|
||||
clicksound = /decl/sound_category/button_sound
|
||||
clickvol = 40
|
||||
|
||||
var/state = 1
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
var/health
|
||||
var/burn_point
|
||||
var/burning
|
||||
var/hitsound = "swing_hit" //generic hit sound.
|
||||
var/hitsound = /decl/sound_category/swing_hit_sound//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
|
||||
@@ -53,9 +53,9 @@
|
||||
///Sound used when equipping the item into a valid slot
|
||||
var/equip_sound = null
|
||||
///Sound uses when picking the item up (into your hands)
|
||||
var/pickup_sound = "generic_pickup"
|
||||
var/pickup_sound = /decl/sound_category/generic_pickup_sound
|
||||
///Sound uses when dropping the item, or when its thrown.
|
||||
var/drop_sound = "generic_drop" // drop sound - this is the default
|
||||
var/drop_sound = /decl/sound_category/generic_drop_sound // drop sound - this is the default
|
||||
|
||||
//Item_state definition moved to /obj
|
||||
//var/item_state = null // Used to specify the item state for the on-mob overlays.
|
||||
|
||||
@@ -234,7 +234,7 @@
|
||||
|
||||
/obj/item/device/lightreplacer/emag_act(var/remaining_charges, var/mob/user)
|
||||
emagged = !emagged
|
||||
playsound(src.loc, "sparks", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 100, 1)
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ var/global/list/default_medbay_channels = list(
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 75, MATERIAL_GLASS = 25)
|
||||
var/const/FREQ_LISTENING = TRUE
|
||||
var/list/internal_channels
|
||||
var/clicksound = "button" //played sound on usage
|
||||
var/clicksound = /decl/sound_category/button_sound //played sound on usage
|
||||
var/clickvol = 10 //volume
|
||||
|
||||
|
||||
|
||||
@@ -306,8 +306,8 @@
|
||||
icon_state = "katana"
|
||||
item_state = "katana"
|
||||
drop_sound = 'sound/items/drop/gun.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
flags = CONDUCT
|
||||
slot_flags = SLOT_BELT | SLOT_BACK
|
||||
force = 5
|
||||
|
||||
@@ -6,5 +6,5 @@
|
||||
|
||||
/obj/item/grenade/fake/prime()
|
||||
active = 0
|
||||
playsound(src.loc, get_sfx("explosion"), 50, 1, 30)
|
||||
playsound(src.loc, get_sfx(/decl/sound_category/explosion_sound), 50, 1, 30)
|
||||
icon_state = "frag"
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
can_embed = 0
|
||||
var/parry_chance = 40
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
|
||||
/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
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
var/wielded = 0
|
||||
var/force_wielded = 0
|
||||
var/force_unwielded
|
||||
var/wield_sound = "wield_generic"
|
||||
var/wield_sound = /decl/sound_category/generic_wield_sound
|
||||
var/unwield_sound = null
|
||||
var/base_icon
|
||||
var/base_name
|
||||
@@ -34,8 +34,8 @@
|
||||
slot_r_hand_str = 'icons/mob/items/weapons/righthand_twohanded.dmi'
|
||||
)
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
|
||||
/obj/item/material/twohanded/proc/wield()
|
||||
@@ -88,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, "punchmiss", 50, 1)
|
||||
playsound(user.loc, /decl/sound_category/punchmiss_sound, 50, 1)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
|
||||
@@ -324,8 +324,8 @@
|
||||
active_w_class = 3
|
||||
w_class = 3
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
|
||||
/obj/item/melee/energy/sword/powersword/activate(mob/living/user)
|
||||
..()
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
var/obj/item/melee/energy/blade/blade = W
|
||||
blade.spark_system.queue()
|
||||
playsound(src.loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
if(!locked)
|
||||
..()
|
||||
else
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "It's a small container with dice inside."
|
||||
icon = 'icons/obj/dice.dmi'
|
||||
icon_state = "dicebag"
|
||||
use_sound = "rustle"
|
||||
use_sound = /decl/sound_category/rustle_sound
|
||||
drop_sound = 'sound/items/drop/hat.ogg'
|
||||
pickup_sound = 'sound/items/pickup/hat.ogg'
|
||||
starts_with = list(
|
||||
@@ -29,8 +29,8 @@
|
||||
icon_state = "card_holder_empty"
|
||||
can_hold = list(/obj/item/deck, /obj/item/battle_monsters/deck, /obj/item/hand, /obj/item/pack/, /obj/item/card) //sneaky folks can hide ID and other cards
|
||||
storage_slots = 1 //can hold one deck
|
||||
use_sound = "sound/items/drop/shoes.ogg"
|
||||
drop_sound = "sound/items/drop/hat.ogg"
|
||||
use_sound = 'sound/items/drop/shoes.ogg'
|
||||
drop_sound = 'sound/items/drop/hat.ogg'
|
||||
|
||||
/obj/item/storage/card/update_icon()
|
||||
if(contents.len)
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
var/obj/item/melee/energy/blade/blade = W
|
||||
blade.spark_system.queue()
|
||||
playsound(src.loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
return
|
||||
|
||||
if (W.isscrewdriver())
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
var/allow_quick_empty //Set this variable to allow the object to have the 'empty' verb, which dumps all the contents on the floor.
|
||||
var/allow_quick_gather //Set this variable to allow the object to have the 'toggle mode' verb, which quickly collects all items from a tile.
|
||||
var/collection_mode = 1 //0 = pick one at a time, 1 = pick all on tile
|
||||
var/use_sound = "rustle" //sound played when used. null for no sound.
|
||||
var/use_sound = /decl/sound_category/rustle_sound //sound played when used. null for no sound.
|
||||
var/list/starts_with // for pre-filled items
|
||||
var/empty_delay = 0 SECOND // time it takes to empty bag. this is multiplies by number of objects stored
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
if(bcell && bcell.charge > hitcost)
|
||||
status = !status
|
||||
to_chat(user, "<span class='notice'>[src] is now [status ? "on" : "off"].</span>")
|
||||
playsound(loc, "sparks", 75, 1, -1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 75, 1, -1)
|
||||
update_icon()
|
||||
else
|
||||
status = 0
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
desc = "You can drill using this item. You dig?"
|
||||
icon_state = "drill"
|
||||
item_state = "drill"
|
||||
hitsound = "drillhit"
|
||||
hitsound = /decl/sound_category/drillhit_sound
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 15000, MATERIAL_GLASS = 10000)
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
|
||||
@@ -602,7 +602,7 @@
|
||||
w_class = ITEMSIZE_SMALL
|
||||
drop_sound = 'sound/items/drop/crowbar.ogg'
|
||||
pickup_sound = 'sound/items/pickup/crowbar.ogg'
|
||||
usesound = "crowbar"
|
||||
usesound = /decl/sound_category/crowbar_sound
|
||||
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 = "gauss_fire"
|
||||
fire_sound = /decl/sound_category/gauss_fire_sound
|
||||
fire_sound_text = "a subdued boom"
|
||||
fire_delay = 12
|
||||
slot_flags = SLOT_BACK
|
||||
|
||||
@@ -163,8 +163,8 @@
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
contained_sprite = TRUE
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
equip_sound = "equip_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
equip_sound = /decl/sound_category/sword_equip_sound
|
||||
|
||||
/obj/item/sord
|
||||
name = "\improper SORD"
|
||||
|
||||
@@ -117,7 +117,7 @@ LINEN BINS
|
||||
if (do_after(user, 25, src))
|
||||
if(user.loc != loc)
|
||||
user.do_attack_animation(src)
|
||||
playsound(get_turf(loc), "rustle", 15, 1, -5)
|
||||
playsound(get_turf(loc), /decl/sound_category/rustle_sound, 15, 1, -5)
|
||||
var/folds = fold
|
||||
user.visible_message(SPAN_NOTICE("\The [user] [folds ? "unfolds" : "folds"] \the [src]."),
|
||||
SPAN_NOTICE("You [fold ? "unfold" : "fold"] \the [src]."))
|
||||
@@ -151,7 +151,7 @@ LINEN BINS
|
||||
if (do_after(user, 6, src))
|
||||
if(user.loc != loc)
|
||||
user.do_attack_animation(src)
|
||||
playsound(get_turf(loc), "rustle", 15, 1, -5)
|
||||
playsound(get_turf(loc), /decl/sound_category/rustle_sound, 15, 1, -5)
|
||||
var/rolls = roll
|
||||
user.visible_message(SPAN_NOTICE("\The [user] [rolls ? "unrolls" : "rolls"] \the [src]."),
|
||||
SPAN_NOTICE("You [roll ? "unroll" : "roll"] \the [src]."))
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
if(emag_act(INFINITY, user, "The locker has been sliced open by [user] with \an [blade]!", "You hear metal being sliced and sparks flying."))
|
||||
blade.spark_system.queue()
|
||||
playsound(loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(loc, "sparks", 50, 1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>Access Denied</span>")
|
||||
return
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
if(emag_act(INFINITY, user, "<span class='danger'>The locker has been sliced open by [user] with \an [W]</span>!", "<span class='danger'>You hear metal being sliced and sparks flying.</span>"))
|
||||
spark(src, 5)
|
||||
playsound(loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(loc, "sparks", 50, 1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
else if(W.iswelder())
|
||||
var/obj/item/weldingtool/WT = W
|
||||
if(WT.isOn())
|
||||
|
||||
@@ -351,7 +351,7 @@
|
||||
add_overlay(emag)
|
||||
add_overlay(sparks)
|
||||
CUT_OVERLAY_IN(sparks, 6)
|
||||
playsound(loc, "sparks", 60, 1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 60, 1)
|
||||
locked = 0
|
||||
broken = 1
|
||||
to_chat(user, "<span class='notice'>You unlock \the [src].</span>")
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
src.density = 0
|
||||
src.destroyed = 1
|
||||
new /obj/item/material/shard( src.loc )
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
update_icon()
|
||||
else
|
||||
playsound(src.loc, 'sound/effects/glass_hit.ogg', 75, 1)
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
if (S)
|
||||
if (S.get_amount() >= 1)
|
||||
if(material_name == "rglass")
|
||||
playsound(src.loc, "crowbar", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/crowbar_sound, 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, "crowbar", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/crowbar_sound, 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, "glass_break", 100, 1)
|
||||
playsound(user, /decl/sound_category/glass_break_sound, 100, 1)
|
||||
update_icon()
|
||||
|
||||
/obj/structure/fireaxecabinet/update_icon()
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
/obj/structure/grille,
|
||||
/turf/unsimulated/mineral/asteroid
|
||||
)
|
||||
footstep_sound = "catwalk"
|
||||
footstep_sound = /decl/sound_category/catwalk_footstep
|
||||
|
||||
/obj/structure/lattice/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
if(shattered) return
|
||||
shattered = 1
|
||||
icon_state = "mirror_broke"
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
desc = "Oh no, seven years of bad luck!"
|
||||
|
||||
|
||||
|
||||
@@ -60,13 +60,13 @@
|
||||
playsound(loc, 'sound/effects/glass_hit.ogg', 100, 1)
|
||||
if(health < maxhealth / 4 && initialhealth >= maxhealth / 4)
|
||||
visible_message(SPAN_DANGER("[src] looks like it's about to shatter!"))
|
||||
playsound(loc, "glasscrack", 100, 1)
|
||||
playsound(loc, /decl/sound_category/glasscrack_sound, 100, 1)
|
||||
else if(health < maxhealth / 2 && initialhealth >= maxhealth / 2)
|
||||
visible_message(SPAN_WARNING("[src] looks seriously damaged!"))
|
||||
playsound(loc, "glasscrack", 100, 1)
|
||||
playsound(loc, /decl/sound_category/glasscrack_sound, 100, 1)
|
||||
else if(health < maxhealth * 3/4 && initialhealth >= maxhealth * 3/4)
|
||||
visible_message(SPAN_WARNING("Cracks begin to appear in [src]!"))
|
||||
playsound(loc, "glasscrack", 100, 1)
|
||||
playsound(loc, /decl/sound_category/glasscrack_sound, 100, 1)
|
||||
return
|
||||
|
||||
/obj/structure/window/proc/apply_silicate(var/amount)
|
||||
@@ -87,7 +87,7 @@
|
||||
add_overlay(img)
|
||||
|
||||
/obj/structure/window/proc/shatter(var/display_message = 1)
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
if(display_message)
|
||||
visible_message(SPAN_WARNING("\The [src] shatters!"))
|
||||
if(dir == SOUTHWEST)
|
||||
|
||||
+355
-323
@@ -42,275 +42,6 @@
|
||||
#define DROP_SOUND_VOLUME 20
|
||||
#define THROW_SOUND_VOLUME 90
|
||||
|
||||
//footsteps
|
||||
var/list/blank_footstep = list('sound/effects/footstep/blank.ogg')
|
||||
|
||||
var/list/catwalk_footstep = list(
|
||||
'sound/effects/footstep/catwalk1.ogg',
|
||||
'sound/effects/footstep/catwalk2.ogg',
|
||||
'sound/effects/footstep/catwalk3.ogg',
|
||||
'sound/effects/footstep/catwalk4.ogg',
|
||||
'sound/effects/footstep/catwalk5.ogg'
|
||||
)
|
||||
var/list/wood_footstep = list(
|
||||
'sound/effects/footstep/wood1.ogg',
|
||||
'sound/effects/footstep/wood2.ogg',
|
||||
'sound/effects/footstep/wood3.ogg',
|
||||
'sound/effects/footstep/wood4.ogg',
|
||||
'sound/effects/footstep/wood5.ogg')
|
||||
|
||||
var/list/tiles_footstep = list(
|
||||
'sound/effects/footstep/floor1.ogg',
|
||||
'sound/effects/footstep/floor2.ogg',
|
||||
'sound/effects/footstep/floor3.ogg',
|
||||
'sound/effects/footstep/floor4.ogg',
|
||||
'sound/effects/footstep/floor5.ogg'
|
||||
)
|
||||
var/list/plating_footstep = list(
|
||||
'sound/effects/footstep/plating1.ogg',
|
||||
'sound/effects/footstep/plating2.ogg',
|
||||
'sound/effects/footstep/plating3.ogg',
|
||||
'sound/effects/footstep/plating4.ogg',
|
||||
'sound/effects/footstep/plating5.ogg'
|
||||
)
|
||||
var/list/carpet_footstep = list(
|
||||
'sound/effects/footstep/carpet1.ogg',
|
||||
'sound/effects/footstep/carpet2.ogg',
|
||||
'sound/effects/footstep/carpet3.ogg',
|
||||
'sound/effects/footstep/carpet4.ogg',
|
||||
'sound/effects/footstep/carpet5.ogg'
|
||||
)
|
||||
var/list/asteroid_footstep = list(
|
||||
'sound/effects/footstep/asteroid1.ogg',
|
||||
'sound/effects/footstep/asteroid2.ogg',
|
||||
'sound/effects/footstep/asteroid3.ogg',
|
||||
'sound/effects/footstep/asteroid4.ogg',
|
||||
'sound/effects/footstep/asteroid5.ogg'
|
||||
)
|
||||
var/list/grass_footstep = list(
|
||||
'sound/effects/footstep/grass1.ogg',
|
||||
'sound/effects/footstep/grass2.ogg',
|
||||
'sound/effects/footstep/grass3.ogg',
|
||||
'sound/effects/footstep/grass4.ogg'
|
||||
)
|
||||
var/list/water_footstep = list(
|
||||
'sound/effects/footstep/water1.ogg',
|
||||
'sound/effects/footstep/water2.ogg',
|
||||
'sound/effects/footstep/water3.ogg',
|
||||
'sound/effects/footstep/water4.ogg'
|
||||
)
|
||||
var/list/lava_footstep = list(
|
||||
'sound/effects/footstep/lava1.ogg',
|
||||
'sound/effects/footstep/lava2.ogg',
|
||||
'sound/effects/footstep/lava3.ogg'
|
||||
)
|
||||
var/list/snow_footstep = list(
|
||||
'sound/effects/footstep/snow1.ogg',
|
||||
'sound/effects/footstep/snow2.ogg',
|
||||
'sound/effects/footstep/snow3.ogg',
|
||||
'sound/effects/footstep/snow4.ogg',
|
||||
'sound/effects/footstep/snow5.ogg'
|
||||
)
|
||||
var/list/sand_footstep = list(
|
||||
'sound/effects/footstep/sand1.ogg',
|
||||
'sound/effects/footstep/sand2.ogg',
|
||||
'sound/effects/footstep/sand3.ogg',
|
||||
'sound/effects/footstep/sand4.ogg'
|
||||
)
|
||||
var/list/footstepfx = list(
|
||||
"blank",
|
||||
"catwalk",
|
||||
"wood",
|
||||
"tiles",
|
||||
"plating",
|
||||
"carpet",
|
||||
"asteroid",
|
||||
"grass",
|
||||
"water",
|
||||
"lava",
|
||||
"snow",
|
||||
"sand"
|
||||
)
|
||||
|
||||
var/list/glass_break_sound = list(
|
||||
'sound/effects/glass_break1.ogg',
|
||||
'sound/effects/glass_break2.ogg',
|
||||
'sound/effects/glass_break3.ogg'
|
||||
)
|
||||
var/list/cardboard_break_sound = list(
|
||||
'sound/effects/cardboard_break1.ogg',
|
||||
'sound/effects/cardboard_break2.ogg',
|
||||
'sound/effects/cardboard_break3.ogg',
|
||||
)
|
||||
var/list/wood_break_sound = list(
|
||||
'sound/effects/wood_break1.ogg',
|
||||
'sound/effects/wood_break2.ogg',
|
||||
'sound/effects/wood_break3.ogg',
|
||||
)
|
||||
var/list/explosion_sound = list(
|
||||
'sound/effects/Explosion1.ogg',
|
||||
'sound/effects/Explosion2.ogg'
|
||||
)
|
||||
var/list/spark_sound = list(
|
||||
'sound/effects/sparks1.ogg',
|
||||
'sound/effects/sparks2.ogg',
|
||||
'sound/effects/sparks3.ogg',
|
||||
'sound/effects/sparks4.ogg'
|
||||
)
|
||||
var/list/rustle_sound = list(
|
||||
'sound/items/storage/rustle1.ogg',
|
||||
'sound/items/storage/rustle2.ogg',
|
||||
'sound/items/storage/rustle3.ogg',
|
||||
'sound/items/storage/rustle4.ogg',
|
||||
'sound/items/storage/rustle5.ogg'
|
||||
)
|
||||
var/list/punch_sound = list(
|
||||
'sound/weapons/punch1.ogg',
|
||||
'sound/weapons/punch2.ogg',
|
||||
'sound/weapons/punch3.ogg',
|
||||
'sound/weapons/punch4.ogg'
|
||||
)
|
||||
var/list/punchmiss_sound = list(
|
||||
'sound/weapons/punchmiss1.ogg',
|
||||
'sound/weapons/punchmiss2.ogg'
|
||||
)
|
||||
var/list/clown_sound = list(
|
||||
'sound/effects/clownstep1.ogg',
|
||||
'sound/effects/clownstep2.ogg'
|
||||
)
|
||||
var/list/swing_hit_sound = list(
|
||||
'sound/weapons/genhit1.ogg',
|
||||
'sound/weapons/genhit2.ogg',
|
||||
'sound/weapons/genhit3.ogg'
|
||||
)
|
||||
var/list/hiss_sound = list(
|
||||
'sound/voice/hiss1.ogg',
|
||||
'sound/voice/hiss2.ogg',
|
||||
'sound/voice/hiss3.ogg',
|
||||
'sound/voice/hiss4.ogg'
|
||||
)
|
||||
var/list/page_sound = list(
|
||||
'sound/effects/pageturn1.ogg',
|
||||
'sound/effects/pageturn2.ogg',
|
||||
'sound/effects/pageturn3.ogg'
|
||||
)
|
||||
var/list/fracture_sound = list(
|
||||
'sound/effects/bonebreak1.ogg',
|
||||
'sound/effects/bonebreak2.ogg',
|
||||
'sound/effects/bonebreak3.ogg',
|
||||
'sound/effects/bonebreak4.ogg'
|
||||
)
|
||||
var/list/button_sound = list(
|
||||
'sound/machines/button1.ogg',
|
||||
'sound/machines/button2.ogg',
|
||||
'sound/machines/button3.ogg',
|
||||
'sound/machines/button4.ogg'
|
||||
)
|
||||
var/list/computerbeep_sound = list(
|
||||
'sound/machines/compbeep1.ogg',
|
||||
'sound/machines/compbeep2.ogg',
|
||||
'sound/machines/compbeep3.ogg',
|
||||
'sound/machines/compbeep4.ogg',
|
||||
'sound/machines/compbeep5.ogg'
|
||||
)
|
||||
var/list/switch_sound = list(
|
||||
'sound/machines/switch1.ogg',
|
||||
'sound/machines/switch2.ogg',
|
||||
'sound/machines/switch3.ogg',
|
||||
'sound/machines/switch4.ogg'
|
||||
)
|
||||
var/list/keyboard_sound = list(
|
||||
'sound/machines/keyboard/keyboard1.ogg',
|
||||
'sound/machines/keyboard/keyboard2.ogg',
|
||||
'sound/machines/keyboard/keyboard3.ogg',
|
||||
'sound/machines/keyboard/keyboard4.ogg',
|
||||
'sound/machines/keyboard/keyboard5.ogg'
|
||||
)
|
||||
var/list/pickaxe_sound = list(
|
||||
'sound/weapons/mine/pickaxe1.ogg',
|
||||
'sound/weapons/mine/pickaxe2.ogg',
|
||||
'sound/weapons/mine/pickaxe3.ogg',
|
||||
'sound/weapons/mine/pickaxe4.ogg'
|
||||
)
|
||||
var/list/glasscrack_sound = list(
|
||||
'sound/effects/glass_crack1.ogg',
|
||||
'sound/effects/glass_crack2.ogg',
|
||||
'sound/effects/glass_crack3.ogg',
|
||||
'sound/effects/glass_crack4.ogg'
|
||||
)
|
||||
var/list/bodyfall_sound = list(
|
||||
'sound/effects/bodyfall1.ogg',
|
||||
'sound/effects/bodyfall2.ogg',
|
||||
'sound/effects/bodyfall3.ogg',
|
||||
'sound/effects/bodyfall4.ogg'
|
||||
)
|
||||
var/list/bodyfall_machine_sound = list(
|
||||
'sound/effects/bodyfall_machine1.ogg',
|
||||
'sound/effects/bodyfall_machine2.ogg'
|
||||
)
|
||||
var/list/bulletflyby_sound = list(
|
||||
'sound/effects/bulletflyby1.ogg',
|
||||
'sound/effects/bulletflyby2.ogg',
|
||||
'sound/effects/bulletflyby3.ogg'
|
||||
)
|
||||
var/list/crowbar_sound = list(
|
||||
'sound/items/crowbar1.ogg',
|
||||
'sound/items/crowbar2.ogg',
|
||||
'sound/items/crowbar3.ogg',
|
||||
'sound/items/crowbar4.ogg'
|
||||
)
|
||||
var/list/casing_drop_sound = list(
|
||||
'sound/items/drop/casing1.ogg',
|
||||
'sound/items/drop/casing2.ogg',
|
||||
'sound/items/drop/casing3.ogg',
|
||||
'sound/items/drop/casing4.ogg',
|
||||
'sound/items/drop/casing5.ogg'
|
||||
)
|
||||
var/list/drillhit_sound = list(
|
||||
'sound/weapons/saw/drillhit1.ogg',
|
||||
'sound/weapons/saw/drillhit2.ogg'
|
||||
)
|
||||
var/list/bottlehit_intact_sound = list(
|
||||
'sound/weapons/bottlehit_intact1.ogg',
|
||||
'sound/weapons/bottlehit_intact2.ogg',
|
||||
'sound/weapons/bottlehit_intact3.ogg'
|
||||
)
|
||||
var/list/bottlehit_broken_sound = list(
|
||||
'sound/weapons/bottlehit_broken1.ogg',
|
||||
'sound/weapons/bottlehit_broken2.ogg',
|
||||
'sound/weapons/bottlehit_broken3.ogg'
|
||||
)
|
||||
// drop/equip/pickup sounds if there are multiple.
|
||||
var/list/generic_drop_sound = list(
|
||||
'sound/items/drop/generic1.ogg',
|
||||
'sound/items/drop/generic2.ogg',
|
||||
)
|
||||
var/list/generic_pickup_sound = list(
|
||||
'sound/items/pickup/generic1.ogg',
|
||||
'sound/items/pickup/generic2.ogg',
|
||||
'sound/items/pickup/generic3.ogg',
|
||||
)
|
||||
var/list/generic_wield_sound = list(
|
||||
'sound/items/wield/generic1.ogg',
|
||||
'sound/items/wield/generic2.ogg',
|
||||
'sound/items/wield/generic3.ogg'
|
||||
)
|
||||
var/list/sword_pickup_sound = list(
|
||||
'sound/items/pickup/sword1.ogg',
|
||||
'sound/items/pickup/sword2.ogg',
|
||||
'sound/items/pickup/sword3.ogg'
|
||||
)
|
||||
var/list/sword_equip_sound = list(
|
||||
'sound/items/equip/sword1.ogg',
|
||||
'sound/items/equip/sword2.ogg'
|
||||
)
|
||||
// gunshots, if multiple.
|
||||
var/list/gauss_fire_sound = list(
|
||||
'sound/weapons/gaussrifle1.ogg',
|
||||
'sound/weapons/gaussrifle2.ogg'
|
||||
)
|
||||
//var/list/gun_sound = list('sound/weapons/gunshot/gunshot1.ogg', 'sound/weapons/gunshot/gunshot2.ogg','sound/weapons/gunshot/gunshot3.ogg','sound/weapons/gunshot/gunshot4.ogg')
|
||||
|
||||
/proc/playsound(atom/source, soundin, vol, vary, extrarange, falloff, is_global, usepressure = 1, environment = -1, required_preferences = 0, required_asfx_toggles = 0)
|
||||
if (isarea(source))
|
||||
crash_with("[source] is an area and is trying to make the sound: [soundin]")
|
||||
@@ -342,7 +73,7 @@ var/list/gauss_fire_sound = list(
|
||||
)
|
||||
|
||||
/proc/playsound_get_sound(soundin, volume, fall_off, frequency = 0, environment = -1)
|
||||
if (istext(soundin))
|
||||
if(ispath(soundin))
|
||||
soundin = get_sfx(soundin)
|
||||
|
||||
var/sound/S = sound(soundin)
|
||||
@@ -488,62 +219,363 @@ var/list/gauss_fire_sound = list(
|
||||
playsound_to(source ? get_turf(source) : null, S, use_random_freq, use_pressure = use_pressure, required_preferences = required_preferences, required_asfx_toggles = required_asfx_toggles)
|
||||
|
||||
/client/proc/playtitlemusic()
|
||||
if(!SSticker.login_music) return
|
||||
if(!SSticker.login_music)
|
||||
return
|
||||
if(prefs.toggles & SOUND_LOBBY)
|
||||
src << sound(SSticker.login_music, repeat = 0, wait = 0, volume = 85, channel = 1) // MAD JAMS)
|
||||
|
||||
/proc/get_rand_frequency()
|
||||
return rand(32000, 55000) //Frequency stuff only works with 45kbps oggs.
|
||||
|
||||
/proc/get_sfx(soundin)
|
||||
if(istext(soundin))
|
||||
switch(soundin)
|
||||
//footsteps
|
||||
if ("blank") soundin = pick(blank_footstep)
|
||||
if ("catwalk") soundin = pick(catwalk_footstep)
|
||||
if ("wood") soundin = pick(wood_footstep)
|
||||
if ("tiles") soundin = pick(tiles_footstep)
|
||||
if ("plating") soundin = pick(plating_footstep)
|
||||
if ("carpet") soundin = pick(carpet_footstep)
|
||||
if ("asteroid") soundin = pick(asteroid_footstep)
|
||||
if ("grass") soundin = pick(grass_footstep)
|
||||
if ("water") soundin = pick(water_footstep)
|
||||
if ("lava") soundin = pick(lava_footstep)
|
||||
if ("snow") soundin = pick(snow_footstep)
|
||||
if ("sand") soundin = pick(sand_footstep)
|
||||
// shatter sfx. mainly for materials
|
||||
if ("glass_break") soundin = pick(glass_break_sound)
|
||||
if ("cardboard_break") soundin = pick(cardboard_break_sound)
|
||||
if ("wood_break") soundin = pick(wood_break_sound)
|
||||
//misc
|
||||
if ("explosion") soundin = pick(explosion_sound)
|
||||
if ("sparks") soundin = pick(spark_sound)
|
||||
if ("rustle") soundin = pick(rustle_sound)
|
||||
if ("punch") soundin = pick(punch_sound)
|
||||
if ("punchmiss") soundin = pick(punchmiss_sound)
|
||||
if ("clownstep") soundin = pick(clown_sound)
|
||||
if ("swing_hit") soundin = pick(swing_hit_sound)
|
||||
if ("hiss") soundin = pick(hiss_sound)
|
||||
if ("pageturn") soundin = pick(page_sound)
|
||||
if ("fracture") soundin = pick(fracture_sound)
|
||||
//if ("gunshot") soundin = pick(gun_sound)
|
||||
if ("button") soundin = pick(button_sound)
|
||||
if ("glasscrack") soundin = pick(glasscrack_sound)
|
||||
if ("switch") soundin = pick(switch_sound)
|
||||
if ("keyboard") soundin = pick(keyboard_sound)
|
||||
if ("pickaxe") soundin = pick(pickaxe_sound)
|
||||
if ("bodyfall") soundin = pick(bodyfall_sound)
|
||||
if ("bodyfall_machine") soundin = pick(bodyfall_machine_sound)
|
||||
if ("bulletflyby") soundin = pick(bulletflyby_sound)
|
||||
if ("crowbar") soundin = pick(crowbar_sound)
|
||||
if ("casing_drop") soundin = pick(casing_drop_sound)
|
||||
if ("drillhit") soundin = pick(drillhit_sound)
|
||||
if ("bottlehit_intact") soundin = pick(bottlehit_intact_sound)
|
||||
if ("bottlehit_broken") soundin = pick(bottlehit_broken_sound)
|
||||
if ("generic_drop") soundin = pick(generic_drop_sound)
|
||||
if ("generic_pickup") soundin = pick(generic_pickup_sound)
|
||||
if ("generic_wield") soundin = pick(generic_wield_sound)
|
||||
if ("equip_sword") soundin = pick(sword_equip_sound)
|
||||
if ("pickup_sword") soundin = pick(sword_pickup_sound)
|
||||
if ("gauss_fire") soundin = pick(gauss_fire_sound)
|
||||
return soundin
|
||||
/proc/get_sfx(var/sound_category)
|
||||
var/decl/sound_category/SC = decls_repository.get_decl(sound_category)
|
||||
if(!istype(SC))
|
||||
CRASH("Non-decl path in get_sfx: [sound_category]")
|
||||
return SC.get_sound()
|
||||
|
||||
/decl/sound_category
|
||||
var/list/sounds = list()
|
||||
|
||||
/decl/sound_category/proc/get_sound()
|
||||
return pick(sounds)
|
||||
|
||||
/decl/sound_category/blank_footsteps
|
||||
sounds = list('sound/effects/footstep/blank.ogg')
|
||||
|
||||
/decl/sound_category/catwalk_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/catwalk1.ogg',
|
||||
'sound/effects/footstep/catwalk2.ogg',
|
||||
'sound/effects/footstep/catwalk3.ogg',
|
||||
'sound/effects/footstep/catwalk4.ogg',
|
||||
'sound/effects/footstep/catwalk5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/wood_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/wood1.ogg',
|
||||
'sound/effects/footstep/wood2.ogg',
|
||||
'sound/effects/footstep/wood3.ogg',
|
||||
'sound/effects/footstep/wood4.ogg',
|
||||
'sound/effects/footstep/wood5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/tiles_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/floor1.ogg',
|
||||
'sound/effects/footstep/floor2.ogg',
|
||||
'sound/effects/footstep/floor3.ogg',
|
||||
'sound/effects/footstep/floor4.ogg',
|
||||
'sound/effects/footstep/floor5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/plating_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/plating1.ogg',
|
||||
'sound/effects/footstep/plating2.ogg',
|
||||
'sound/effects/footstep/plating3.ogg',
|
||||
'sound/effects/footstep/plating4.ogg',
|
||||
'sound/effects/footstep/plating5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/carpet_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/carpet1.ogg',
|
||||
'sound/effects/footstep/carpet2.ogg',
|
||||
'sound/effects/footstep/carpet3.ogg',
|
||||
'sound/effects/footstep/carpet4.ogg',
|
||||
'sound/effects/footstep/carpet5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/asteroid_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/asteroid1.ogg',
|
||||
'sound/effects/footstep/asteroid2.ogg',
|
||||
'sound/effects/footstep/asteroid3.ogg',
|
||||
'sound/effects/footstep/asteroid4.ogg',
|
||||
'sound/effects/footstep/asteroid5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/grass_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/grass1.ogg',
|
||||
'sound/effects/footstep/grass2.ogg',
|
||||
'sound/effects/footstep/grass3.ogg',
|
||||
'sound/effects/footstep/grass4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/water_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/water1.ogg',
|
||||
'sound/effects/footstep/water2.ogg',
|
||||
'sound/effects/footstep/water3.ogg',
|
||||
'sound/effects/footstep/water4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/lava_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/lava1.ogg',
|
||||
'sound/effects/footstep/lava2.ogg',
|
||||
'sound/effects/footstep/lava3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/snow_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/snow1.ogg',
|
||||
'sound/effects/footstep/snow2.ogg',
|
||||
'sound/effects/footstep/snow3.ogg',
|
||||
'sound/effects/footstep/snow4.ogg',
|
||||
'sound/effects/footstep/snow5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/sand_footstep
|
||||
sounds = list(
|
||||
'sound/effects/footstep/sand1.ogg',
|
||||
'sound/effects/footstep/sand2.ogg',
|
||||
'sound/effects/footstep/sand3.ogg',
|
||||
'sound/effects/footstep/sand4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/glass_break_sound
|
||||
sounds = list(
|
||||
'sound/effects/glass_break1.ogg',
|
||||
'sound/effects/glass_break2.ogg',
|
||||
'sound/effects/glass_break3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/cardboard_break_sound
|
||||
sounds = list(
|
||||
'sound/effects/cardboard_break1.ogg',
|
||||
'sound/effects/cardboard_break2.ogg',
|
||||
'sound/effects/cardboard_break3.ogg',
|
||||
)
|
||||
|
||||
/decl/sound_category/wood_break_sound
|
||||
sounds = list(
|
||||
'sound/effects/wood_break1.ogg',
|
||||
'sound/effects/wood_break2.ogg',
|
||||
'sound/effects/wood_break3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/explosion_sound
|
||||
sounds = list(
|
||||
'sound/effects/Explosion1.ogg',
|
||||
'sound/effects/Explosion2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/spark_sound
|
||||
sounds = list(
|
||||
'sound/effects/sparks1.ogg',
|
||||
'sound/effects/sparks2.ogg',
|
||||
'sound/effects/sparks3.ogg',
|
||||
'sound/effects/sparks4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/rustle_sound
|
||||
sounds = list(
|
||||
'sound/items/storage/rustle1.ogg',
|
||||
'sound/items/storage/rustle2.ogg',
|
||||
'sound/items/storage/rustle3.ogg',
|
||||
'sound/items/storage/rustle4.ogg',
|
||||
'sound/items/storage/rustle5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/punch_sound
|
||||
sounds = list(
|
||||
'sound/weapons/punch1.ogg',
|
||||
'sound/weapons/punch2.ogg',
|
||||
'sound/weapons/punch3.ogg',
|
||||
'sound/weapons/punch4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/punchmiss_sound
|
||||
sounds = list(
|
||||
'sound/weapons/punchmiss1.ogg',
|
||||
'sound/weapons/punchmiss2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/clown_sound
|
||||
sounds = list(
|
||||
'sound/effects/clownstep1.ogg',
|
||||
'sound/effects/clownstep2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/swing_hit_sound
|
||||
sounds = list(
|
||||
'sound/weapons/genhit1.ogg',
|
||||
'sound/weapons/genhit2.ogg',
|
||||
'sound/weapons/genhit3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/hiss_sound
|
||||
sounds = list(
|
||||
'sound/voice/hiss1.ogg',
|
||||
'sound/voice/hiss2.ogg',
|
||||
'sound/voice/hiss3.ogg',
|
||||
'sound/voice/hiss4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/page_sound
|
||||
sounds = list(
|
||||
'sound/effects/pageturn1.ogg',
|
||||
'sound/effects/pageturn2.ogg',
|
||||
'sound/effects/pageturn3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/fracture_sound
|
||||
sounds = list(
|
||||
'sound/effects/bonebreak1.ogg',
|
||||
'sound/effects/bonebreak2.ogg',
|
||||
'sound/effects/bonebreak3.ogg',
|
||||
'sound/effects/bonebreak4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/button_sound
|
||||
sounds = list(
|
||||
'sound/machines/button1.ogg',
|
||||
'sound/machines/button2.ogg',
|
||||
'sound/machines/button3.ogg',
|
||||
'sound/machines/button4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/computerbeep_sound
|
||||
sounds = list(
|
||||
'sound/machines/compbeep1.ogg',
|
||||
'sound/machines/compbeep2.ogg',
|
||||
'sound/machines/compbeep3.ogg',
|
||||
'sound/machines/compbeep4.ogg',
|
||||
'sound/machines/compbeep5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/switch_sound
|
||||
sounds = list(
|
||||
'sound/machines/switch1.ogg',
|
||||
'sound/machines/switch2.ogg',
|
||||
'sound/machines/switch3.ogg',
|
||||
'sound/machines/switch4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/keyboard_sound
|
||||
sounds = list(
|
||||
'sound/machines/keyboard/keyboard1.ogg',
|
||||
'sound/machines/keyboard/keyboard2.ogg',
|
||||
'sound/machines/keyboard/keyboard3.ogg',
|
||||
'sound/machines/keyboard/keyboard4.ogg',
|
||||
'sound/machines/keyboard/keyboard5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/pickaxe_sound
|
||||
sounds = list(
|
||||
'sound/weapons/mine/pickaxe1.ogg',
|
||||
'sound/weapons/mine/pickaxe2.ogg',
|
||||
'sound/weapons/mine/pickaxe3.ogg',
|
||||
'sound/weapons/mine/pickaxe4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/glasscrack_sound
|
||||
sounds = list(
|
||||
'sound/effects/glass_crack1.ogg',
|
||||
'sound/effects/glass_crack2.ogg',
|
||||
'sound/effects/glass_crack3.ogg',
|
||||
'sound/effects/glass_crack4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/bodyfall_sound
|
||||
sounds = list(
|
||||
'sound/effects/bodyfall1.ogg',
|
||||
'sound/effects/bodyfall2.ogg',
|
||||
'sound/effects/bodyfall3.ogg',
|
||||
'sound/effects/bodyfall4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/bodyfall_machine_sound
|
||||
sounds = list(
|
||||
'sound/effects/bodyfall_machine1.ogg',
|
||||
'sound/effects/bodyfall_machine2.ogg'
|
||||
)
|
||||
/decl/sound_category/bulletflyby_sound
|
||||
sounds = list(
|
||||
'sound/effects/bulletflyby1.ogg',
|
||||
'sound/effects/bulletflyby2.ogg',
|
||||
'sound/effects/bulletflyby3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/crowbar_sound
|
||||
sounds = list(
|
||||
'sound/items/crowbar1.ogg',
|
||||
'sound/items/crowbar2.ogg',
|
||||
'sound/items/crowbar3.ogg',
|
||||
'sound/items/crowbar4.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/casing_drop_sound
|
||||
sounds = list(
|
||||
'sound/items/drop/casing1.ogg',
|
||||
'sound/items/drop/casing2.ogg',
|
||||
'sound/items/drop/casing3.ogg',
|
||||
'sound/items/drop/casing4.ogg',
|
||||
'sound/items/drop/casing5.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/drillhit_sound
|
||||
sounds = list(
|
||||
'sound/weapons/saw/drillhit1.ogg',
|
||||
'sound/weapons/saw/drillhit2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/generic_drop_sound
|
||||
sounds = list(
|
||||
'sound/items/drop/generic1.ogg',
|
||||
'sound/items/drop/generic2.ogg',
|
||||
)
|
||||
/decl/sound_category/generic_pickup_sound
|
||||
sounds = list(
|
||||
'sound/items/pickup/generic1.ogg',
|
||||
'sound/items/pickup/generic2.ogg',
|
||||
'sound/items/pickup/generic3.ogg',
|
||||
)
|
||||
/decl/sound_category/generic_wield_sound
|
||||
sounds = list(
|
||||
'sound/items/wield/generic1.ogg',
|
||||
'sound/items/wield/generic2.ogg',
|
||||
'sound/items/wield/generic3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/wield_generic_sound
|
||||
sounds = list(
|
||||
'sound/items/wield/generic1.ogg',
|
||||
'sound/items/wield/generic2.ogg',
|
||||
'sound/items/wield/generic3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/sword_pickup_sound
|
||||
sounds = list(
|
||||
'sound/items/pickup/sword1.ogg',
|
||||
'sound/items/pickup/sword2.ogg',
|
||||
'sound/items/pickup/sword3.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/sword_equip_sound
|
||||
sounds = list(
|
||||
'sound/items/equip/sword1.ogg',
|
||||
'sound/items/equip/sword2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/gauss_fire_sound
|
||||
sounds = list(
|
||||
'sound/weapons/gaussrifle1.ogg',
|
||||
'sound/weapons/gaussrifle2.ogg'
|
||||
)
|
||||
|
||||
/decl/sound_category/bottle_hit_intact_sound
|
||||
sounds = list(
|
||||
'sound/weapons/bottlehit_intact1.ogg',
|
||||
'sound/weapons/bottlehit_intact2.ogg',
|
||||
'sound/weapons/bottlehit_intact3.ogg'
|
||||
)
|
||||
/decl/sound_category/bottle_hit_broken
|
||||
sounds = list(
|
||||
'sound/weapons/bottlehit_broken1.ogg',
|
||||
'sound/weapons/bottlehit_broken2.ogg',
|
||||
'sound/weapons/bottlehit_broken3.ogg'
|
||||
)
|
||||
@@ -28,7 +28,7 @@
|
||||
var/descriptor = "tiles"
|
||||
var/flags
|
||||
var/can_paint
|
||||
var/footstep_sound = "tiles"
|
||||
var/footstep_sound = /decl/sound_category/tiles_footstep
|
||||
|
||||
/decl/flooring/grass
|
||||
name = "synthetic grass"
|
||||
@@ -39,7 +39,7 @@
|
||||
damage_temperature = T0C+80
|
||||
flags = TURF_HAS_EDGES | TURF_REMOVE_SHOVEL
|
||||
build_type = /obj/item/stack/tile/grass
|
||||
footstep_sound = "grass"
|
||||
footstep_sound = /decl/sound_category/grass_footstep
|
||||
|
||||
/decl/flooring/grass/alt
|
||||
name = "grass"
|
||||
@@ -57,7 +57,7 @@
|
||||
icon_base = "asteroid"
|
||||
flags = TURF_HAS_EDGES | TURF_REMOVE_SHOVEL
|
||||
build_type = null
|
||||
footstep_sound = "asteroid"
|
||||
footstep_sound = /decl/sound_category/asteroid_footstep
|
||||
|
||||
/decl/flooring/carpet
|
||||
name = "carpet"
|
||||
@@ -67,7 +67,7 @@
|
||||
build_type = /obj/item/stack/tile/carpet
|
||||
damage_temperature = T0C+200
|
||||
flags = TURF_HAS_EDGES | TURF_HAS_CORNERS | TURF_REMOVE_CROWBAR | TURF_CAN_BURN
|
||||
footstep_sound = "carpet"
|
||||
footstep_sound = /decl/sound_category/carpet_footstep
|
||||
|
||||
/decl/flooring/carpet/blue
|
||||
name = "carpet"
|
||||
@@ -94,7 +94,7 @@
|
||||
flags = TURF_REMOVE_CROWBAR | TURF_CAN_BREAK | TURF_CAN_BURN
|
||||
build_type = /obj/item/stack/tile/floor
|
||||
can_paint = 1
|
||||
footstep_sound = "tiles"
|
||||
footstep_sound = /decl/sound_category/tiles_footstep
|
||||
|
||||
/decl/flooring/tiling/asteroid
|
||||
name = "floor"
|
||||
@@ -114,7 +114,7 @@
|
||||
flags = TURF_REMOVE_CROWBAR | TURF_CAN_BREAK
|
||||
build_type = /obj/item/stack/tile/lino
|
||||
can_paint = 1
|
||||
footstep_sound = "carpet"
|
||||
footstep_sound = /decl/sound_category/carpet_footstep
|
||||
|
||||
/decl/flooring/linoleum/grey
|
||||
icon_base = "lino_grey"
|
||||
@@ -204,7 +204,7 @@
|
||||
descriptor = "planks"
|
||||
build_type = /obj/item/stack/tile/wood
|
||||
flags = TURF_CAN_BREAK | TURF_IS_FRAGILE | TURF_REMOVE_SCREWDRIVER | TURF_CAN_BURN
|
||||
footstep_sound = "wood"
|
||||
footstep_sound = /decl/sound_category/wood_footstep
|
||||
|
||||
/decl/flooring/reinforced
|
||||
name = "reinforced floor"
|
||||
@@ -218,7 +218,7 @@
|
||||
apply_thermal_conductivity = 0.025
|
||||
apply_heat_capacity = 325000
|
||||
can_paint = 1
|
||||
footstep_sound = "plating"
|
||||
footstep_sound = /decl/sound_category/plating_footstep
|
||||
|
||||
/decl/flooring/reinforced/circuit
|
||||
name = "processing strata"
|
||||
@@ -271,7 +271,7 @@
|
||||
icon = 'icons/turf/floors.dmi'
|
||||
icon_base = "diona"
|
||||
flags = TURF_ACID_IMMUNE | TURF_REMOVE_SHOVEL
|
||||
footstep_sound = "grass"
|
||||
footstep_sound = /decl/sound_category/grass_footstep
|
||||
|
||||
//material turfs
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
icon = 'icons/turf/flooring/carpet.dmi'
|
||||
icon_state = "carpet"
|
||||
initial_flooring = /decl/flooring/carpet
|
||||
footstep_sound = "carpet"
|
||||
footstep_sound = /decl/sound_category/carpet_footstep
|
||||
|
||||
/turf/simulated/floor/carpet/blue
|
||||
name = "blue carpet"
|
||||
@@ -36,14 +36,14 @@
|
||||
icon = 'icons/turf/flooring/wood.dmi'
|
||||
icon_state = "wood"
|
||||
initial_flooring = /decl/flooring/wood
|
||||
footstep_sound = "wood"
|
||||
footstep_sound = /decl/sound_category/wood_footstep
|
||||
|
||||
/turf/simulated/floor/grass
|
||||
name = "grass patch"
|
||||
icon = 'icons/turf/flooring/grass.dmi'
|
||||
icon_state = "grass0"
|
||||
initial_flooring = /decl/flooring/grass
|
||||
footstep_sound = "grass"
|
||||
footstep_sound = /decl/sound_category/grass_footstep
|
||||
|
||||
/turf/simulated/floor/grass/alt
|
||||
icon = 'icons/turf/total_floors.dmi'
|
||||
@@ -61,7 +61,7 @@
|
||||
icon = 'icons/turf/flooring/tiles.dmi'
|
||||
icon_state = "reinforced"
|
||||
initial_flooring = /decl/flooring/reinforced
|
||||
footstep_sound = "plating"
|
||||
footstep_sound = /decl/sound_category/plating_footstep
|
||||
|
||||
/turf/simulated/floor/reinforced/airless
|
||||
oxygen = 0
|
||||
@@ -220,7 +220,7 @@
|
||||
oxygen = 0
|
||||
nitrogen = 0
|
||||
temperature = TCMB
|
||||
footstep_sound = "plating"
|
||||
footstep_sound = /decl/sound_category/plating_footstep
|
||||
|
||||
roof_type = null
|
||||
|
||||
@@ -267,7 +267,7 @@
|
||||
name = "snow"
|
||||
icon = 'icons/turf/snow.dmi'
|
||||
icon_state = "snow"
|
||||
footstep_sound = "snow"
|
||||
footstep_sound = /decl/sound_category/snow_footstep
|
||||
does_footprint = TRUE
|
||||
footprint_color = COLOR_SNOW
|
||||
track_distance = 4
|
||||
@@ -279,7 +279,7 @@
|
||||
/turf/simulated/floor/plating/snow
|
||||
icon = 'icons/turf/snow.dmi'
|
||||
icon_state = "snowplating"
|
||||
footstep_sound = "snow"
|
||||
footstep_sound = /decl/sound_category/snow_footstep
|
||||
|
||||
/turf/simulated/floor/airless/ceiling
|
||||
icon_state = "asteroidplating"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/turf/simulated/floor/plating
|
||||
footstep_sound = "plating"
|
||||
footstep_sound = /decl/sound_category/plating_footstep
|
||||
|
||||
/turf/simulated/floor/diona
|
||||
name = "biomass flooring"
|
||||
icon_state = "diona"
|
||||
footstep_sound = "grass"
|
||||
footstep_sound = /decl/sound_category/grass_footstep
|
||||
initial_flooring = /decl/flooring/diona
|
||||
@@ -57,7 +57,7 @@
|
||||
|
||||
spark(EB, 5)
|
||||
to_chat(user, "<span class='notice'>You slash \the [src] with \the [EB]; the thermite ignites!</span>")
|
||||
playsound(src, "sparks", 50, 1)
|
||||
playsound(src, /decl/sound_category/spark_sound, 50, 1)
|
||||
playsound(src, 'sound/weapons/blade.ogg', 50, 1)
|
||||
|
||||
thermitemelt(user)
|
||||
@@ -406,7 +406,7 @@
|
||||
icon_state = "floor"
|
||||
permit_ao = 0
|
||||
initial_flooring = /decl/flooring/shuttle
|
||||
footstep_sound = "plating"
|
||||
footstep_sound = /decl/sound_category/plating_footstep
|
||||
|
||||
/turf/simulated/floor/shuttle/yellow
|
||||
icon_state = "floor2"
|
||||
@@ -447,7 +447,7 @@
|
||||
/turf/simulated/floor/shuttle/skrell
|
||||
icon_state = "skrell_purple"
|
||||
initial_flooring = /decl/flooring/shuttle/skrell
|
||||
footstep_sound = "sandstep"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/simulated/floor/shuttle/skrell/blue
|
||||
icon_state = "skrell_blue"
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
|
||||
spark(EB, 5)
|
||||
to_chat(user, SPAN_NOTICE("You slash \the [src] with \the [EB], igniting the thermite!"))
|
||||
playsound(src, "sparks", 50, 1)
|
||||
playsound(src, /decl/sound_category/spark_sound, 50, 1)
|
||||
playsound(src, 'sound/weapons/blade.ogg', 50, 1)
|
||||
|
||||
thermitemelt(user)
|
||||
@@ -202,20 +202,20 @@
|
||||
else if(istype(W,/obj/item/melee/energy))
|
||||
var/obj/item/melee/energy/WT = W
|
||||
if(WT.active)
|
||||
dismantle_sound = "sparks"
|
||||
dismantle_sound = /decl/sound_category/spark_sound
|
||||
dismantle_verb = "slicing"
|
||||
cut_delay *= 0.5
|
||||
else
|
||||
to_chat(user, SPAN_NOTICE("You need to activate the weapon to do that!"))
|
||||
return
|
||||
else if(istype(W,/obj/item/melee/energy/blade))
|
||||
dismantle_sound = "sparks"
|
||||
dismantle_sound = /decl/sound_category/spark_sound
|
||||
dismantle_verb = "slicing"
|
||||
cut_delay *= 0.5
|
||||
else if(istype(W,/obj/item/melee/chainsword))
|
||||
var/obj/item/melee/chainsword/WT = W
|
||||
if(WT.active)
|
||||
dismantle_sound = "sound/weapons/chainsawhit.ogg"
|
||||
dismantle_sound = 'sound/weapons/saw/chainsawhit.ogg'
|
||||
dismantle_verb = "slicing"
|
||||
cut_delay *= 0.8
|
||||
else
|
||||
@@ -227,7 +227,7 @@
|
||||
dismantle_sound = P.drill_sound
|
||||
cut_delay -= P.digspeed
|
||||
else if(istype(W,/obj/item/melee/arm_blade/))
|
||||
dismantle_sound = "pickaxe"
|
||||
dismantle_sound = /decl/sound_category/pickaxe_sound
|
||||
dismantle_verb = "slicing and stabbing"
|
||||
cut_delay *= 1.5
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "beach"
|
||||
icon = 'icons/misc/beach.dmi'
|
||||
icon_state = "sand"
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/simulated/floor/beach/sand
|
||||
name = "sand"
|
||||
@@ -18,12 +18,12 @@
|
||||
name = "coastline"
|
||||
icon = 'icons/misc/beach2.dmi'
|
||||
icon_state = "sandwater"
|
||||
footstep_sound = "water"
|
||||
footstep_sound = /decl/sound_category/water_footstep
|
||||
|
||||
/turf/simulated/floor/beach/water
|
||||
name = "water"
|
||||
icon_state = "water"
|
||||
footstep_sound = "water"
|
||||
footstep_sound = /decl/sound_category/water_footstep
|
||||
movement_cost = 2
|
||||
var/watertype = "water5"
|
||||
var/obj/effect/water_effect/water_overlay
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
var/pathweight = 1 // How much does it cost to pathfind over this turf?
|
||||
var/blessed = 0 // Has the turf been blessed?
|
||||
|
||||
var/footstep_sound = "tiles"
|
||||
var/footstep_sound = /decl/sound_category/tiles_footstep
|
||||
|
||||
var/list/decals
|
||||
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
/turf/unsimulated/beach
|
||||
name = "Beach"
|
||||
icon = 'icons/misc/beach.dmi'
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/unsimulated/beach/sand
|
||||
name = "Sand"
|
||||
icon_state = "sand"
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/unsimulated/beach/coastline
|
||||
name = "Coastline"
|
||||
icon = 'icons/misc/beach2.dmi'
|
||||
icon_state = "sandwater"
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/unsimulated/beach/water
|
||||
name = "Water"
|
||||
icon_state = "water"
|
||||
footstep_sound = "water"
|
||||
footstep_sound = /decl/sound_category/water_footstep
|
||||
|
||||
/turf/unsimulated/beach/water/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
name = "snow"
|
||||
icon = 'icons/turf/snow.dmi'
|
||||
icon_state = "snow"
|
||||
footstep_sound = "snow"
|
||||
footstep_sound = /decl/sound_category/snow_footstep
|
||||
|
||||
/turf/unsimulated/mask
|
||||
name = "mask"
|
||||
|
||||
@@ -197,7 +197,7 @@
|
||||
var/obj/item/material/shard/S = material.place_shard(T)
|
||||
M.embed(S)
|
||||
|
||||
playsound(src.loc, "glass_break", 70, 1)
|
||||
playsound(src.loc, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/clothing/suit/armor/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")
|
||||
|
||||
@@ -331,7 +331,7 @@
|
||||
punch_force = 5
|
||||
clipped = 1
|
||||
drop_sound = 'sound/items/drop/sword.ogg'
|
||||
pickup_sound = "pickup_sword"
|
||||
pickup_sound = /decl/sound_category/sword_pickup_sound
|
||||
|
||||
/obj/item/clothing/gloves/powerfist
|
||||
name = "power fist"
|
||||
|
||||
@@ -86,11 +86,11 @@ obj/item/clothing/shoes/sandal/clogs
|
||||
if(running)
|
||||
if(footstep >= 2)
|
||||
footstep = 0
|
||||
playsound(src, "clownstep", 50, 1) // this will get annoying very fast.
|
||||
playsound(src, /decl/sound_category/clown_sound, 50, 1) // this will get annoying very fast.
|
||||
else
|
||||
footstep++
|
||||
else
|
||||
playsound(src, "clownstep", 20, 1)
|
||||
playsound(src, /decl/sound_category/clown_sound, 20, 1)
|
||||
|
||||
/obj/item/clothing/shoes/cult
|
||||
name = "ragged boots"
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
if(!M || !T)
|
||||
return
|
||||
|
||||
playsound(T, "sparks", 50, 1)
|
||||
playsound(T, /decl/sound_category/spark_sound, 50, 1)
|
||||
anim(T, M, 'icons/mob/mob.dmi', ,"phaseout", ,M.dir)
|
||||
|
||||
/obj/item/rig_module/teleporter/engage(atom/target, mob/user, var/notify_ai)
|
||||
|
||||
@@ -233,7 +233,7 @@
|
||||
if(!isturf(picked)) return
|
||||
|
||||
spark(user, 5)
|
||||
playsound(user.loc, "sparks", 50, 1)
|
||||
playsound(user.loc, /decl/sound_category/spark_sound, 50, 1)
|
||||
|
||||
user.forceMove(picked)
|
||||
return PROJECTILE_FORCE_MISS
|
||||
|
||||
@@ -349,7 +349,7 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
user.visible_message("<span class='notice'>[user] starts flipping through \the [src].</span>",
|
||||
"<span class='notice'>You start looking through \the [src], it appears to be filled with translations of Tau-Ceti basic for tajaran users.</span>",
|
||||
"<span class='notice'>You hear pages being flipped.</span>")
|
||||
playsound(src.loc, "pageturn", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/page_sound, 50, 1)
|
||||
|
||||
|
||||
/obj/item/clothing/under/fluff/faysal_uniform //Old Tajaran Nobleman Suit - Faysal Al-Shennawi - alberyk
|
||||
|
||||
@@ -27,11 +27,11 @@
|
||||
if (location)
|
||||
var/obj/effect/visual/sparks/S = new(location, src, 0) //Trigger one on the tile it's on
|
||||
S.start()
|
||||
playsound(location, "sparks", 100, 1)
|
||||
playsound(location, /decl/sound_category/spark_sound, 100, 1)
|
||||
QUEUE_VISUAL(S) // Queue it.
|
||||
|
||||
while (total_sparks <= src.amount)
|
||||
playsound(location, "sparks", 100, 1)
|
||||
playsound(location, /decl/sound_category/spark_sound, 100, 1)
|
||||
var/direction = 0
|
||||
|
||||
if (LAZYLEN(src.spread))
|
||||
|
||||
@@ -21,17 +21,17 @@
|
||||
'sound/misc/nymphchirp.ogg',
|
||||
'sound/machines/twobeep.ogg',
|
||||
'sound/machines/windowdoor.ogg',
|
||||
"glass_break",
|
||||
/decl/sound_category/glass_break_sound,
|
||||
'sound/weapons/railgun.ogg',
|
||||
'sound/effects/phasein.ogg',
|
||||
"sparks",
|
||||
/decl/sound_category/spark_sound,
|
||||
'sound/effects/stealthoff.ogg',
|
||||
'sound/misc/zapsplat/chitter1.ogg',
|
||||
'sound/misc/zapsplat/chitter2.ogg',
|
||||
'sound/effects/squelch1.ogg',
|
||||
'sound/items/wrench.ogg',
|
||||
'sound/items/welder.ogg',
|
||||
"crowbar",
|
||||
/decl/sound_category/crowbar_sound,
|
||||
'sound/items/screwdriver.ogg',
|
||||
'sound/items/drill_use.ogg',
|
||||
'sound/items/air_wrench.ogg')
|
||||
|
||||
@@ -429,7 +429,7 @@
|
||||
return AURA_FALSE|AURA_CANCEL
|
||||
|
||||
spark(get_turf(src), 5, global.alldirs)
|
||||
playsound(get_turf(src), "sparks", 25, TRUE)
|
||||
playsound(get_turf(src), /decl/sound_category/spark_sound, 25, TRUE)
|
||||
|
||||
/obj/aura/mechshield/hitby(atom/movable/M, var/speed)
|
||||
. = ..()
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
icon = 'icons/turf/flooring/carpet.dmi'
|
||||
icon_state = "carpet"
|
||||
initial_flooring = /decl/flooring/carpet
|
||||
footstep_sound = "carpet"
|
||||
footstep_sound = /decl/sound_category/carpet_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/tiled
|
||||
name = "floor"
|
||||
@@ -60,7 +60,7 @@
|
||||
icon = 'icons/turf/flooring/grass.dmi'
|
||||
icon_state = "grass0"
|
||||
initial_flooring = /decl/flooring/grass
|
||||
footstep_sound = "grassstep"
|
||||
footstep_sound = /decl/sound_category/grass_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/snow
|
||||
name = "snow"
|
||||
@@ -69,14 +69,14 @@
|
||||
base_icon = 'icons/turf/floors.dmi'
|
||||
icon_state = "snow"
|
||||
base_icon_state = "snow"
|
||||
footstep_sound = "gravelstep"
|
||||
footstep_sound = /decl/sound_category/snow_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/reinforced
|
||||
icon = 'icons/turf/flooring/tiles.dmi'
|
||||
initial_flooring = /decl/flooring/reinforced
|
||||
name = "reinforced holofloor"
|
||||
icon_state = "reinforced"
|
||||
footstep_sound = "concretestep"
|
||||
footstep_sound = /decl/sound_category/tiles_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/space
|
||||
icon = 'icons/turf/space.dmi'
|
||||
@@ -103,7 +103,7 @@
|
||||
base_icon_state = "sand"
|
||||
base_icon = 'icons/misc/beach.dmi'
|
||||
initial_flooring = null
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/beach/sand
|
||||
name = "sand"
|
||||
@@ -113,13 +113,13 @@
|
||||
icon = 'icons/misc/beach2.dmi'
|
||||
icon_state = "sandwater"
|
||||
base_icon_state = "sandwater"
|
||||
footstep_sound = "water"
|
||||
footstep_sound = /decl/sound_category/water_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/beach/water
|
||||
name = "water"
|
||||
icon_state = "seashallow"
|
||||
base_icon_state = "seashallow"
|
||||
footstep_sound = "water"
|
||||
footstep_sound = /decl/sound_category/water_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/desert
|
||||
name = "desert sand"
|
||||
@@ -131,7 +131,7 @@
|
||||
icon = 'icons/turf/flooring/asteroid.dmi'
|
||||
base_icon = 'icons/turf/flooring/asteroid.dmi'
|
||||
initial_flooring = null
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
|
||||
/turf/simulated/floor/holofloor/desert/Initialize()
|
||||
. = ..()
|
||||
@@ -183,7 +183,7 @@
|
||||
return
|
||||
|
||||
/obj/structure/window/reinforced/holowindow/shatter(var/display_message = 1)
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
if(display_message)
|
||||
visible_message("[src] fades away as it shatters!")
|
||||
qdel(src)
|
||||
@@ -225,7 +225,7 @@
|
||||
|
||||
/obj/machinery/door/window/holowindoor/shatter(var/display_message = 1)
|
||||
src.density = 0
|
||||
playsound(src, "glass_break", 70, 1)
|
||||
playsound(src, /decl/sound_category/glass_break_sound, 70, 1)
|
||||
if(display_message)
|
||||
visible_message("[src] fades away as it shatters!")
|
||||
qdel(src)
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
installed_gun = gun
|
||||
size += gun.w_class
|
||||
to_chat(user, "<span class='notice'>You slide \the [gun] into the firing mechanism.</span>")
|
||||
playsound(src.loc, "crowbar", 50, 1)
|
||||
playsound(src.loc, /decl/sound_category/crowbar_sound, 50, 1)
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
installed_gun.forceMove(get_turf(src))
|
||||
to_chat(user, "<span class='notice'>You slide \the [installed_gun] out of the firing mechanism.</span>")
|
||||
size = initial(size)
|
||||
playsound(loc, "crowbar", 50, 1)
|
||||
playsound(loc, /decl/sound_category/crowbar_sound, 50, 1)
|
||||
installed_gun = null
|
||||
else
|
||||
to_chat(user, "<span class='notice'>There's no weapon to remove from the mechanism.</span>")
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
if(D.stat || D.weakened)
|
||||
return 0
|
||||
D.visible_message("<span class='warning'>[A] leg sweeps [D]!</span>")
|
||||
playsound(get_turf(A), "swing_hit", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/swing_hit_sound, 50, 1, -1)
|
||||
D.apply_damage(5, BRUTE)
|
||||
D.Weaken(2)
|
||||
return 1
|
||||
@@ -34,7 +34,7 @@
|
||||
/datum/martial_art/karak_virul/proc/painful_palm(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)//is actually lung punch
|
||||
A.do_attack_animation(D)
|
||||
A.visible_message("<span class='warning'>[A] strikes [D] with their open palm!</span>")
|
||||
playsound(get_turf(A), "punch", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/punch_sound, 50, 1, -1)
|
||||
var/obj/item/organ/external/affecting = D.get_organ(ran_zone(A.zone_sel.selecting))
|
||||
var/armor_block = D.run_armor_check(affecting, "melee")
|
||||
D.apply_damage(25, PAIN, affecting, armor_block)
|
||||
@@ -50,10 +50,10 @@
|
||||
A.visible_message("<span class='warning'>[A] strikes [D]'s [organ.name] with their closed fist!</span>")
|
||||
D.visible_message("<span class='danger'>[D]'s [organ.joint] [pick("gives way","caves in","crumbles","collapses")]!</span>")
|
||||
admin_attack_log(A, D, "dislocated [organ.joint].", "had his [organ.joint] dislocated.", "dislocated [organ.joint] of")
|
||||
playsound(get_turf(A), "punch", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/punch_sound, 50, 1, -1)
|
||||
return 1
|
||||
else
|
||||
playsound(get_turf(A), "punch", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/punch_sound, 50, 1, -1)
|
||||
D.apply_damage(5, BRUTE)
|
||||
A.visible_message("<span class='warning'>[A] strikes [D] with their closed fist!</span>")
|
||||
return 1
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
if(D.stat || D.weakened)
|
||||
return 0
|
||||
A.visible_message("<span class='warning'>[A] leg sweeps [D]!</span>")
|
||||
playsound(get_turf(A), "swing_hit", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/swing_hit_sound, 50, 1, -1)
|
||||
D.apply_damage(5, BRUTE)
|
||||
D.Weaken(2)
|
||||
return 1
|
||||
@@ -43,7 +43,7 @@
|
||||
/datum/martial_art/sol_combat/proc/neck_chop(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
|
||||
A.do_attack_animation(D)
|
||||
A.visible_message("<span class='warning'>[A] karate chops [D]'s neck!</span>")
|
||||
playsound(get_turf(A), "punch", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/punch_sound, 50, 1, -1)
|
||||
D.apply_damage(5, BRUTE)
|
||||
D.silent += 10
|
||||
return 1
|
||||
@@ -66,9 +66,9 @@ datum/martial_art/sol_combat/grab_act(var/mob/living/carbon/human/A, var/mob/liv
|
||||
picked_hit_type = "stomped on"
|
||||
D.apply_damage(bonus_damage, BRUTE)
|
||||
if(picked_hit_type == "kicked" || picked_hit_type == "stomped")
|
||||
playsound(get_turf(D), "swing_hit", 50, 1, -1)
|
||||
playsound(get_turf(D), /decl/sound_category/swing_hit_sound, 50, 1, -1)
|
||||
else
|
||||
playsound(get_turf(D), "punch", 50, 1, -1)
|
||||
playsound(get_turf(D), /decl/sound_category/punch_sound, 50, 1, -1)
|
||||
|
||||
A.visible_message("<span class='danger'>[A] [picked_hit_type] [D]!</span>")
|
||||
A.attack_log += text("\[[time_stamp()]\] <font color='red'>["[picked_hit_type]"] [D.name] ([D.ckey])</font>")
|
||||
@@ -96,7 +96,7 @@ datum/martial_art/sol_combat/grab_act(var/mob/living/carbon/human/A, var/mob/liv
|
||||
A.put_in_hands(I)
|
||||
else
|
||||
A.visible_message("<span class='danger'>[A] attempted to disarm [D]!</span>")
|
||||
playsound(D, "punchmiss", 25, 1, -1)
|
||||
playsound(D, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
return 1
|
||||
|
||||
/datum/martial_art/sol_combat/proc/sol_combat_help()
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
return 0
|
||||
TornadoAnimate(A)
|
||||
A.visible_message("<span class='warning'>[A] sweeps [D] with their tail!</span>")
|
||||
playsound(get_turf(A), "swing_hit", 50, 1, -1)
|
||||
playsound(get_turf(A), /decl/sound_category/swing_hit_sound, 50, 1, -1)
|
||||
D.apply_damage(5, BRUTE)
|
||||
D.Weaken(2)
|
||||
return 1
|
||||
@@ -77,7 +77,7 @@
|
||||
playsound(D, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||
else
|
||||
D.visible_message("<span class='danger'>[A] attempted to disarm [D]!</span>")
|
||||
playsound(D, "punchmiss", 25, 1, -1)
|
||||
playsound(D, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
return 1
|
||||
|
||||
/datum/martial_art/kis_khan/proc/hammering_strike(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
|
||||
|
||||
@@ -104,9 +104,9 @@
|
||||
//for use in material weapons. because tiles and stacks sound different. since cardboard baseball bats sound different from wooden ones and et cetera.
|
||||
var/weapon_drop_sound = 'sound/items/drop/metalweapon.ogg'
|
||||
var/weapon_pickup_sound = 'sound/items/pickup/metalweapon.ogg'
|
||||
var/weapon_hitsound = "swing_hit"
|
||||
var/weapon_hitsound = /decl/sound_category/swing_hit_sound
|
||||
|
||||
var/shatter_sound = "glass_break" //sound it makes when it breaks.
|
||||
var/shatter_sound = /decl/sound_category/glass_break_sound //sound it makes when it breaks.
|
||||
|
||||
/material/proc/build_rod_product(var/mob/user, var/obj/item/stack/used_stack, var/obj/item/stack/target_stack)
|
||||
if(!rod_product)
|
||||
@@ -701,7 +701,7 @@
|
||||
dooropen_noise = 'sound/effects/doorcreaky.ogg'
|
||||
door_icon_base = "wood"
|
||||
destruction_desc = "splinters"
|
||||
shatter_sound = "shatter_wood"
|
||||
shatter_sound = /decl/sound_category/wood_break_sound
|
||||
sheet_singular_name = "plank"
|
||||
sheet_plural_name = "planks"
|
||||
golem = SPECIES_GOLEM_WOOD
|
||||
@@ -711,7 +711,7 @@
|
||||
weapon_drop_sound = 'sound/items/drop/woodweapon.ogg'
|
||||
weapon_pickup_sound = 'sound/items/pickup/woodweapon.ogg'
|
||||
weapon_hitsound = 'sound/weapons/woodenhit.ogg'
|
||||
shatter_sound = "wood_break"
|
||||
shatter_sound = /decl/sound_category/wood_break_sound
|
||||
|
||||
/material/wood/log //This is gonna replace wood planks in a way for NBT, leaving it here for now
|
||||
name = MATERIAL_WOOD_LOG
|
||||
@@ -777,12 +777,11 @@
|
||||
stack_origin_tech = list(TECH_MATERIAL = 1)
|
||||
door_icon_base = "wood"
|
||||
destruction_desc = "crumples"
|
||||
shatter_sound = "shatter_cardboard"
|
||||
shatter_sound = /decl/sound_category/cardboard_break_sound
|
||||
golem = SPECIES_GOLEM_CARDBOARD
|
||||
drop_sound = 'sound/items/drop/cardboardbox.ogg'
|
||||
pickup_sound = 'sound/items/pickup/cardboardbox.ogg'
|
||||
weapon_hitsound = 'sound/weapons/cardboardhit.ogg'
|
||||
shatter_sound = "cardboard_break"
|
||||
|
||||
/material/cult
|
||||
name = MATERIAL_CULT
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
origin_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1)
|
||||
attack_verb = list("hit", "pierced", "sliced", "attacked")
|
||||
hitsound = 'sound/weapons/rapidslice.ogg'
|
||||
var/drill_sound = "pickaxe"
|
||||
var/drill_sound = /decl/sound_category/pickaxe_sound
|
||||
var/drill_verb = "excavating"
|
||||
var/autodrill = 0 //pickaxes must be manually swung to mine, drills can mine rocks via bump
|
||||
sharp = TRUE
|
||||
@@ -78,7 +78,7 @@
|
||||
|
||||
var/excavation_amount = 40
|
||||
var/wielded = FALSE
|
||||
var/wield_sound = "wield_generic"
|
||||
var/wield_sound = /decl/sound_category/generic_wield_sound
|
||||
var/unwield_sound = null
|
||||
var/force_unwielded = 5.0
|
||||
var/force_wielded = 15.0
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
canSmoothWith = null
|
||||
openspace_override_type = /turf/simulated/open/chasm/airless
|
||||
|
||||
footstep_sound = "asteroid"
|
||||
footstep_sound = /decl/sound_category/asteroid_footstep
|
||||
|
||||
/turf/unsimulated/floor/asteroid/basalt/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
|
||||
underlay_appearance.icon = icon
|
||||
@@ -92,7 +92,7 @@
|
||||
smooth = SMOOTH_MORE | SMOOTH_BORDER | SMOOTH_NO_CLEAR_ICON
|
||||
base_icon = 'icons/turf/smooth/ash.dmi'
|
||||
base_icon_state = "ash"
|
||||
footstep_sound = "sand"
|
||||
footstep_sound = /decl/sound_category/sand_footstep
|
||||
does_footprint = TRUE
|
||||
footprint_color = COLOR_ASH
|
||||
track_distance = 6
|
||||
|
||||
@@ -550,7 +550,7 @@ var/list/mineral_can_smooth_with = list(
|
||||
var/dug = 0 //Increments by 1 everytime it's dug. 11 is the last integer that should ever be here.
|
||||
var/digging
|
||||
has_resources = 1
|
||||
footstep_sound = "gravelstep"
|
||||
footstep_sound = /decl/sound_category/asteroid_footstep
|
||||
|
||||
roof_type = null
|
||||
|
||||
|
||||
@@ -307,7 +307,7 @@
|
||||
var/mob/living/simple_animal/S = M
|
||||
S.adjustBruteLoss(15)
|
||||
do_attack_animation(M)
|
||||
playsound(loc, "swing_hit", 50, 1, -1)
|
||||
playsound(loc, /decl/sound_category/swing_hit_sound, 50, 1, -1)
|
||||
is_attacking = 1
|
||||
update_icon()
|
||||
addtimer(CALLBACK(src, .proc/stop_attacking_cb), 2)
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
step_away(src,M,15)
|
||||
sleep(3)
|
||||
step_away(src,M,15)
|
||||
playsound(loc, "punch", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punch_sound, 25, 1, -1)
|
||||
for(var/mob/O in viewers(src, null))
|
||||
if ((O.client && !( O.blinded )))
|
||||
O.show_message(text("<span class='danger'>[] has punched []!</span>", M, src), 1)
|
||||
@@ -52,7 +52,7 @@
|
||||
adjustBruteLoss(damage)
|
||||
updatehealth()
|
||||
else
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
for(var/mob/O in viewers(src, null))
|
||||
if ((O.client && !( O.blinded )))
|
||||
O.show_message(text("<span class='danger'>[] has attempted to punch []!</span>", M, src), 1)
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
return 0
|
||||
|
||||
src.apply_damage(shock_damage, BURN, def_zone, used_weapon="Electrocution")
|
||||
playsound(loc, "sparks", 50, 1, -1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1, -1)
|
||||
if(shock_damage > 15 || tesla_shock)
|
||||
src.visible_message(
|
||||
SPAN_WARNING("[src] was shocked by the [source]!"), \
|
||||
|
||||
@@ -559,7 +559,7 @@
|
||||
|
||||
apply_damage(shock_damage, BURN, area, used_weapon="Electrocution")
|
||||
shock_damage *= 0.4
|
||||
playsound(loc, "sparks", 50, 1, -1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1, -1)
|
||||
|
||||
if (shock_damage > 15)
|
||||
visible_message(
|
||||
@@ -1715,11 +1715,11 @@
|
||||
if(self)
|
||||
U.visible_message(SPAN_DANGER("[U] pops their [current_limb.joint] back in!"), \
|
||||
SPAN_DANGER("You pop your [current_limb.joint] back in!"))
|
||||
playsound(src.loc, "fracture", 50, 1, -2)
|
||||
playsound(src.loc, /decl/sound_category/fracture_sound, 50, 1, -2)
|
||||
else
|
||||
U.visible_message(SPAN_DANGER("[U] pops [S]'s [current_limb.joint] back in!"), \
|
||||
SPAN_DANGER("You pop [S]'s [current_limb.joint] back in!"))
|
||||
playsound(src.loc, "fracture", 50, 1, -2)
|
||||
playsound(src.loc, /decl/sound_category/fracture_sound, 50, 1, -2)
|
||||
current_limb.undislocate()
|
||||
|
||||
/mob/living/carbon/human/drop_from_inventory(var/obj/item/W, var/atom/target = null)
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
H.do_attack_animation(src)
|
||||
var/damage = rand(0, 9)
|
||||
if(!damage)
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
visible_message("<span class='danger'>[H] has attempted to punch [src]!</span>")
|
||||
return 0
|
||||
var/obj/item/organ/external/affecting = get_organ(ran_zone(H.zone_sel.selecting))
|
||||
@@ -89,7 +89,7 @@
|
||||
if(HULK in H.mutations)
|
||||
damage += 5
|
||||
|
||||
playsound(loc, "punch", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punch_sound, 25, 1, -1)
|
||||
|
||||
visible_message("<span class='danger'>[H] has punched [src]!</span>")
|
||||
|
||||
@@ -455,7 +455,7 @@
|
||||
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||
return
|
||||
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
visible_message("<span class='danger'>[M] attempted to disarm [src]!</span>")
|
||||
return
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ emp_act
|
||||
if(martial_art && martial_art.deflection_chance)
|
||||
if(prob(martial_art.deflection_chance))
|
||||
src.visible_message("<span class='danger'>\The [src] deflects \the [P]!</span>")
|
||||
playsound(src, "bulletflyby_sound", 75, 1)
|
||||
playsound(src, /decl/sound_category/bulletflyby_sound, 75, 1)
|
||||
return 0
|
||||
|
||||
def_zone = check_zone(def_zone)
|
||||
|
||||
@@ -102,7 +102,7 @@
|
||||
var/list/equipment_overlays = list() // Extra overlays from equipped items
|
||||
|
||||
var/is_noisy = FALSE // if TRUE, movement should make sound.
|
||||
var/bodyfall_sound = "bodyfall"
|
||||
var/bodyfall_sound = /decl/sound_category/bodyfall_sound
|
||||
|
||||
var/last_x = 0
|
||||
var/last_y = 0
|
||||
|
||||
@@ -241,7 +241,7 @@
|
||||
var/default_accent = ACCENT_CETI
|
||||
var/zombie_type //What zombie species they become
|
||||
var/list/character_color_presets
|
||||
var/bodyfall_sound = "bodyfall" //default, can be used for species specific falling sounds
|
||||
var/bodyfall_sound = /decl/sound_category/bodyfall_sound //default, can be used for species specific falling sounds
|
||||
|
||||
/datum/species/proc/get_eyes(var/mob/living/carbon/human/H)
|
||||
return
|
||||
|
||||
@@ -378,7 +378,7 @@ var/global/list/golem_types = list(SPECIES_GOLEM_COAL,
|
||||
death_message = "shatters into many shards!"
|
||||
death_message_range = 7
|
||||
|
||||
death_sound = "glass_break"
|
||||
death_sound = /decl/sound_category/glass_break_sound
|
||||
|
||||
heat_level_1 = T0C+350
|
||||
heat_level_2 = T0C+550
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
|
||||
allowed_citizenships = list(CITIZENSHIP_NONE, CITIZENSHIP_BIESEL, CITIZENSHIP_COALITION, CITIZENSHIP_ERIDANI, CITIZENSHIP_ELYRA, CITIZENSHIP_GOLDEN)
|
||||
default_citizenship = CITIZENSHIP_NONE
|
||||
bodyfall_sound = "bodyfall_machine"
|
||||
bodyfall_sound = /decl/sound_category/bodyfall_machine_sound
|
||||
|
||||
allowed_accents = list(ACCENT_CETI, ACCENT_GIBSON, ACCENT_SOL, ACCENT_COC, ACCENT_ERIDANI, ACCENT_ERIDANIDREG, ACCENT_ELYRA, ACCENT_KONYAN, ACCENT_JUPITER, ACCENT_MARTIAN, ACCENT_LUNA,
|
||||
ACCENT_HIMEO, ACCENT_VENUS, ACCENT_VENUSJIN, ACCENT_PHONG, ACCENT_TTS)
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
/mob/living/carbon/human/proc/check_tag,
|
||||
/mob/living/carbon/human/proc/tie_hair)
|
||||
|
||||
bodyfall_sound = "bodyfall"
|
||||
bodyfall_sound = /decl/sound_category/bodyfall_sound
|
||||
|
||||
allowed_accents = list(ACCENT_CETI, ACCENT_GIBSON, ACCENT_SOL, ACCENT_COC, ACCENT_ERIDANI, ACCENT_ERIDANIDREG, ACCENT_ELYRA, ACCENT_KONYAN, ACCENT_JUPITER, ACCENT_MARTIAN, ACCENT_LUNA,
|
||||
ACCENT_HIMEO, ACCENT_VENUS, ACCENT_VENUSJIN, ACCENT_PHONG, ACCENT_SILVERSUN, ACCENT_TTS)
|
||||
|
||||
@@ -5,8 +5,8 @@ var/global/list/sparring_attack_cache = list()
|
||||
var/attack_verb = list("attack") // Empty hand hurt intent verb.
|
||||
var/attack_noun = list("fist")
|
||||
var/damage = 0 // Extra empty hand attack damage.
|
||||
var/attack_sound = "punch"
|
||||
var/miss_sound = "punchmiss"
|
||||
var/attack_sound = /decl/sound_category/punch_sound
|
||||
var/miss_sound = /decl/sound_category/punchmiss_sound
|
||||
var/shredding = 0 // Calls the old attack_alien() behavior on objects/mobs when on harm intent.
|
||||
var/sharp = 0
|
||||
var/edge = 0
|
||||
@@ -197,7 +197,7 @@ var/global/list/sparring_attack_cache = list()
|
||||
/datum/unarmed_attack/kick
|
||||
attack_verb = list("kicked", "kicked", "kicked", "kneed")
|
||||
attack_noun = list("kick", "kick", "kick", "knee strike")
|
||||
attack_sound = "swing_hit"
|
||||
attack_sound = /decl/sound_category/swing_hit_sound
|
||||
damage = 0
|
||||
attack_name = "kick"
|
||||
|
||||
@@ -242,7 +242,7 @@ var/global/list/sparring_attack_cache = list()
|
||||
/datum/unarmed_attack/stomp
|
||||
attack_verb = null
|
||||
attack_noun = list("stomp")
|
||||
attack_sound = "swing_hit"
|
||||
attack_sound = /decl/sound_category/swing_hit_sound
|
||||
damage = 0
|
||||
attack_name = "stomp"
|
||||
|
||||
|
||||
@@ -284,7 +284,7 @@
|
||||
if(victim == M)
|
||||
if(prob(60))
|
||||
visible_message(SPAN_WARNING("[M] attempts to wrestle \the [name] off!"))
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
else
|
||||
visible_message(SPAN_WARNING("[M] manages to wrestle \the [name] off!"))
|
||||
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||
@@ -305,7 +305,7 @@
|
||||
else
|
||||
if(prob(30))
|
||||
visible_message(SPAN_WARNING("[M] attempts to wrestle \the [name] off of [victim]!"))
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
else
|
||||
visible_message(SPAN_WARNING("[M] manages to wrestle \the [name] off of [victim]!"))
|
||||
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||
@@ -364,14 +364,14 @@
|
||||
sleep(3)
|
||||
step_away(src,M,15)
|
||||
|
||||
playsound(loc, "punch", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punch_sound, 25, 1, -1)
|
||||
visible_message(SPAN_DANGER("[M] has punched [src]!"), \
|
||||
SPAN_DANGER("[M] has punched [src]!"))
|
||||
|
||||
adjustBruteLoss(damage)
|
||||
updatehealth()
|
||||
else
|
||||
playsound(loc, "punchmiss", 25, 1, -1)
|
||||
playsound(loc, /decl/sound_category/punchmiss_sound, 25, 1, -1)
|
||||
visible_message(SPAN_DANGER("[M] has attempted to punch [src]!"))
|
||||
return
|
||||
|
||||
|
||||
@@ -695,7 +695,7 @@
|
||||
update_icon()
|
||||
if(do_after(src, 32))
|
||||
src.visible_message(SPAN_WARNING("[src] rips up \the [T]."))
|
||||
playsound(src.loc, "crowbar", 100, 1)
|
||||
playsound(src.loc, /decl/sound_category/crowbar_sound, 100, 1)
|
||||
T.make_plating(1)
|
||||
busy = 0
|
||||
update_icon()
|
||||
|
||||
@@ -246,7 +246,7 @@ mob/living/simple_animal/hostile/hitby(atom/movable/AM as mob|obj,var/speed = TH
|
||||
|
||||
if(casingtype)
|
||||
new casingtype(get_turf(src))
|
||||
playsound(src, "casing_drop", 50, 1)
|
||||
playsound(src, /decl/sound_category/casing_drop_sound, 50, 1)
|
||||
|
||||
stance = HOSTILE_STANCE_IDLE
|
||||
target_mob = null
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
melee_damage_lower = 0
|
||||
melee_damage_upper = 0
|
||||
attacktext = "barrels into"
|
||||
attack_sound = "punch"
|
||||
attack_sound = /decl/sound_category/punch_sound
|
||||
a_intent = I_HURT
|
||||
speak_emote = list("chirps","buzzes","whirrs")
|
||||
emote_hear = list("chirps cheerfully","buzzes","whirrs","hums placidly","chirps","hums")
|
||||
|
||||
@@ -694,7 +694,7 @@ mob/living/simple_animal/bullet_act(var/obj/item/projectile/Proj)
|
||||
//Todo: add snowflakey shit to it.
|
||||
/mob/living/simple_animal/electrocute_act(var/shock_damage, var/obj/source, var/base_siemens_coeff = 1.0, var/def_zone = null, var/tesla_shock = 0, var/ground_zero)
|
||||
apply_damage(shock_damage, BURN)
|
||||
playsound(loc, "sparks", 50, 1, -1)
|
||||
playsound(loc, /decl/sound_category/spark_sound, 50, 1, -1)
|
||||
spark(loc, 5, alldirs)
|
||||
visible_message(SPAN_WARNING("\The [src] was shocked by \the [source]!"), SPAN_WARNING("You are shocked by \the [source]!"), SPAN_WARNING("You hear an electrical crack!"))
|
||||
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
target.apply_effect(20, PARALYZE)
|
||||
target.visible_message("<span class='danger'>[target] [target.species.knockout_message]</span>")
|
||||
|
||||
playsound(attacker.loc, "swing_hit", 25, 1, -1)
|
||||
playsound(attacker.loc, /decl/sound_category/swing_hit_sound, 25, 1, -1)
|
||||
attacker.attack_log += text("\[[time_stamp()]\] <font color='red'>Headbutted [target.name] ([target.ckey])</font>")
|
||||
target.attack_log += text("\[[time_stamp()]\] <font color='orange'>Headbutted by [attacker.name] ([attacker.ckey])</font>")
|
||||
msg_admin_attack("[key_name(attacker)] has headbutted [key_name(target)]",ckey=key_name(attacker),ckey_target=key_name(target))
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user