From 579fd817c1f78a3dcc36be908baa85d0bdb8ceb5 Mon Sep 17 00:00:00 2001 From: Adri <33333517+Miraviel@users.noreply.github.com> Date: Thu, 19 Jan 2023 04:39:46 +0100 Subject: [PATCH] Adds disco light floor (#20109) * Adds disco light floor * Fixes tiles not stacking * Fixes linter issue * Update code/game/turfs/simulated/floor/light_floor.dm Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> * Update code/game/turfs/simulated/floor/light_floor.dm Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> * Update code/__HELPERS/lists.dm Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> * Replaces shitcode with simple solutions * Update code/game/turfs/simulated/floor/light_floor.dm Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * pick excluding Co-authored-by: Farie82 * pick instead of rand Co-authored-by: Farie82 * Simplifies the color change process * forgor setting current_color Co-authored-by: Farie82 * proper autodoc format Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> Co-authored-by: Farie82 --- _maps/map_files/generic/centcomm.dmm | 1 + code/__HELPERS/lists.dm | 4 ++ .../objects/items/stacks/tiles/tile_types.dm | 11 +++++ .../game/turfs/simulated/floor/light_floor.dm | 39 ++++++++++++++++++ icons/obj/tiles.dmi | Bin 15112 -> 15339 bytes 5 files changed, 55 insertions(+) diff --git a/_maps/map_files/generic/centcomm.dmm b/_maps/map_files/generic/centcomm.dmm index ce1293894ee..43cb2109b0c 100644 --- a/_maps/map_files/generic/centcomm.dmm +++ b/_maps/map_files/generic/centcomm.dmm @@ -6249,6 +6249,7 @@ /obj/machinery/light/spot, /obj/effect/spawner/lootdrop/trade_sol/serv, /obj/structure/closet, +/obj/item/stack/tile/disco_light/thirty, /turf/simulated/floor/mineral/titanium, /area/shuttle/trade/sol) "wb" = ( diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm index 739634d92f2..c0babdafd44 100644 --- a/code/__HELPERS/lists.dm +++ b/code/__HELPERS/lists.dm @@ -855,3 +855,7 @@ return FALSE return TRUE + +// Pick something else from a list than we last picked +/proc/pick_excluding(list/l, exclude) + return pick(l - exclude) diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 33da4f73e6a..9853caa3022 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -260,3 +260,14 @@ /obj/item/stack/tile/arcade_carpet/loaded amount = 20 + +/obj/item/stack/tile/disco_light + name = "disco light tiles" + singular_name = "disco light tile" + desc = "A sheet of disco light tile." + icon_state = "tile_disco" + turf_type = /turf/simulated/floor/light/disco + merge_type = /obj/item/stack/tile/disco_light + +/obj/item/stack/tile/disco_light/thirty + amount = 30 diff --git a/code/game/turfs/simulated/floor/light_floor.dm b/code/game/turfs/simulated/floor/light_floor.dm index 5c8fd14852c..90183627cff 100644 --- a/code/game/turfs/simulated/floor/light_floor.dm +++ b/code/game/turfs/simulated/floor/light_floor.dm @@ -111,3 +111,42 @@ var/color_save = color ..() color = color_save + +// These tiles change color every now and then +/turf/simulated/floor/light/disco + floor_tile = /obj/item/stack/tile/disco_light + /// Cannot change its color with a multitool + can_modify_colour = FALSE + /// The tile can change into these colors + var/list/available_colors = list("#d41e3c", "#ed7b39", "#fff540", "#77b02a", "#488bd4", "#b0fff1", "#94007a", "#ff417d") + /// This is our current color, don't pick it again + var/current_color + +// We pick a random color when we are spawned +/turf/simulated/floor/light/disco/Initialize() + . = ..() + START_PROCESSING(SSobj, src) + +// The animation happens in this proc +/turf/simulated/floor/light/disco/proc/change_color() + current_color = pick_excluding(available_colors, current_color) + animate_fade_to_color_fill(src, current_color, 2) + +// We change colors every now and then +/turf/simulated/floor/light/disco/process() + if(on) + change_color() + +// Admins can toggle its color with advanced admin interaction +/turf/simulated/floor/light/disco/attack_ghost(mob/user) + if(user.can_advanced_admin_interact()) + change_color() + +// One is able to restart it, if power runs out. However, it cannot be turned off! +/turf/simulated/floor/light/disco/attack_hand(mob/user) + if(!on) + toggle_light(TRUE) + +/turf/simulated/floor/light/disco/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() diff --git a/icons/obj/tiles.dmi b/icons/obj/tiles.dmi index 491e7ef33ec280fd83047053510dd2005416e189..f088426c1a57edd8b7fd6b7b973d6cfc5f054391 100644 GIT binary patch literal 15339 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 BGv@#R literal 15112 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