Odamex
Setting the Standard in Multiplayer Doom
common/p_local.h File Reference

Go to the source code of this file.

Data Structures

struct  brain_s
struct  divline_t
struct  intercept_t
class  DPolyAction
class  DRotatePoly
class  DMovePoly
class  DPolyDoor
struct  polyspawns_s

Typedefs

typedef BOOL(* traverser_t )(intercept_t *in)
typedef struct polyspawns_s polyspawns_t

Enumerations

enum  podoortype_t { PODOOR_NONE, PODOOR_SLIDE, PODOOR_SWING, NUMTYPES }
enum  {
  PO_HEX_ANCHOR_TYPE = 3000, PO_HEX_SPAWN_TYPE, PO_HEX_SPAWNCRUSH_TYPE, PO_ANCHOR_TYPE = 9300,
  PO_SPAWN_TYPE, PO_SPAWNCRUSH_TYPE
}

Functions

void P_SetupPsprites (player_t *curplayer)
void P_MovePsprites (player_t *curplayer)
void P_DropWeapon (player_t *player)
void P_FallingDamage (AActor *ent)
void P_PlayerThink (player_t *player)
void P_ThrustMobj (AActor *mo, angle_t angle, fixed_t move)
void P_RespawnSpecials (void)
bool P_SetMobjState (AActor *mobj, statenum_t state)
void P_SpawnPuff (fixed_t x, fixed_t y, fixed_t z, angle_t dir, int updown)
void P_SpawnBlood (fixed_t x, fixed_t y, fixed_t z, angle_t dir, int damage)
AActorP_SpawnMissile (AActor *source, AActor *dest, mobjtype_t type)
void P_SpawnPlayerMissile (AActor *source, mobjtype_t type)
BOOL P_Thing_Spawn (int tid, int type, angle_t angle, BOOL fog)
BOOL P_Thing_Projectile (int tid, int type, angle_t angle, fixed_t speed, fixed_t vspeed, BOOL gravity)
BOOL P_ActivateMobj (AActor *mobj, AActor *activator)
BOOL P_DeactivateMobj (AActor *mobj)
void P_NoiseAlert (AActor *target, AActor *emmiter)
void P_SpawnBrainTargets (void)
fixed_t P_AproxDistance (fixed_t dx, fixed_t dy)
int P_PointOnLineSide (fixed_t x, fixed_t y, const line_t *line)
int P_PointOnDivlineSide (fixed_t x, fixed_t y, const divline_t *line)
void P_MakeDivline (const line_t *li, divline_t *dl)
fixed_t P_InterceptVector (const divline_t *v2, const divline_t *v1)
int P_BoxOnLineSide (const fixed_t *tmbox, const line_t *ld)
void P_LineOpening (const line_t *linedef)
BOOL P_BlockLinesIterator (int x, int y, BOOL(*func)(line_t *))
BOOL P_BlockThingsIterator (int x, int y, BOOL(*func)(AActor *))
BOOL P_PathTraverse (fixed_t x1, fixed_t y1, fixed_t x2, fixed_t y2, int flags, BOOL(*trav)(intercept_t *))
angle_t P_PointToAngle (fixed_t xo, fixed_t yo, fixed_t x, fixed_t y)
bool P_TestMobjZ (AActor *mobj)
BOOL P_TestMobjLocation (AActor *mobj)
bool P_CheckPosition (AActor *thing, fixed_t x, fixed_t y)
AActorP_CheckOnmobj (AActor *thing)
void P_FakeZMovement (AActor *mo)
BOOL P_TryMove (AActor *thing, fixed_t x, fixed_t y, bool dropoff)
BOOL P_TeleportMove (AActor *thing, fixed_t x, fixed_t y, fixed_t z, BOOL telefrag)
void P_SlideMove (AActor *mo)
bool P_CheckSight (const AActor *t1, const AActor *t2, bool ignoreInvisibility=false)
bool P_CheckSight2 (const AActor *t1, const AActor *t2, bool ignoreInvisibility=false)
void P_UseLines (player_t *player)
bool P_CheckSightEdges (const AActor *t1, const AActor *t2, float radius_boost)
bool P_CheckSightEdges2 (const AActor *t1, const AActor *t2, float radius_boost)
bool P_ChangeSector (sector_t *sector, bool crunch)
fixed_t P_AimLineAttack (AActor *t1, angle_t angle, fixed_t distance)
void P_LineAttack (AActor *t1, angle_t angle, fixed_t distance, fixed_t slope, int damage)
void P_AimCamera (AActor *t1)
void P_RadiusAttack (AActor *spot, AActor *source, int damage, int mod)
void P_DelSeclist (msecnode_t *)
void P_CreateSecNodeList (AActor *, fixed_t, fixed_t)
int P_GetMoveFactor (const AActor *mo, int *frictionp)
int P_GetFriction (const AActor *mo, int *frictionfactor)
BOOL Check_Sides (AActor *, int, int)
void P_TouchSpecialThing (AActor *special, AActor *toucher, bool FromServer=false)
void P_DamageMobj (AActor *target, AActor *inflictor, AActor *source, int damage, int mod=0, int flags=0)
FArchiveoperator<< (FArchive &arc, podoortype_t type)
FArchiveoperator>> (FArchive &arc, podoortype_t &out)
BOOL PO_MovePolyobj (int num, int x, int y)
BOOL PO_RotatePolyobj (int num, angle_t angle)
void PO_Init (void)
BOOL PO_Busy (int polyobj)

