Files
Aurora.3/code/game/objects/effects/overlays.dm
Cody Brittain c1d241594b Planes & Layers part 2: Plane Masters (#18749)
Part 2 of the PR series to bring /tg/'s and bay's plane masters to
Aurora, the lack of which is blocking several features we want.

This ports over the easier to understand Bay version of plane masters,
which is detailed in the relevant readme file in the code. Example
effect code for a warp effect is also in, which has been implemented for
gravity catapults.

Relies on #18741

---------

Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
2024-04-13 18:07:51 +00:00

117 lines
2.4 KiB
Plaintext

/obj/effect/overlay
name = "overlay"
unacidable = 1
/// Added for possible image attachments to objects. For hallucinations and the like.
var/i_attached
/// Prevents janitorial cyborgs from cleaning this effect.
var/no_clean = FALSE
/obj/effect/overlay/Destroy()
i_attached = null
return ..()
/obj/effect/overlay/beam//Not actually a projectile, just an effect.
name="beam"
icon='icons/effects/beam.dmi'
icon_state="b_beam"
blend_mode = BLEND_ADD
plane = EFFECTS_ABOVE_LIGHTING_PLANE
animate_movement = FALSE
var/tmp/atom/BeamSource
/obj/effect/overlay/palmtree_r
name = "palm tree"
icon = 'icons/misc/beach2.dmi'
icon_state = "palm1"
density = 1
layer = ABOVE_HUMAN_LAYER
anchored = 1
/obj/effect/overlay/palmtree_l
name = "palm tree"
icon = 'icons/misc/beach2.dmi'
icon_state = "palm2"
density = 1
layer = ABOVE_HUMAN_LAYER
anchored = 1
/obj/effect/overlay/coconut
name = "coconuts"
icon = 'icons/misc/beach.dmi'
icon_state = "coconuts"
/obj/effect/overlay/bluespacify
name = "bluespace"
icon = 'icons/turf/space.dmi'
icon_state = "bluespacify"
plane = EFFECTS_ABOVE_LIGHTING_PLANE
layer = SUPERMATTER_WALL_LAYER
/obj/effect/overlay/temp
icon_state = "nothing"
anchored = 1
layer = 5
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
var/duration = 10 //in deciseconds
var/randomdir = TRUE
var/timerid
/obj/effect/overlay/temp/New()
..()
if(randomdir)
dir = (pick(GLOB.cardinal))
flick("[icon_state]", src)
QDEL_IN(src, duration)
/obj/effect/overlay/temp/ex_act(var/severity = 2.0)
return
/obj/effect/overlay/temp/dir_setting
randomdir = FALSE
/obj/effect/overlay/temp/dir_setting/New(loc, set_dir)
if(set_dir)
dir = set_dir
..()
/obj/effect/overlay/temp/kinetic_blast
name = "kinetic explosion"
icon = 'icons/obj/projectiles.dmi'
icon_state = "kinetic_blast"
layer = 5
duration = 4
/obj/effect/overlay/temp/explosion
name = "explosion"
icon = 'icons/effects/96x96.dmi'
icon_state = "explosion"
pixel_x = -32
pixel_y = -32
duration = 8
/obj/effect/overlay/temp/explosion/fast
icon_state = "explosionfast"
duration = 4
/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/teleport_pulse
icon = 'icons/effects/effects.dmi'
icon_state = "emppulse"
mouse_opacity = FALSE
anchored = TRUE
/obj/effect/overlay/teleport_pulse/Initialize(mapload, ...)
. = ..()
QDEL_IN(src, 8)