diff --git a/code/modules/power/lighting_vr.dm b/code/modules/power/lighting_vr.dm index b7f0fb320ce..3716d8c1229 100644 --- a/code/modules/power/lighting_vr.dm +++ b/code/modules/power/lighting_vr.dm @@ -46,7 +46,7 @@ /obj/item/weapon/light/bulb/large brightness_range = 6 brightness_power = 1 - + nightshift_range = 6 nightshift_power = 0.45 @@ -128,3 +128,97 @@ icon_state = "big_flamp-construct-stage2" if(3) icon_state = "big_flamp-empty" + +// Fairy lights + +/obj/item/weapon/light/bulb/smol + brightness_range = 1 + brightness_power = 0.5 + + nightshift_range = 1 + nightshift_power = 0.25 + + +/obj/machinery/light/small/fairylights + icon = 'icons/obj/lighting_vr.dmi' + icon_state = "fairy_lights1" + base_state = "fairy_lights" + desc = "A set of lights on a long string of wire, anchored to the walls." + light_type = /obj/item/weapon/light/bulb/smol + shows_alerts = FALSE + anchored = TRUE + plane = ABOVE_MOB_PLANE + layer = ABOVE_MOB_LAYER + construct_type = null + overlay_color = LIGHT_COLOR_INCANDESCENT_BULB + color = "#3e5064" + +/obj/machinery/light/small/fairylights/broken() + return + +/obj/machinery/light/small/fairylights/flicker + auto_flicker = TRUE + +/obj/machinery/light/small/fairylights/update_icon() + + switch(status) + if(LIGHT_OK) + if(shows_alerts && current_alert && on) + icon_state = "[base_state]-alert-[current_alert]" + add_light_overlay(FALSE) + else + icon_state = "[base_state][on]" + add_light_overlay() + if(LIGHT_EMPTY) + icon_state = "[base_state]-empty" + on = 0 + remove_light_overlay() + if(LIGHT_BURNED) + icon_state = "[base_state]-burned" + on = 0 + remove_light_overlay() + if(LIGHT_BROKEN) + icon_state = "[base_state]-broken" + on = 0 + remove_light_overlay() + return + +/obj/machinery/light + var/image/overlay_layer = null + var/overlay_color = null + +/obj/machinery/light/proc/add_light_overlay(do_color = TRUE) + remove_light_overlay() + overlay_layer = image(icon, "[base_state]-overlay") + overlay_layer.appearance_flags = RESET_COLOR|KEEP_APART + if(overlay_color && do_color) + overlay_layer.color = overlay_color + overlay_layer.plane = PLANE_LIGHTING_ABOVE + add_overlay(overlay_layer) + +/obj/machinery/light/proc/remove_light_overlay() + cut_overlay(overlay_layer) + qdel(overlay_layer) + overlay_layer = null + + +/* +/obj/machinery/light_construct/bigfloorlamp + name = "big floor light fixture frame" + desc = "A big floor light fixture under construction." + icon = 'icons/obj/lighting32x64.dmi' + icon_state = "big_flamp-construct-stage1" + stage = 1 + anchored = FALSE + fixture_type = /obj/machinery/light/bigfloorlamp + sheets_refunded = 1 + +/obj/machinery/light_construct/bigfloorlamp/update_icon() + switch(stage) + if(1) + icon_state = "big_flamp-construct-stage1" + if(2) + icon_state = "big_flamp-construct-stage2" + if(3) + icon_state = "big_flamp-empty" +*/ diff --git a/icons/obj/lighting_vr.dmi b/icons/obj/lighting_vr.dmi index e6e27c57a42..293cedfdc7d 100644 Binary files a/icons/obj/lighting_vr.dmi and b/icons/obj/lighting_vr.dmi differ diff --git a/maps/groundbase/gb-z2.dmm b/maps/groundbase/gb-z2.dmm index 6bbf1d265dc..304434ff5cb 100644 --- a/maps/groundbase/gb-z2.dmm +++ b/maps/groundbase/gb-z2.dmm @@ -2233,6 +2233,11 @@ outdoors = 0 }, /area/groundbase/cargo/office) +"go" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light/small/fairylights, +/turf/simulated/floor/outdoors/sidewalk/virgo3c, +/area/groundbase/level2/nw) "gq" = ( /obj/structure/table/woodentable, /obj/item/weapon/paper_bin{ @@ -4162,6 +4167,10 @@ }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/Chemistry) +"lM" = ( +/obj/machinery/light/small/fairylights, +/turf/simulated/floor/outdoors/grass/virgo3c, +/area/groundbase/level2/nw) "lN" = ( /obj/structure/cable/yellow{ icon_state = "1-8" @@ -10687,6 +10696,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/medical/virology) +"EZ" = ( +/obj/machinery/light/small/fairylights, +/turf/simulated/floor/outdoors/newdirt/virgo3c, +/area/groundbase/level2/nw) "Fa" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/command{ @@ -11503,6 +11516,16 @@ }, /turf/simulated/floor/bmarble, /area/groundbase/civilian/chapel) +"Hr" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/disposalpipe/segment, +/obj/machinery/light/small/fairylights, +/turf/simulated/floor/outdoors/sidewalk/virgo3c, +/area/groundbase/level2/nw) "Hs" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -24212,13 +24235,13 @@ bY bY pw pw -LT +lM ml LT -pw +EZ pw bY -bY +lM bY bY bY @@ -24354,13 +24377,13 @@ bY bY bY bY -pw +EZ ml pw +lM bY bY -bY -bY +lM bY bY bY @@ -24496,13 +24519,13 @@ Hm Hm Hm Hm -Hm +Hr pJ sF -sF +go sF vV -sF +go sF sF sF @@ -24638,13 +24661,13 @@ bY bY bY bY -pw +EZ sN pw -bY +lM bY Oa -bY +lM bY bY bY @@ -24780,13 +24803,13 @@ bY bY bY bY -yS +lM sN bY -bY +lM bY Oa -yS +lM bY Aq bY