Variables

mapthing2_t itemrespawnque [ITEMQUESIZE]
int itemrespawntime [ITEMQUESIZE]
int iquehead
int iquetail
int SpawnableThings []
const int NumSpawnableThings
struct brain_s brain
TArray< intercept_tintercepts
fixed_t opentop
fixed_t openbottom
fixed_t openrange
fixed_t lowfloor
divline_t trace
BOOL floatok
fixed_t tmfloorz
fixed_t tmceilingz
msecnode_tsector_list
AActorBlockingMobj
line_tBlockingLine
fixed_t tmdropoffz
sector_ttmsector
line_tceilingline
AActorlinetarget
fixed_t CameraX
fixed_t CameraY
fixed_t CameraZ
byterejectmatrix
BOOL rejectempty
int * blockmaplump
int * blockmap
int bmapwidth
int bmapheight
fixed_t bmaporgx
fixed_t bmaporgy
AActor ** blocklinks
int maxammo [NUMAMMO]
int clipammo [NUMAMMO]
int MeansOfDeath
polyobj_tpolyobjs
int po_NumPolyobjs
polyspawns_tpolyspawns

Typedef Documentation

typedef struct polyspawns_s polyspawns_t
typedef BOOL(* traverser_t)(intercept_t *in)

Enumeration Type Documentation

anonymous enum
Enumerator:
PO_HEX_ANCHOR_TYPE 
PO_HEX_SPAWN_TYPE 
PO_HEX_SPAWNCRUSH_TYPE 
PO_ANCHOR_TYPE 
PO_SPAWN_TYPE 
PO_SPAWNCRUSH_TYPE 
Enumerator:
PODOOR_NONE 
PODOOR_SLIDE 
PODOOR_SWING 
NUMTYPES 

Function Documentation

