diff --git a/modular_ss220/jukebox/code/jukebox.dm b/modular_ss220/jukebox/code/jukebox.dm index b76d6ebb4367..49dc9230ced7 100644 --- a/modular_ss220/jukebox/code/jukebox.dm +++ b/modular_ss220/jukebox/code/jukebox.dm @@ -162,6 +162,9 @@ update_icon() return TRUE -/obj/machinery/jukebox/process() - if(!is_operational()) - stop_music() +/obj/machinery/jukebox/obj_break() + if(stat & BROKEN) + return + stat |= BROKEN + idle_power_consumption = 0 + stop_music() diff --git a/modular_ss220/jukebox/code/jukebox_datum.dm b/modular_ss220/jukebox/code/jukebox_datum.dm index 43473e91507d..8133e93d46ff 100644 --- a/modular_ss220/jukebox/code/jukebox_datum.dm +++ b/modular_ss220/jukebox/code/jukebox_datum.dm @@ -45,14 +45,14 @@ /// Path to music folder var/songs_path -/datum/jukebox/New(atom/new_parent, songs_path) +/datum/jukebox/New(atom/new_parent, new_songs_path) if(!ismovable(new_parent) && !isturf(new_parent)) stack_trace("[type] created on non-turf or non-movable: [new_parent ? "[new_parent] ([new_parent.type])" : "null"])") qdel(src) return parent = new_parent - src.songs_path = songs_path + songs_path = new_songs_path if(isnull(sound_range)) sound_range = world.view diff --git a/modular_ss220/jukebox/code/jukebox_subtypes.dm b/modular_ss220/jukebox/code/jukebox_subtypes.dm index 0797f44f1dc5..1761094c5f38 100644 --- a/modular_ss220/jukebox/code/jukebox_subtypes.dm +++ b/modular_ss220/jukebox/code/jukebox_subtypes.dm @@ -18,32 +18,31 @@ /obj/machinery/jukebox/drum_red name = "\improper красный барабан" desc = "Крутые барабаны от какой-то группы." - icon_state = "drum_red" + icon_state = "drum_red_unanchored" base_icon_state = "drum_red" anchored = FALSE music_folder = "config/jukebox_music/drum_music/" /obj/machinery/jukebox/drum_red/wrench_act() . = ..() - icon_state = "[base_icon_state][anchored ? "_anchored" : null]" + icon_state = "[base_icon_state][anchored ? null : "_unanchored"]" /obj/machinery/jukebox/drum_red/update_icon_state() if(stat & (BROKEN)) icon_state = "[base_icon_state]_broken" else - icon_state = "[base_icon_state]_anchored[music_player.active_song_sound ? "-active" : null]" + icon_state = "[base_icon_state][music_player.active_song_sound ? "-active" : null]" /obj/machinery/jukebox/drum_red/drum_yellow name = "\improper желтый барабан" - icon_state = "drum_yellow" + icon_state = "drum_yellow_unanchored" base_icon_state = "drum_yellow" /obj/machinery/jukebox/drum_red/drum_blue name = "\improper синий барабан" - icon_state = "drum_blue" + icon_state = "drum_blue_unanchored" base_icon_state = "drum_blue" /datum/supply_packs/misc/bigband/New() . = ..() - contains |= /obj/machinery/jukebox/drum_red diff --git a/modular_ss220/jukebox/icons/jukebox.dmi b/modular_ss220/jukebox/icons/jukebox.dmi index 5c50484a3697..46f6ff2fdb11 100644 Binary files a/modular_ss220/jukebox/icons/jukebox.dmi and b/modular_ss220/jukebox/icons/jukebox.dmi differ