Refactors Dance Machine + deletes a bunch of sound files

This commit is contained in:
KorPhaeron
2018-04-01 09:42:32 -05:00
committed by CitadelStationBot
parent 75a49c53c8
commit 01ff7cf8da
11 changed files with 140 additions and 110 deletions

View File

@@ -113,7 +113,7 @@
/turf/open/floor/mineral/plasma, /turf/open/floor/mineral/plasma,
/area/shuttle/escape) /area/shuttle/escape)
"v" = ( "v" = (
/obj/machinery/disco/indestructible, /obj/machinery/jukebox/disco/indestructible,
/turf/open/floor/light/colour_cycle, /turf/open/floor/light/colour_cycle,
/area/shuttle/escape) /area/shuttle/escape)
"w" = ( "w" = (

View File

@@ -1,29 +1,28 @@
// DISCO DANCE MACHINE - For admin, engineering and shuttle memes/abuse. /obj/machinery/jukebox
name = "jukebox"
/obj/machinery/disco desc = "A classic music player.."
name = "radiant dance machine mark IV" icon = 'icons/obj/stationobjs.dmi'
desc = "The first three prototypes were discontinued after mass casualty incidents." icon_state = "jukebox"
icon = 'icons/obj/lighting.dmi' anchored = TRUE
icon_state = "disco0"
anchored = FALSE
verb_say = "states" verb_say = "states"
density = TRUE density = TRUE
req_access = list(ACCESS_ENGINE) req_access = list(ACCESS_BAR)
var/active = FALSE var/active = FALSE
var/list/rangers = list() var/list/rangers = list()
var/charge = 35
var/stop = 0 var/stop = 0
var/list/spotlights = list() var/list/songs = list()
var/list/sparkles = list()
var/static/list/songs = list(
new /datum/track("Engineering's Basic Beat", 'sound/misc/disco.ogg', 600, 5),
new /datum/track("Engineering's Domination Dance", 'sound/misc/e1m1.ogg', 950, 6),
new /datum/track("Engineering's Superiority Shimmy", 'sound/misc/paradox.ogg', 2400, 4),
new /datum/track("Engineering's Ultimate High-Energy Hustle", 'sound/misc/boogie2.ogg', 1770, 5),
)
var/datum/track/selection = null var/datum/track/selection = null
/obj/machinery/disco/indestructible /obj/machinery/jukebox/disco
name = "radiant dance machine mark IV"
desc = "The first three prototypes were discontinued after mass casualty incidents."
icon_state = "disco"
req_access = list(ACCESS_ENGINE)
anchored = FALSE
var/list/spotlights = list()
var/list/sparkles = list()
/obj/machinery/jukebox/disco/indestructible
name = "radiant dance machine mark V" name = "radiant dance machine mark V"
desc = "Now redesigned with data gathered from the extensive disco and plasma research." desc = "Now redesigned with data gathered from the extensive disco and plasma research."
req_access = null req_access = null
@@ -36,7 +35,6 @@
var/song_path = null var/song_path = null
var/song_length = 0 var/song_length = 0
var/song_beat = 0 var/song_beat = 0
var/GBP_required = 0
/datum/track/New(name, path, length, beat) /datum/track/New(name, path, length, beat)
song_name = name song_name = name
@@ -44,29 +42,27 @@
song_length = length song_length = length
song_beat = beat song_beat = beat
/obj/machinery/disco/proc/add_track(file, name, length, beat) /obj/machinery/jukebox/Initialize()
var/sound/S = file
if(!istype(S))
return
if(!name)
name = "[file]"
if(!beat)
beat = 5
if(!length)
length = 2400 //Unless there's a way to discern via BYOND.
var/datum/track/T = new /datum/track(name, file, length, beat)
songs += T
/obj/machinery/disco/Initialize()
. = ..() . = ..()
selection = songs[1] var/list/tracks = flist("config/jukebox_music/sounds/")
for(var/S in tracks)
var/datum/track/T = new()
T.song_path = file("config/jukebox_music/sounds/[S]")
var/list/L = splittext(S,"+")
T.song_name = L[1]
T.song_length = text2num(L[2])
T.song_beat = text2num(L[3])
songs |= T
/obj/machinery/disco/Destroy() if(songs.len)
selection = pick(songs)
/obj/machinery/jukebox/Destroy()
dance_over() dance_over()
return ..() return ..()
/obj/machinery/disco/attackby(obj/item/O, mob/user, params) /obj/machinery/jukebox/attackby(obj/item/O, mob/user, params)
if(!active && !(flags_1 & NODECONSTRUCT_1)) if(!active && !(flags_1 & NODECONSTRUCT_1))
if(istype(O, /obj/item/wrench)) if(istype(O, /obj/item/wrench))
if(!anchored && !isinspace()) if(!anchored && !isinspace())
@@ -79,25 +75,35 @@
return return
return ..() return ..()
/obj/machinery/disco/update_icon() /obj/machinery/jukebox/update_icon()
if(active) if(active)
icon_state = "disco1" icon_state = "[initial(icon_state)]-active"
else else
icon_state = "disco0" icon_state = "[initial(icon_state)]"
..()
<<<<<<< HEAD
/obj/machinery/disco/interact(mob/user) /obj/machinery/disco/interact(mob/user)
=======
/obj/machinery/jukebox/ui_interact(mob/user)
. = ..()
>>>>>>> 4471461... Refactors Dance Machine + deletes a bunch of sound files (#36815)
if (!anchored) if (!anchored)
to_chat(user,"<span class='warning'>This device must be anchored by a wrench!</span>") to_chat(user,"<span class='warning'>This device must be anchored by a wrench!</span>")
return return
if(!allowed(user)) if(!allowed(user))
to_chat(user,"<span class='warning'>Error: Access Denied - Message: Only the engineering department can be trusted with this kind of power.</span>") to_chat(user,"<span class='warning'>Error: Access Denied.</span>")
user.playsound_local(src,'sound/misc/compiler-failure.ogg', 25, 1) user.playsound_local(src,'sound/misc/compiler-failure.ogg', 25, 1)
return return
if(!Adjacent(user) && !isAI(user)) if(!Adjacent(user) && !isAI(user))
return return
<<<<<<< HEAD
user.set_machine(src) user.set_machine(src)
=======
if(!songs.len)
to_chat(user,"<span class='warning'>Error: No music tracks have been authorized for your station. Petition Central Command to resolve this issue.</span>")
playsound(src,'sound/misc/compiler-failure.ogg', 25, 1)
return
>>>>>>> 4471461... Refactors Dance Machine + deletes a bunch of sound files (#36815)
var/list/dat = list() var/list/dat = list()
dat +="<div class='statusDisplay' style='text-align:center'>" dat +="<div class='statusDisplay' style='text-align:center'>"
dat += "<b><A href='?src=[REF(src)];action=toggle'>[!active ? "BREAK IT DOWN" : "SHUT IT DOWN"]<b></A><br>" dat += "<b><A href='?src=[REF(src)];action=toggle'>[!active ? "BREAK IT DOWN" : "SHUT IT DOWN"]<b></A><br>"
@@ -105,23 +111,12 @@
dat += "<A href='?src=[REF(src)];action=select'> Select Track</A><br>" dat += "<A href='?src=[REF(src)];action=select'> Select Track</A><br>"
dat += "Track Selected: [selection.song_name]<br>" dat += "Track Selected: [selection.song_name]<br>"
dat += "Track Length: [DisplayTimeText(selection.song_length)]<br><br>" dat += "Track Length: [DisplayTimeText(selection.song_length)]<br><br>"
dat += "<br>DJ's Soundboard:<b><br>" var/datum/browser/popup = new(user, "vending", "[name]", 400, 350)
dat +="<div class='statusDisplay'><div style='text-align:center'>"
dat += "<A href='?src=[REF(src)];action=horn'>Air Horn</A> "
dat += "<A href='?src=[REF(src)];action=alert'>Station Alert</A> "
dat += "<A href='?src=[REF(src)];action=siren'>Warning Siren</A> "
dat += "<A href='?src=[REF(src)];action=honk'>Honk</A><br>"
dat += "<A href='?src=[REF(src)];action=pump'>Shotgun Pump</A>"
dat += "<A href='?src=[REF(src)];action=pop'>Gunshot</A>"
dat += "<A href='?src=[REF(src)];action=saber'>Esword</A>"
dat += "<A href='?src=[REF(src)];action=harm'>Harm Alarm</A>"
dat += "<A href='?src=[REF(src)];action=yeehaw'>Yeehaw</A>"
var/datum/browser/popup = new(user, "vending", "Radiance Dance Machine - Mark IV", 400, 350)
popup.set_content(dat.Join()) popup.set_content(dat.Join())
popup.open() popup.open()
/obj/machinery/disco/Topic(href, href_list) /obj/machinery/jukebox/Topic(href, href_list)
if(..()) if(..())
return return
add_fingerprint(usr) add_fingerprint(usr)
@@ -134,11 +129,8 @@
to_chat(usr, "<span class='warning'>Error: The device is still resetting from the last activation, it will be ready again in [DisplayTimeText(stop-world.time)].</span>") to_chat(usr, "<span class='warning'>Error: The device is still resetting from the last activation, it will be ready again in [DisplayTimeText(stop-world.time)].</span>")
playsound(src, 'sound/misc/compiler-failure.ogg', 50, 1) playsound(src, 'sound/misc/compiler-failure.ogg', 50, 1)
return return
active = TRUE activate_music()
update_icon()
dance_setup()
START_PROCESSING(SSobj, src) START_PROCESSING(SSobj, src)
lights_spin()
updateUsrDialog() updateUsrDialog()
else if(active) else if(active)
stop = 0 stop = 0
@@ -156,34 +148,19 @@
return return
selection = available[selected] selection = available[selected]
updateUsrDialog() updateUsrDialog()
if("horn")
deejay('sound/items/airhorn2.ogg')
if("alert")
deejay('sound/misc/notice1.ogg')
if("siren")
deejay('sound/machines/engine_alert1.ogg')
if("honk")
deejay('sound/items/bikehorn.ogg')
if("pump")
deejay('sound/weapons/shotgunpump.ogg')
if("pop")
deejay('sound/weapons/gunshot3.ogg')
if("saber")
deejay('sound/weapons/saberon.ogg')
if("harm")
deejay('sound/ai/harmalarm.ogg')
if("yeehaw")
deejay('sound/misc/Yeehaw.ogg')
/obj/machinery/disco/proc/deejay(var/S) /obj/machinery/jukebox/proc/activate_music()
if (QDELETED(src) || !active || charge < 5) active = TRUE
to_chat(usr, "<span class='warning'>The device is not able to play more DJ sounds at this time.</span>") update_icon()
return START_PROCESSING(SSobj, src)
charge -= 5
playsound(src, S,300,1)
/obj/machinery/disco/proc/dance_setup()
stop = world.time + selection.song_length stop = world.time + selection.song_length
/obj/machinery/jukebox/disco/activate_music()
..()
dance_setup()
lights_spin()
/obj/machinery/jukebox/disco/proc/dance_setup()
var/turf/cen = get_turf(src) var/turf/cen = get_turf(src)
FOR_DVIEW(var/turf/t, 3, get_turf(src),INVISIBILITY_LIGHTING) FOR_DVIEW(var/turf/t, 3, get_turf(src),INVISIBILITY_LIGHTING)
if(t.x == cen.x && t.y > cen.y) if(t.x == cen.x && t.y > cen.y)
@@ -245,14 +222,14 @@
continue continue
FOR_DVIEW_END FOR_DVIEW_END
/obj/machinery/disco/proc/hierofunk() /obj/machinery/jukebox/disco/proc/hierofunk()
for(var/i in 1 to 10) for(var/i in 1 to 10)
spawn_atom_to_turf(/obj/effect/temp_visual/hierophant/telegraph/edge, src, 1, FALSE) spawn_atom_to_turf(/obj/effect/temp_visual/hierophant/telegraph/edge, src, 1, FALSE)
sleep(5) sleep(5)
#define DISCO_INFENO_RANGE (rand(85, 115)*0.01) #define DISCO_INFENO_RANGE (rand(85, 115)*0.01)
/obj/machinery/disco/proc/lights_spin() /obj/machinery/jukebox/disco/proc/lights_spin()
for(var/i in 1 to 25) for(var/i in 1 to 25)
if(QDELETED(src) || !active) if(QDELETED(src) || !active)
return return
@@ -330,7 +307,7 @@
#undef DISCO_INFENO_RANGE #undef DISCO_INFENO_RANGE
/obj/machinery/disco/proc/dance(var/mob/living/M) //Show your moves /obj/machinery/jukebox/disco/proc/dance(var/mob/living/M) //Show your moves
set waitfor = FALSE set waitfor = FALSE
switch(rand(0,9)) switch(rand(0,9))
if(0 to 1) if(0 to 1)
@@ -342,7 +319,7 @@
if(7 to 9) if(7 to 9)
dance5(M) dance5(M)
/obj/machinery/disco/proc/dance2(var/mob/living/M) /obj/machinery/jukebox/disco/proc/dance2(var/mob/living/M)
for(var/i = 1, i < 10, i++) for(var/i = 1, i < 10, i++)
for(var/d in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH)) for(var/d in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH))
M.setDir(d) M.setDir(d)
@@ -351,7 +328,7 @@
sleep(1) sleep(1)
sleep(20) sleep(20)
/obj/machinery/disco/proc/dance3(var/mob/living/M) /obj/machinery/jukebox/disco/proc/dance3(var/mob/living/M)
var/matrix/initial_matrix = matrix(M.transform) var/matrix/initial_matrix = matrix(M.transform)
for (var/i in 1 to 75) for (var/i in 1 to 75)
if (!M) if (!M)
@@ -399,8 +376,13 @@
M.lying_fix() M.lying_fix()
<<<<<<< HEAD
/obj/machinery/disco/proc/dance4(var/mob/living/M) /obj/machinery/disco/proc/dance4(var/mob/living/M)
//var/speed = rand(1,3) // CIT CHANGE //var/speed = rand(1,3) // CIT CHANGE
=======
/obj/machinery/jukebox/disco/proc/dance4(var/mob/living/M)
var/speed = rand(1,3)
>>>>>>> 4471461... Refactors Dance Machine + deletes a bunch of sound files (#36815)
set waitfor = 0 set waitfor = 0
/*var/time = 30 CIT CHANGE -- replaces dance4 with rapid spinning so that disco balls dont make weird shit happen /*var/time = 30 CIT CHANGE -- replaces dance4 with rapid spinning so that disco balls dont make weird shit happen
while(time) while(time)
@@ -411,7 +393,7 @@
time--*/ time--*/
M.SpinAnimation(1,30) M.SpinAnimation(1,30)
/obj/machinery/disco/proc/dance5(var/mob/living/M) /obj/machinery/jukebox/disco/proc/dance5(var/mob/living/M)
animate(M, transform = matrix(180, MATRIX_ROTATE), time = 1, loop = 0) animate(M, transform = matrix(180, MATRIX_ROTATE), time = 1, loop = 0)
var/matrix/initial_matrix = matrix(M.transform) var/matrix/initial_matrix = matrix(M.transform)
for (var/i in 1 to 60) for (var/i in 1 to 60)
@@ -446,30 +428,23 @@
sleep(1) sleep(1)
M.lying_fix() M.lying_fix()
/mob/living/proc/lying_fix() /mob/living/proc/lying_fix()
animate(src, transform = null, time = 1, loop = 0) animate(src, transform = null, time = 1, loop = 0)
lying_prev = 0 lying_prev = 0
/obj/machinery/disco/proc/dance_over() /obj/machinery/jukebox/proc/dance_over()
for(var/obj/item/device/flashlight/spotlight/SL in spotlights)
qdel(SL)
spotlights.Cut()
for(var/obj/effect/overlay/sparkles/SP in sparkles)
qdel(SP)
sparkles.Cut()
for(var/mob/living/L in rangers) for(var/mob/living/L in rangers)
if(!L || !L.client) if(!L || !L.client)
continue continue
L.stop_sound_channel(CHANNEL_JUKEBOX) L.stop_sound_channel(CHANNEL_JUKEBOX)
rangers = list() rangers = list()
/obj/machinery/jukebox/disco/dance_over()
..()
QDEL_LIST(spotlights)
QDEL_LIST(sparkles)
/obj/machinery/jukebox/process()
/obj/machinery/disco/process()
if(charge<35)
charge += 1
if(world.time < stop && active) if(world.time < stop && active)
var/sound/song_played = sound(selection.song_path) var/sound/song_played = sound(selection.song_path)
@@ -479,8 +454,6 @@
if(!(M in rangers)) if(!(M in rangers))
rangers[M] = TRUE rangers[M] = TRUE
M.playsound_local(get_turf(M), null, 100, channel = CHANNEL_JUKEBOX, S = song_played) M.playsound_local(get_turf(M), null, 100, channel = CHANNEL_JUKEBOX, S = song_played)
if(prob(5+(allowed(M)*4)) && M.canmove)
dance(M)
for(var/mob/L in rangers) for(var/mob/L in rangers)
if(get_dist(src,L) > 10) if(get_dist(src,L) > 10)
rangers -= L rangers -= L
@@ -492,5 +465,13 @@
STOP_PROCESSING(SSobj, src) STOP_PROCESSING(SSobj, src)
dance_over() dance_over()
playsound(src,'sound/machines/terminal_off.ogg',50,1) playsound(src,'sound/machines/terminal_off.ogg',50,1)
icon_state = "disco0" update_icon()
stop = world.time + 100 stop = world.time + 100
/obj/machinery/jukebox/disco/process()
. = ..()
if(active)
for(var/mob/M in rangers)
if(prob(5+(allowed(M)*4)) && M.canmove)
dance(M)

View File

@@ -33,7 +33,7 @@
/mob/living/simple_animal/hostile/netherworld/migo/Initialize() /mob/living/simple_animal/hostile/netherworld/migo/Initialize()
. = ..() . = ..()
migo_sounds = list('sound/items/bubblewrap.ogg', 'sound/items/change_jaws.ogg', 'sound/items/crowbar.ogg', 'sound/items/drink.ogg', 'sound/items/deconstruct.ogg', 'sound/items/carhorn.ogg', 'sound/items/change_drill.ogg', 'sound/items/dodgeball.ogg', 'sound/items/eatfood.ogg', 'sound/items/megaphone.ogg', 'sound/items/screwdriver.ogg', 'sound/items/weeoo1.ogg', 'sound/items/wirecutter.ogg', 'sound/items/welder.ogg', 'sound/items/zip.ogg', 'sound/items/rped.ogg', 'sound/items/ratchet.ogg', 'sound/items/polaroid1.ogg', 'sound/items/pshoom.ogg', 'sound/items/airhorn.ogg', 'sound/items/geiger/high1.ogg', 'sound/items/geiger/high2.ogg', 'sound/voice/bcreep.ogg', 'sound/voice/biamthelaw.ogg', 'sound/voice/ed209_20sec.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss6.ogg', 'sound/voice/mpatchedup.ogg', 'sound/voice/mfeelbetter.ogg', 'sound/voice/human/manlaugh1.ogg', 'sound/voice/human/womanlaugh.ogg', 'sound/weapons/sear.ogg', 'sound/ambience/antag/clockcultalr.ogg', 'sound/ambience/antag/ling_aler.ogg', 'sound/ambience/antag/tatoralert.ogg', 'sound/ambience/antag/monkey.ogg', 'sound/mecha/nominal.ogg', 'sound/mecha/weapdestr.ogg', 'sound/mecha/critdestr.ogg', 'sound/mecha/imag_enh.ogg', 'sound/effects/adminhelp.ogg', 'sound/effects/alert.ogg', 'sound/effects/attackblob.ogg', 'sound/effects/bamf.ogg', 'sound/effects/blobattack.ogg', 'sound/effects/break_stone.ogg', 'sound/effects/bubbles.ogg', 'sound/effects/bubbles2.ogg', 'sound/effects/clang.ogg', 'sound/effects/clockcult_gateway_disrupted.ogg', 'sound/effects/clownstep2.ogg', 'sound/effects/curse1.ogg', 'sound/effects/dimensional_rend.ogg', 'sound/effects/doorcreaky.ogg', 'sound/effects/empulse.ogg', 'sound/effects/explosion_distant.ogg', 'sound/effects/explosionfar.ogg', 'sound/effects/explosion1.ogg', 'sound/effects/grillehit.ogg', 'sound/effects/genetics.ogg', 'sound/effects/heart_beat.ogg', 'sound/effects/hyperspace_begin.ogg', 'sound/effects/hyperspace_end.ogg', 'sound/effects/his_grace_awaken.ogg', 'sound/effects/pai_boot.ogg', 'sound/effects/phasein.ogg', 'sound/effects/picaxe1.ogg', 'sound/effects/ratvar_reveal.ogg', 'sound/effects/sparks1.ogg', 'sound/effects/smoke.ogg', 'sound/effects/splat.ogg', 'sound/effects/snap.ogg', 'sound/effects/tendril_destroyed.ogg', 'sound/effects/supermatter.ogg', 'sound/misc/desceration-01.ogg', 'sound/misc/desceration-02.ogg', 'sound/misc/desceration-03.ogg', 'sound/misc/bloblarm.ogg', 'sound/misc/airraid.ogg', 'sound/misc/bang.ogg', 'sound/misc/disco.ogg', 'sound/misc/highlander.ogg', 'sound/misc/interference.ogg', 'sound/misc/notice1.ogg', 'sound/misc/notice2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/misc/slip.ogg', 'sound/misc/splort.ogg', 'sound/weapons/armbomb.ogg', 'sound/weapons/beam_sniper.ogg', 'sound/weapons/chainsawhit.ogg', 'sound/weapons/emitter.ogg', 'sound/weapons/emitter2.ogg', 'sound/weapons/blade1.ogg', 'sound/weapons/bladeslice.ogg', 'sound/weapons/blastcannon.ogg', 'sound/weapons/blaster.ogg', 'sound/weapons/bulletflyby3.ogg', 'sound/weapons/circsawhit.ogg', 'sound/weapons/cqchit2.ogg', 'sound/weapons/drill.ogg', 'sound/weapons/genhit1.ogg', 'sound/weapons/gunshot_silenced.ogg', 'sound/weapons/gunshot2.ogg', 'sound/weapons/handcuffs.ogg', 'sound/weapons/homerun.ogg', 'sound/weapons/kenetic_accel.ogg', 'sound/machines/clockcult/steam_whoosh.ogg', 'sound/machines/fryer/deep_fryer_emerge.ogg', 'sound/machines/airlock.ogg', 'sound/machines/airlock_alien_prying.ogg', 'sound/machines/airlockclose.ogg', 'sound/machines/airlockforced.ogg', 'sound/machines/airlockopen.ogg', 'sound/machines/alarm.ogg', 'sound/machines/blender.ogg', 'sound/machines/boltsdown.ogg', 'sound/machines/boltsup.ogg', 'sound/machines/buzz-sigh.ogg', 'sound/machines/buzz-two.ogg', 'sound/machines/chime.ogg', 'sound/machines/cryo_warning.ogg', 'sound/machines/defib_charge.ogg', 'sound/machines/defib_failed.ogg', 'sound/machines/defib_ready.ogg', 'sound/machines/defib_zap.ogg', 'sound/machines/deniedbeep.ogg', 'sound/machines/ding.ogg', 'sound/machines/disposalflush.ogg', 'sound/machines/door_close.ogg', 'sound/machines/door_open.ogg', 'sound/machines/engine_alert1.ogg', 'sound/machines/engine_alert2.ogg', 'sound/machines/hiss.ogg', 'sound/machines/honkbot_evil_laugh.ogg', 'sound/machines/juicer.ogg', 'sound/machines/ping.ogg', 'sound/machines/signal.ogg', 'sound/machines/synth_no.ogg', 'sound/machines/synth_yes.ogg', 'sound/machines/terminal_alert.ogg', 'sound/machines/triple_beep.ogg', 'sound/machines/twobeep.ogg', 'sound/machines/ventcrawl.ogg', 'sound/machines/warning-buzzer.ogg', 'sound/ai/outbreak5.ogg', 'sound/ai/outbreak7.ogg', 'sound/ai/poweroff.ogg', 'sound/ai/radiation.ogg', 'sound/ai/shuttlecalled.ogg', 'sound/ai/shuttledock.ogg', 'sound/ai/shuttlerecalled.ogg', 'sound/ai/aimalf.ogg') //hahahaha fuck you code divers migo_sounds = list('sound/items/bubblewrap.ogg', 'sound/items/change_jaws.ogg', 'sound/items/crowbar.ogg', 'sound/items/drink.ogg', 'sound/items/deconstruct.ogg', 'sound/items/carhorn.ogg', 'sound/items/change_drill.ogg', 'sound/items/dodgeball.ogg', 'sound/items/eatfood.ogg', 'sound/items/megaphone.ogg', 'sound/items/screwdriver.ogg', 'sound/items/weeoo1.ogg', 'sound/items/wirecutter.ogg', 'sound/items/welder.ogg', 'sound/items/zip.ogg', 'sound/items/rped.ogg', 'sound/items/ratchet.ogg', 'sound/items/polaroid1.ogg', 'sound/items/pshoom.ogg', 'sound/items/airhorn.ogg', 'sound/items/geiger/high1.ogg', 'sound/items/geiger/high2.ogg', 'sound/voice/bcreep.ogg', 'sound/voice/biamthelaw.ogg', 'sound/voice/ed209_20sec.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss6.ogg', 'sound/voice/mpatchedup.ogg', 'sound/voice/mfeelbetter.ogg', 'sound/voice/human/manlaugh1.ogg', 'sound/voice/human/womanlaugh.ogg', 'sound/weapons/sear.ogg', 'sound/ambience/antag/clockcultalr.ogg', 'sound/ambience/antag/ling_aler.ogg', 'sound/ambience/antag/tatoralert.ogg', 'sound/ambience/antag/monkey.ogg', 'sound/mecha/nominal.ogg', 'sound/mecha/weapdestr.ogg', 'sound/mecha/critdestr.ogg', 'sound/mecha/imag_enh.ogg', 'sound/effects/adminhelp.ogg', 'sound/effects/alert.ogg', 'sound/effects/attackblob.ogg', 'sound/effects/bamf.ogg', 'sound/effects/blobattack.ogg', 'sound/effects/break_stone.ogg', 'sound/effects/bubbles.ogg', 'sound/effects/bubbles2.ogg', 'sound/effects/clang.ogg', 'sound/effects/clockcult_gateway_disrupted.ogg', 'sound/effects/clownstep2.ogg', 'sound/effects/curse1.ogg', 'sound/effects/dimensional_rend.ogg', 'sound/effects/doorcreaky.ogg', 'sound/effects/empulse.ogg', 'sound/effects/explosion_distant.ogg', 'sound/effects/explosionfar.ogg', 'sound/effects/explosion1.ogg', 'sound/effects/grillehit.ogg', 'sound/effects/genetics.ogg', 'sound/effects/heart_beat.ogg', 'sound/effects/hyperspace_begin.ogg', 'sound/effects/hyperspace_end.ogg', 'sound/effects/his_grace_awaken.ogg', 'sound/effects/pai_boot.ogg', 'sound/effects/phasein.ogg', 'sound/effects/picaxe1.ogg', 'sound/effects/ratvar_reveal.ogg', 'sound/effects/sparks1.ogg', 'sound/effects/smoke.ogg', 'sound/effects/splat.ogg', 'sound/effects/snap.ogg', 'sound/effects/tendril_destroyed.ogg', 'sound/effects/supermatter.ogg', 'sound/misc/desceration-01.ogg', 'sound/misc/desceration-02.ogg', 'sound/misc/desceration-03.ogg', 'sound/misc/bloblarm.ogg', 'sound/misc/airraid.ogg', 'sound/misc/bang.ogg','sound/misc/highlander.ogg', 'sound/misc/interference.ogg', 'sound/misc/notice1.ogg', 'sound/misc/notice2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/misc/slip.ogg', 'sound/misc/splort.ogg', 'sound/weapons/armbomb.ogg', 'sound/weapons/beam_sniper.ogg', 'sound/weapons/chainsawhit.ogg', 'sound/weapons/emitter.ogg', 'sound/weapons/emitter2.ogg', 'sound/weapons/blade1.ogg', 'sound/weapons/bladeslice.ogg', 'sound/weapons/blastcannon.ogg', 'sound/weapons/blaster.ogg', 'sound/weapons/bulletflyby3.ogg', 'sound/weapons/circsawhit.ogg', 'sound/weapons/cqchit2.ogg', 'sound/weapons/drill.ogg', 'sound/weapons/genhit1.ogg', 'sound/weapons/gunshot_silenced.ogg', 'sound/weapons/gunshot2.ogg', 'sound/weapons/handcuffs.ogg', 'sound/weapons/homerun.ogg', 'sound/weapons/kenetic_accel.ogg', 'sound/machines/clockcult/steam_whoosh.ogg', 'sound/machines/fryer/deep_fryer_emerge.ogg', 'sound/machines/airlock.ogg', 'sound/machines/airlock_alien_prying.ogg', 'sound/machines/airlockclose.ogg', 'sound/machines/airlockforced.ogg', 'sound/machines/airlockopen.ogg', 'sound/machines/alarm.ogg', 'sound/machines/blender.ogg', 'sound/machines/boltsdown.ogg', 'sound/machines/boltsup.ogg', 'sound/machines/buzz-sigh.ogg', 'sound/machines/buzz-two.ogg', 'sound/machines/chime.ogg', 'sound/machines/cryo_warning.ogg', 'sound/machines/defib_charge.ogg', 'sound/machines/defib_failed.ogg', 'sound/machines/defib_ready.ogg', 'sound/machines/defib_zap.ogg', 'sound/machines/deniedbeep.ogg', 'sound/machines/ding.ogg', 'sound/machines/disposalflush.ogg', 'sound/machines/door_close.ogg', 'sound/machines/door_open.ogg', 'sound/machines/engine_alert1.ogg', 'sound/machines/engine_alert2.ogg', 'sound/machines/hiss.ogg', 'sound/machines/honkbot_evil_laugh.ogg', 'sound/machines/juicer.ogg', 'sound/machines/ping.ogg', 'sound/machines/signal.ogg', 'sound/machines/synth_no.ogg', 'sound/machines/synth_yes.ogg', 'sound/machines/terminal_alert.ogg', 'sound/machines/triple_beep.ogg', 'sound/machines/twobeep.ogg', 'sound/machines/ventcrawl.ogg', 'sound/machines/warning-buzzer.ogg', 'sound/ai/outbreak5.ogg', 'sound/ai/outbreak7.ogg', 'sound/ai/poweroff.ogg', 'sound/ai/radiation.ogg', 'sound/ai/shuttlecalled.ogg', 'sound/ai/shuttledock.ogg', 'sound/ai/shuttlerecalled.ogg', 'sound/ai/aimalf.ogg') //hahahaha fuck you code divers
/mob/living/simple_animal/hostile/netherworld/migo/say(message) /mob/living/simple_animal/hostile/netherworld/migo/say(message)
..() ..()

View File

@@ -0,0 +1,34 @@
---LICENSE NOTICE---
The server operator(s) is responsible for the copyright status of all sounds placed within the /config/jukebox_music folder unless otherwise noted.
If a sound requires attribution and/or a specific license it is up to the operator(s) to make this information publicly available on either
a website associated with their server or on the server itself.
If operators(s) allow these configuration files to be public this file can serve that purpose by keeping it properly updated.
If in the future new sounds are published to these folders (i.e. in an online code repository) they must explicitly state their
license if said license is not the same as the default licensing found in README.md in the root directory of the project.
Do not remove this notice.
---END NOTICE---
---EXAMPLES (NOT PART OF ANY LICENSE)---
These are examples of properly attrubuted and licensed sounds.
They are not an actual part of any license under any circumstance.
title5.ogg was created by Mya Quinn on Feburary 28, 2557. It is licensed under a Combative Clowning 3.0 HO-NK license (http://example.com/license/url/).
Unless otherwise noted all sounds were created by Cuban Pete on July 26, 2555. They are licensed under the RUMBABEAT Public License.(http://example.com/license/url/).
---END EXAMPLES (NOT PART OF ANY LICENSE)---
---ADD LICENSING INFORMATION BELOW---

View File

@@ -0,0 +1,15 @@
The enclosed sounds folder holds the sound files used as player selectable songs for an ingame jukebox. OGG and WAV are supported.
Using unnecessarily huge sounds can cause client side lag and should be avoided.
You my add as many sounds as you would like.
---
Naming Conventions:
Every sound you add must have a unique name. Avoid using the plus sign "+" and the period "." in names, as these are used internally to classify sounds.
Sound names must be in the format of [song name]+[length in deciseconds]+[beat in deciseconds].ogg
A three minute song title "SS13" that lasted 3 minutes would have a file name SS13+1800+5.ogg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.