BOOL Check_Sides ( AActor ,
int  ,
int   
)
FArchive& operator<< ( FArchive arc,
podoortype_t  type 
) [inline]
FArchive& operator>> ( FArchive arc,
podoortype_t out 
) [inline]
BOOL P_ActivateMobj ( AActor mobj,
AActor activator 
)
void P_AimCamera ( AActor t1)
fixed_t P_AimLineAttack ( AActor t1,
angle_t  angle,
fixed_t  distance 
)
fixed_t P_AproxDistance ( fixed_t  dx,
fixed_t  dy 
)
BOOL P_BlockLinesIterator ( int  x,
int  y,
BOOL(*)(line_t *)  func 
)
BOOL P_BlockThingsIterator ( int  x,
int  y,
BOOL(*)(AActor *)  func 
)
int P_BoxOnLineSide ( const fixed_t tmbox,
const line_t ld 
)
bool P_ChangeSector ( sector_t sector,
bool  crunch 
)
AActor* P_CheckOnmobj ( AActor thing)
bool P_CheckPosition ( AActor thing,
fixed_t  x,
fixed_t  y 
)
bool P_CheckSight ( const AActor t1,
const AActor t2,
bool  ignoreInvisibility = false 
)
bool P_CheckSight2 ( const AActor t1,
const AActor t2,
bool  ignoreInvisibility = false 
)
bool P_CheckSightEdges ( const AActor t1,
const AActor t2,
float  radius_boost 
)
bool P_CheckSightEdges2 ( const AActor t1,
const AActor t2,
float  radius_boost 
)
void P_CreateSecNodeList ( AActor ,
fixed_t  ,
fixed_t   
)
void P_DamageMobj ( AActor target,
AActor inflictor,
AActor source,
int  damage,
int  mod = 0,
int  flags = 0 
)
BOOL P_DeactivateMobj ( AActor mobj)
void P_DelSeclist ( msecnode_t )
void P_DropWeapon ( player_t player)
void P_FakeZMovement ( AActor mo)
void P_FallingDamage ( AActor ent)
int P_GetFriction ( const AActor mo,
int *  frictionfactor 
)
int P_GetMoveFactor ( const AActor mo,
int *  frictionp 
)
fixed_t P_InterceptVector ( const divline_t v2,
const divline_t v1 
)
void P_LineAttack ( AActor t1,
angle_t  angle,
fixed_t  distance,
fixed_t  slope,
int  damage 
)
void P_LineOpening ( const line_t linedef)
void P_MakeDivline ( const line_t li,
divline_t dl 
)
void P_MovePsprites ( player_t curplayer)
void P_NoiseAlert ( AActor target,
AActor emmiter 
)
BOOL P_PathTraverse ( fixed_t  x1,
fixed_t  y1,
fixed_t  x2,
fixed_t  y2,
int  flags,
BOOL(*)(intercept_t *)  trav 
)
void P_PlayerThink ( player_t player)
int P_PointOnDivlineSide ( fixed_t  x,
fixed_t  y,
const divline_t line 
)
int P_PointOnLineSide ( fixed_t  x,
fixed_t  y,
const line_t line 
)
angle_t P_PointToAngle ( fixed_t  xo,
fixed_t  yo,
fixed_t  x,
fixed_t  y 
)
void P_RadiusAttack ( AActor spot,
AActor source,
int  damage,
int  mod 
)
void P_RespawnSpecials ( void  )
bool P_SetMobjState ( AActor mobj,
statenum_t  state 
)
void P_SetupPsprites ( player_t curplayer)
void P_SlideMove ( AActor mo)
void P_SpawnBlood ( fixed_t  x,
fixed_t  y,
fixed_t  z,
angle_t  dir,
int  damage 
)
void P_SpawnBrainTargets ( void  )
AActor* P_SpawnMissile ( AActor source,
AActor dest,
mobjtype_t  type 
)
void P_SpawnPlayerMissile ( AActor source,
mobjtype_t  type 
)
void P_SpawnPuff ( fixed_t  x,
fixed_t  y,
fixed_t  z,
angle_t  dir,
int  updown 
)
BOOL P_TeleportMove ( AActor thing,
fixed_t  x,
fixed_t  y,
fixed_t  z,
BOOL  telefrag 
)
BOOL P_TestMobjLocation ( AActor mobj)
bool P_TestMobjZ ( AActor mobj)
BOOL P_Thing_Projectile ( int  tid,
int  type,
angle_t  angle,
fixed_t  speed,
fixed_t  vspeed,
BOOL  gravity 
)
BOOL P_Thing_Spawn ( int  tid,
int  type,
angle_t  angle,
BOOL  fog 
)
void P_ThrustMobj ( AActor mo,
angle_t  angle,
fixed_t  move 
)
void P_TouchSpecialThing ( AActor special,
AActor toucher,
bool  FromServer = false 
)
BOOL P_TryMove ( AActor thing,
fixed_t  x,
fixed_t  y,
bool  dropoff 
)
void P_UseLines ( player_t player)
BOOL PO_Busy ( int  polyobj)
void PO_Init ( void  )
BOOL PO_MovePolyobj ( int  num,
int  x,
int  y 
)
BOOL PO_RotatePolyobj ( int  num,
angle_t  angle 
)

Variable Documentation

int* blockmap
int bmapwidth
struct brain_s brain
int clipammo[NUMAMMO]
int iquehead
int iquetail
int itemrespawntime[ITEMQUESIZE]
int maxammo[NUMAMMO]
const int NumSpawnableThings
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends