Files
Yogstation/code/game/objects/effects/overlays.dm
Ling df044da860 Backports several SSlighting improvements: overlay lighting (#17271)
* Backports SSlighting optimizations

* Overlay lighting, first version compiles

* Change conflicting defines

* Sparks and beams dont count towards lumcount

* Fix rendering

* Various fixes

* Fix errors

* Fix PDA light


1

* a

* Update game_options.txt

* Fix plasmaman helmet

* Fixes

* Glowy changes

Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>
2023-01-13 22:42:23 +00:00

91 lines
2.2 KiB
Plaintext

/obj/effect/overlay
name = "overlay"
/obj/effect/overlay/singularity_act()
return
/obj/effect/overlay/singularity_pull()
return
/obj/effect/overlay/beam//Not actually a projectile, just an effect.
name="beam"
icon='icons/effects/beam.dmi'
icon_state="b_beam"
var/atom/BeamSource
/obj/effect/overlay/beam/Initialize()
. = ..()
QDEL_IN(src, 10)
/obj/effect/overlay/palmtree_r
name = "palm tree"
icon = 'icons/misc/beach2.dmi'
icon_state = "palm1"
density = TRUE
layer = WALL_OBJ_LAYER
anchored = TRUE
/obj/effect/overlay/palmtree_l
name = "palm tree"
icon = 'icons/misc/beach2.dmi'
icon_state = "palm2"
density = TRUE
layer = WALL_OBJ_LAYER
anchored = TRUE
/obj/effect/overlay/coconut
gender = PLURAL
name = "coconuts"
icon = 'icons/misc/beach.dmi'
icon_state = "coconuts"
/obj/effect/overlay/sparkles
gender = PLURAL
name = "sparkles"
desc = "Flashing lights, lights."
icon = 'icons/effects/effects.dmi'
icon_state = "shieldsparkles"
anchored = TRUE
/obj/effect/overlay/vis
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
anchored = TRUE
vis_flags = NONE
var/unused = 0 //When detected to be unused it gets set to world.time, after a while it gets removed
var/cache_expiration = 2 MINUTES // overlays which go unused for 2 minutes get cleaned up
vis_flags = VIS_INHERIT_ID
/obj/effect/overlay/airlock_part
anchored = TRUE
plane = FLOAT_PLANE
layer = FLOAT_LAYER - 1
vis_flags = VIS_INHERIT_ID
var/side_id
var/open_px = 0
var/open_py = 0
var/move_start_time = 0 // for opening; closing uses reversed.
var/move_end_time = 5
var/aperture_angle = 0
var/obj/machinery/door/airlock/parent
// in case some caveman is still using 512
/obj/effect/overlay/airlock_part/Click()
parent.Click(arglist(args))
/obj/effect/overlay/closet_door
anchored = TRUE
plane = FLOAT_PLANE
layer = FLOAT_LAYER
vis_flags = VIS_INHERIT_ID
appearance_flags = KEEP_TOGETHER | LONG_GLIDE | PIXEL_SCALE
/obj/effect/overlay/light_visible
name = ""
icon = 'icons/effects/light_overlays/light_32.dmi'
icon_state = "light"
layer = O_LIGHTING_VISUAL_LAYER
plane = O_LIGHTING_VISUAL_PLANE
appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
alpha = 0
vis_flags = NONE