Files
Aurora.3/code/__defines/_layers.dm
JohnWildkins a03f170f16 Ports BS12 fixes / refactor of visualnets. (#7572)
Ports (and adjusts) Baystation12/Baystation12#12521 et al. Essentially brings our visualnet code up to the standard of three years ago, rather than five.

Side effects of merging may include but are not limited to loss of AI vision, helmet camera failure, garbage collection implosion, infinite turf loops, and unintended layer shenanigans.

High-level changes:

    Overall, visualnet/chunk procs have been renamed and refactored to be clear as to their function.
    Fix some layering issues related to magic numbers, these have been set to constants.
    Visualnets now track source movement rather than overriding individual mob/obj procs.
    Adds obfuscation underlay to complicate memory fudging to remove camera static.
    Cameras now only add themselves to the cameranet if they're on open (non-restricted) networks.
    Helmet cameras now use cameras themselves rather than network defines.
    Adds a sorted object list insertion helper.
    The Camera MIU (presently unused) should now function properly.
    Unused cultnet / cult mask deleted because refactoring that would likely kill the few brain cells I have left
2019-12-07 18:37:40 +02:00

31 lines
1.5 KiB
Plaintext

#define PLANE_SPACE_BACKGROUND -98
#define PLANE_SPACE_PARALLAX (PLANE_SPACE_BACKGROUND + 1) // -97
#define PLANE_SPACE_DUST (PLANE_SPACE_PARALLAX + 1) // -96
#define PLANE_ABOVE_PARALLAX (PLANE_SPACE_BACKGROUND + 3) // -95
#define LOWER_ON_TURF_LAYER (TURF_LAYER + 0.05) // under the below
#define ON_TURF_LAYER (TURF_LAYER + 0.1) // sitting on the turf - should be preferred over direct use of TURF_LAYER
#define AO_LAYER (ON_TURF_LAYER + 0.1)
#define PIPE_LAYER 2.4 //under wires with their 2.44
#define CABLE_LAYER 2.44
#define ABOVE_CABLE_LAYER (CABLE_LAYER + 0.1)
#define DOOR_OPEN_LAYER 2.7 //Under all objects if opened. 2.7 due to tables being at 2.6
#define UNDERDOOR 3.09 //Just barely under a closed door.
#define DOOR_CLOSED_LAYER 3.1 //Above most items if closed
#define BELOW_MOB_LAYER 3.7
#define ABOVE_MOB_LAYER 4.1
#define LIGHTING_LAYER 11
#define HUD_LAYER 20 //Above lighting, but below obfuscation. For in-game HUD effects (whereas SCREEN_LAYER is for abstract/OOC things like inventory slots)
#define OBFUSCATION_LAYER 21 //Where images covering the view for eyes are put
#define SCREEN_LAYER 22 //Mob HUD/effects layer
#define CINEMA_LAYER 23
#define MECH_BASE_LAYER 4.01
#define MECH_INTERMEDIATE_LAYER 4.02
#define MECH_PILOT_LAYER 4.03
#define MECH_LEG_LAYER 4.04
#define MECH_COCKPIT_LAYER 4.05
#define MECH_ARM_LAYER 4.06
#define MECH_DECAL_LAYER 4.07
#define MECH_GEAR_LAYER 4.08