mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
72 lines
3.7 KiB
Plaintext
72 lines
3.7 KiB
Plaintext
/*This file is a list of all preclaimed planes & layers
|
|
|
|
All planes & layers should be given a value here instead of using a magic/arbitrary number.
|
|
|
|
After fiddling with planes and layers for some time, I figured I may as well provide some documentation:
|
|
|
|
What are planes?
|
|
Think of Planes as a sort of layer for a layer - if plane X is a larger number than plane Y, the highest number for a layer in X will be below the lowest
|
|
number for a layer in Y.
|
|
Planes also have the added bonus of having planesmasters.
|
|
|
|
What are Planesmasters?
|
|
Planesmasters, when in the sight of a player, will have its appearance properties (for example, colour matrices, alpha, transform, etc)
|
|
applied to all the other objects in the plane. This is all client sided.
|
|
Usually you would want to add the planesmaster as an invisible image in the client's screen.
|
|
|
|
What can I do with Planesmasters?
|
|
You can: Make certain players not see an entire plane,
|
|
Make an entire plane have a certain colour matrices,
|
|
Make an entire plane transform in a certain way,
|
|
Make players see a plane which is hidden to normal players - I intend to implement this with the antag HUDs for example.
|
|
Planesmasters can be used as a neater way to deal with client images or potentially to do some neat things
|
|
|
|
How do planes work?
|
|
A plane can be any integer from -100 to 100. (If you want more, bug lummox.)
|
|
All planes above 0, the 'base plane', are visible even when your character cannot 'see' them, for example, the HUD.
|
|
All planes below 0, the 'base plane', are only visible when a character can see them.
|
|
|
|
How do I add a plane?
|
|
Think of where you want the plane to appear, look through the pre-existing planes and find where it is above and where it is below
|
|
Slot it in in that place, and change the pre-existing planes, making sure no plane shares a number.
|
|
Add a description with a comment as to what the plane does.
|
|
|
|
How do I make something a planesmaster?
|
|
Add the PLANE_MASTER appearance flag to the appearance_flags variable.
|
|
|
|
What is the naming convention for planes or layers?
|
|
Make sure to use the name of your object before the _LAYER or _PLANE, eg: [NAME_OF_YOUR_OBJECT HERE]_LAYER or [NAME_OF_YOUR_OBJECT HERE]_PLANE
|
|
Also, as it's a define, it is standard practice to use capital letters for the variable so people know this.
|
|
|
|
*/
|
|
|
|
#define DEFAULT_PLANE 0 // BYOND's default value for plane, the "base plane"
|
|
|
|
#define SPACE_PLANE -32 // Reserved for use in space/parallax
|
|
|
|
#define PARALLAX_PLANE -30 // Reserved for use in space/parallax
|
|
|
|
// OPENSPACE_PLANE reserves all planes between OPENSPACE_PLANE_START and OPENSPACE_PLANE_END inclusive
|
|
#define OPENSPACE_PLANE_START -23
|
|
#define OPENSPACE_PLANE_END -8
|
|
#define OPENSPACE_PLANE -25 // /turf/simulated/open will use OPENSPACE_PLANE + z (Valid z's being 2 thru 17)
|
|
|
|
#define OVER_OPENSPACE_PLANE -7
|
|
|
|
|
|
// Now for the regular layers. Try to keep these in order, from lowest to highest numbers, please.
|
|
|
|
//#define TURF_LAYER 2 //For easy recordkeeping; this is a byond define
|
|
#define DOOR_OPEN_LAYER 2.7 //Under all objects if opened. 2.7 due to tables being at 2.6
|
|
//#define OBJ_LAYER 3 //For easy recordkeeping; this is a byond define
|
|
#define DOOR_CLOSED_LAYER 3.1 //Above most items if closed
|
|
|
|
#define BELOW_MOB_LAYER 3.9
|
|
//#define MOB_LAYER 4 //For easy recordkeeping; this is a byond define
|
|
#define ABOVE_MOB_LAYER 4.1
|
|
|
|
//#define FLY_LAYER 5 //For easy recordkeeping; this is a byond define
|
|
#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 |