diff --git a/code/modules/media/jukebox.dm b/code/modules/media/jukebox.dm index 51df865b246..b18e3537ca0 100644 --- a/code/modules/media/jukebox.dm +++ b/code/modules/media/jukebox.dm @@ -81,25 +81,8 @@ var/global/loopModeNames=list( var/current_song = 0 var/autoplay = 0 var/last_reload = 0 + var/state_base = "jukebox2" -/obj/machinery/media/jukebox/bar - playlist_id="bar" - // Must be defined on your server. - playlists=list( - "bar" = "Bar Mix", - "aussie" = "Aussie", - "club" = "Club", - "lounge" = "Portishead - Dummy", - "customs" = "Customs Music", - ) - -/obj/machinery/media/jukebox/shuttle - playlist_id="shuttle" - // Must be defined on your server. - playlists=list( - "shuttle" = "Shuttle Mix" - ) - invisibility=101 // FAK U NO SONG 4 U /obj/machinery/media/jukebox/attack_ai(var/mob/user) attack_hand(user) @@ -117,17 +100,17 @@ var/global/loopModeNames=list( overlays = 0 if(stat & (NOPOWER|BROKEN) || !anchored) if(stat & BROKEN) - icon_state = "jukebox2-broken" + icon_state = "[state_base]-broken" else - icon_state = "jukebox2-nopower" + icon_state = "[state_base]-nopower" stop_playing() return - icon_state = "jukebox2" + icon_state = state_base if(playing) if(emagged) - overlays += "jukebox2-emagged" + overlays += "[state_base]-emagged" else - overlays += "jukebox2-running" + overlays += "[state_base]-running" /obj/machinery/media/jukebox/proc/check_reload() return world.time > last_reload + JUKEBOX_RELOAD_COOLDOWN @@ -292,3 +275,50 @@ var/global/loopModeNames=list( playing=0 update_music() return + +/obj/machinery/media/jukebox/bar + playlist_id="bar" + // Must be defined on your server. + playlists=list( + "bar" = "Bar Mix", + "aussie" = "Aussie", + "club" = "Club", + "lounge" = "Portishead - Dummy", + "customs" = "Customs Music", + ) + +// So I don't have to do all this shit manually every time someone sacrifices pun-pun. +// Also for debugging. +/obj/machinery/media/jukebox/superjuke + name = "Super Juke" + desc = "A jukebox used for parties at Mount Olympus and shit." + + state_base = "superjuke" + + playlist_id="bar" + // Must be defined on your server. + playlists=list( + "bar" = "Bar Mix", + "jazz" = "Jazz", + "rock" = "Rock", + + "emagged" = "Syndie Mix", + "shuttle" = "Shuttle", + "endgame" = "Apocalypse" + ) + +/obj/machinery/media/jukebox/superjuke/attackby(obj/item/W, mob/user) + // NO FUN ALLOWED. Emag list is included, anyway. + if(istype(W, /obj/item/weapon/card/emag)) + user << "\red Your [W] refuses to touch \the [src]!" + return + ..() + +/obj/machinery/media/jukebox/shuttle + playlist_id="shuttle" + // Must be defined on your server. + playlists=list( + "shuttle" = "Shuttle Mix" + ) + invisibility=101 // FAK U NO SONG 4 U + diff --git a/icons/obj/jukebox.dmi b/icons/obj/jukebox.dmi index b4c938fb4f5..642b532a6e1 100644 Binary files a/icons/obj/jukebox.dmi and b/icons/obj/jukebox.dmi differ