New stock to get m_fFlags, and #defines for its bits.
--HG-- extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401851
This commit is contained in:
		
							parent
							
								
									a2a8634bb2
								
							
						
					
					
						commit
						a446121d6e
					
				@ -96,6 +96,7 @@ enum RenderFx
 | 
				
			|||||||
	RENDERFX_MAX
 | 
						RENDERFX_MAX
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// These defines are for client button presses.
 | 
				
			||||||
#define IN_ATTACK		(1 << 0)
 | 
					#define IN_ATTACK		(1 << 0)
 | 
				
			||||||
#define IN_JUMP			(1 << 1)
 | 
					#define IN_JUMP			(1 << 1)
 | 
				
			||||||
#define IN_DUCK			(1 << 2)
 | 
					#define IN_DUCK			(1 << 2)
 | 
				
			||||||
@ -106,13 +107,13 @@ enum RenderFx
 | 
				
			|||||||
#define IN_LEFT			(1 << 7)
 | 
					#define IN_LEFT			(1 << 7)
 | 
				
			||||||
#define IN_RIGHT		(1 << 8)
 | 
					#define IN_RIGHT		(1 << 8)
 | 
				
			||||||
#define IN_MOVELEFT		(1 << 9)
 | 
					#define IN_MOVELEFT		(1 << 9)
 | 
				
			||||||
#define IN_MOVERIGHT	(1 << 10)
 | 
					#define IN_MOVERIGHT		(1 << 10)
 | 
				
			||||||
#define IN_ATTACK2		(1 << 11)
 | 
					#define IN_ATTACK2		(1 << 11)
 | 
				
			||||||
#define IN_RUN			(1 << 12)
 | 
					#define IN_RUN			(1 << 12)
 | 
				
			||||||
#define IN_RELOAD		(1 << 13)
 | 
					#define IN_RELOAD		(1 << 13)
 | 
				
			||||||
#define IN_ALT1			(1 << 14)
 | 
					#define IN_ALT1			(1 << 14)
 | 
				
			||||||
#define IN_ALT2			(1 << 15)
 | 
					#define IN_ALT2			(1 << 15)
 | 
				
			||||||
#define IN_SCORE		(1 << 16)   // Used by client.dll for when scoreboard is held down
 | 
					#define IN_SCORE		(1 << 16)   	// Used by client.dll for when scoreboard is held down
 | 
				
			||||||
#define IN_SPEED		(1 << 17)	// Player is holding the speed key
 | 
					#define IN_SPEED		(1 << 17)	// Player is holding the speed key
 | 
				
			||||||
#define IN_WALK			(1 << 18)	// Player holding walk key
 | 
					#define IN_WALK			(1 << 18)	// Player holding walk key
 | 
				
			||||||
#define IN_ZOOM			(1 << 19)	// Zoom key for HUD zoom
 | 
					#define IN_ZOOM			(1 << 19)	// Zoom key for HUD zoom
 | 
				
			||||||
@ -122,6 +123,56 @@ enum RenderFx
 | 
				
			|||||||
#define IN_GRENADE1		(1 << 23)	// grenade 1
 | 
					#define IN_GRENADE1		(1 << 23)	// grenade 1
 | 
				
			||||||
#define IN_GRENADE2		(1 << 24)	// grenade 2
 | 
					#define IN_GRENADE2		(1 << 24)	// grenade 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// CBaseEntity::m_fFlags
 | 
				
			||||||
 | 
					// 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_ONTRAIN			(1 << 3)	// Player is _controlling_ a train, so movement commands should be ignored on client during prediction.
 | 
				
			||||||
 | 
					#define FL_INRAIN			(1 << 4)	// Indicates the entity is standing in rain
 | 
				
			||||||
 | 
					#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_FAKECLIENT			(1 << 8)	// Fake client, simulated server side; don't send network messages to them
 | 
				
			||||||
 | 
					// NOTE if you move things up, make sure to change this value
 | 
				
			||||||
 | 
					#define PLAYER_FLAG_BITS		9
 | 
				
			||||||
 | 
					// NON-PLAYER SPECIFIC (i.e., not used by GameMovement or the client .dll ) -- Can still be applied to players, though
 | 
				
			||||||
 | 
					#define	FL_INWATER			(1 << 9)	// In water
 | 
				
			||||||
 | 
					#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)
 | 
				
			||||||
 | 
					#define	FL_NPC				(1 << 13)
 | 
				
			||||||
 | 
					#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
 | 
				
			||||||
 | 
					#define FL_STATICPROP			(1 << 18)	// Eetsa static prop!		
 | 
				
			||||||
 | 
					#define FL_GRAPHED			(1 << 19)	// worldgraph has this ent listed as something that blocks a connection
 | 
				
			||||||
 | 
					#define FL_GRENADE			(1 << 20)
 | 
				
			||||||
 | 
					#define FL_STEPMOVEMENT			(1 << 21)	// Changes the SV_Movestep() behavior to not do any processing
 | 
				
			||||||
 | 
					#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_WORLDBRUSH			(1 << 24)	// Not moveable/removeable brush entity (really part of the world, but represented as an entity for transparency or something)
 | 
				
			||||||
 | 
					#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
 | 
				
			||||||
 | 
					#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
 | 
				
			||||||
 | 
					// END m_fFlags #defines
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Get an entity's flags.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @param entity	Entity index.
 | 
				
			||||||
 | 
					 * @return			Entity's flags, see m_fFlag defines above
 | 
				
			||||||
 | 
					 * @error			Invalid entity index, or lack of mod compliance.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					stock GetEntityFlags(entity)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return GetEntProp(entity, Prop_Data, "m_fFlags");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Gets an entity's movetype.
 | 
					 * Gets an entity's movetype.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
@ -237,7 +288,7 @@ stock Float:GetEntityGravity(entity)
 | 
				
			|||||||
 * Sets an entity's gravity.
 | 
					 * Sets an entity's gravity.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * @param entity	Entity index.
 | 
					 * @param entity	Entity index.
 | 
				
			||||||
 * @param amount	Gravity to set (default = 800).
 | 
					 * @param amount	Gravity to set (default = 1.0, half = 0.5, double = 2.0).
 | 
				
			||||||
 * @noreturn
 | 
					 * @noreturn
 | 
				
			||||||
 * @error			Invalid entity index, or lack of mod compliance.
 | 
					 * @error			Invalid entity index, or lack of mod compliance.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user