1
0
mirror of https://github.com/alliedmodders/hl2sdk.git synced 2025-09-19 20:16:10 +08:00

Convert FL_* flags to Flags_t enum

This commit is contained in:
GAMMACASE
2025-05-12 01:41:11 +03:00
parent 683a9c3959
commit 574143a0ce

View File

@ -101,47 +101,47 @@
// Most came from server.h
// CBaseEntity::m_fFlags
enum Flags_t : uint32
{
// PLAYER SPECIFIC FLAGS FIRST BECAUSE WE USE ONLY A FEW BITS OF NETWORK PRECISION
#define FL_ONGROUND (1<<0) // At rest / on the ground
#define FL_DUCKING (1<<1) // Player flag -- Player is fully crouched
#define FL_WATERJUMP (1<<2) // player jumping out of water
#define FL_NOCLIP (1<<3) // Forces MOVETYPE_NOCLIP on the entity
#define FL_PAWN_FAKECLIENT (1<<4) // Fake client controlled pawn entity, mostly referenced in movement related code
#define FL_FROZEN (1<<5) // Player is frozen for 3rd person camera
#define FL_ATCONTROLS (1<<6) // Player can't move, but keeps key inputs for controlling another entity
#define FL_CLIENT (1<<7) // Is a player
#define FL_CONTROLLER_FAKECLIENT (1<<8) // Fake client, simulated server side. Mainly set on controllers
#define FL_INWATER (1<<9) // In water. Potentially obsolete in s2
// NOTE if you move things up, make sure to change this value
#define PLAYER_FLAG_BITS 10
FL_ONGROUND = (1 << 0), // At rest / on the ground
FL_DUCKING = (1 << 1), // Player flag -- Player is fully crouched
FL_WATERJUMP = (1 << 2), // player jumping out of water
// FL_EMPTY = (1 << 3),
FL_BOT = (1 << 4), // Fake client controlled pawn entity, mostly referenced in movement related code
FL_FROZEN = (1 << 5), // Player is frozen for 3rd person camera
FL_ATCONTROLS = (1 << 6), // Player can't move, but keeps key inputs for controlling another entity
FL_CLIENT = (1 << 7), // Is a player
FL_FAKECLIENT = (1 << 8), // Fake client, simulated server side. Mainly set on controllers
// FL_EMPTY = (1 << 9),
// NON-PLAYER SPECIFIC (i.e., not used by GameMovement or the client .dll ) -- Can still be applied to players, though
#define FL_FLY (1<<10) // Changes the SV_Movestep() behavior to not need to be on ground
#define FL_SWIM (1<<11) // Changes the SV_Movestep() behavior to not need to be on ground (but stay in water)
#define FL_CONVEYOR (1<<12) // Potentially obsolete in s2
#define FL_NPC (1<<13) // Potentially obsolete in s2
#define FL_GODMODE (1<<14)
#define FL_NOTARGET (1<<15)
#define FL_AIMTARGET (1<<16) // set if the crosshair needs to aim onto the entity
#define FL_PARTIALGROUND (1<<17) // not all corners are valid. Potentially obsolete in s2
#define FL_STATICPROP (1<<18) // Eetsa static prop!
#define FL_GRAPHED (1<<19) // worldgraph has this ent listed as something that blocks a connection. Potentially obsolete in s2
#define FL_GRENADE (1<<20)
#define FL_STEPMOVEMENT (1<<21) // Changes the SV_Movestep() behavior to not do any processing. Potentially obsolete in s2
#define FL_DONTTOUCH (1<<22) // Doesn't generate touch functions, generates Untouch() for anything it was touching when this flag was set
#define FL_BASEVELOCITY (1<<23) // Base velocity has been applied this frame (used to convert base velocity into momentum)
#define FL_CONVEYOR_NEW (1<<24)
#define FL_OBJECT (1<<25) // Terrible name. This is an object that NPCs should see. Missiles, for example.
#define FL_KILLME (1<<26) // This entity is marked for death -- will be freed by game DLL. Potentially obsolete in s2
#define FL_ONFIRE (1<<27) // You know...
#define FL_DISSOLVING (1<<28) // We're dissolving!
#define FL_TRANSRAGDOLL (1<<29) // In the process of turning into a client side ragdoll.
#define FL_UNBLOCKABLE_BY_PLAYER (1<<30) // pusher that can't be blocked by the player
#define FL_FREEZING (1<<31) // We're becoming frozen!
FL_FLY = (1 << 10), // Changes the SV_Movestep() behavior to not need to be on ground
FL_SUPPRESS_SAVE = (1 << 11),
FL_IN_VEHICLE = (1 << 12),
FL_IN_VEHICLE_TRANSPORT = (1 << 13),
FL_GODMODE = (1 << 14),
FL_NOTARGET = (1 << 15),
FL_AIMTARGET = (1 << 16), // set if the crosshair needs to aim onto the entity
// FL_EMPTY = (1 << 17),
FL_STATICPROP = (1 << 18), // Eetsa static prop!
// FL_EMPTY = (1 << 19),
FL_GRENADE = (1 << 20),
// FL_EMPTY = (1 << 21),
FL_DONTTOUCH = (1 << 22), // Doesn't generate touch functions, generates Untouch() for anything it was touching when this flag was set
// FL_EMPTY = (1 << 23),
// FL_EMPTY = (1 << 24),
FL_OBJECT = (1 << 25), // Terrible name. This is an object that NPCs should see. Missiles, for example.
// FL_EMPTY = (1 << 26),
FL_ONFIRE = (1 << 27), // You know...
FL_DISSOLVING = (1 << 28), // We're dissolving!
FL_TRANSRAGDOLL = (1 << 29), // In the process of turning into a client side ragdoll.
FL_UNBLOCKABLE_BY_PLAYER = (1 << 30) // pusher that can't be blocked by the player
// FL_EMPTY = (1 << 31),
};
// edict->movetype values
enum MoveType_t : unsigned char
enum MoveType_t : uint8
{
MOVETYPE_NONE = 0, // never moves
MOVETYPE_OBSOLETE, // Previously isometric movetype
@ -164,7 +164,7 @@ enum MoveType_t : unsigned char
};
// edict->movecollide values
enum MoveCollide_t : unsigned char
enum MoveCollide_t : uint8
{
MOVECOLLIDE_DEFAULT = 0,
@ -186,7 +186,7 @@ enum MoveCollide_t : unsigned char
// Solid type basically describes how the bounding volume of the object is represented
// NOTE: SOLID_BBOX MUST BE 2, and SOLID_VPHYSICS MUST BE 6
// NOTE: These numerical values are used in the FGD by the prop code (see prop_dynamic)
enum SolidType_t : unsigned char
enum SolidType_t : uint8
{
SOLID_NONE = 0, // no solid model
SOLID_BSP = 1, // a BSP tree