2014-10-02 22:00:17 +00:00
|
|
|
// Flags for A_PainAttack
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPainAttackFlags
|
|
|
|
{
|
|
|
|
PAF_NOSKULLATTACK = 1,
|
|
|
|
PAF_AIMFACING = 2,
|
|
|
|
PAF_NOTARGET = 4,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_VileAttack
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EVileAttackFlags
|
|
|
|
{
|
|
|
|
VAF_DMGTYPEAPPLYTODIRECT = 1,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Saw
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ESawFlags
|
|
|
|
{
|
|
|
|
SF_NORANDOM = 1,
|
|
|
|
SF_RANDOMLIGHTMISS = 2,
|
|
|
|
SF_RANDOMLIGHTHIT = 4,
|
|
|
|
SF_RANDOMLIGHTBOTH = 6,
|
|
|
|
SF_NOUSEAMMOMISS = 8,
|
|
|
|
SF_NOUSEAMMO = 16,
|
|
|
|
SF_NOPULLIN = 32,
|
|
|
|
SF_NOTURN = 64,
|
|
|
|
SF_STEALARMOR = 128,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2016-06-11 01:22:48 +00:00
|
|
|
// Flags for A_BFGSpray
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EBFGSprayFlags
|
|
|
|
{
|
|
|
|
BFGF_HURTSOURCE = 1,
|
|
|
|
BFGF_MISSILEORIGIN = 2,
|
|
|
|
};
|
2016-06-11 01:22:48 +00:00
|
|
|
|
2014-10-02 22:00:17 +00:00
|
|
|
// Flags for A_CustomMissile
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ECustomMissileFlags
|
|
|
|
{
|
|
|
|
CMF_AIMOFFSET = 1,
|
|
|
|
CMF_AIMDIRECTION = 2,
|
|
|
|
CMF_TRACKOWNER = 4,
|
|
|
|
CMF_CHECKTARGETDEAD = 8,
|
|
|
|
CMF_ABSOLUTEPITCH = 16,
|
|
|
|
CMF_OFFSETPITCH = 32,
|
|
|
|
CMF_SAVEPITCH = 64,
|
|
|
|
CMF_ABSOLUTEANGLE = 128,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_CustomBulletAttack
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ECustomBulletAttackFlags
|
|
|
|
{
|
|
|
|
CBAF_AIMFACING = 1,
|
|
|
|
CBAF_NORANDOM = 2,
|
|
|
|
CBAF_EXPLICITANGLE = 4,
|
|
|
|
CBAF_NOPITCH = 8,
|
|
|
|
CBAF_NORANDOMPUFFZ = 16,
|
|
|
|
CBAF_PUFFTARGET = 32,
|
|
|
|
CBAF_PUFFMASTER = 64,
|
|
|
|
CBAF_PUFFTRACER = 128,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_GunFlash
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EGunFlashFlags
|
|
|
|
{
|
|
|
|
GFF_NOEXTCHANGE = 1,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_FireBullets
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EFireBulletsFlags
|
|
|
|
{
|
|
|
|
FBF_USEAMMO = 1,
|
|
|
|
FBF_NORANDOM = 2,
|
|
|
|
FBF_EXPLICITANGLE = 4,
|
|
|
|
FBF_NOPITCH = 8,
|
|
|
|
FBF_NOFLASH = 16,
|
|
|
|
FBF_NORANDOMPUFFZ = 32,
|
2016-10-09 13:47:31 +00:00
|
|
|
FBF_PUFFTARGET = 64,
|
|
|
|
FBF_PUFFMASTER = 128,
|
|
|
|
FBF_PUFFTRACER = 256,
|
2016-10-07 16:09:28 +00:00
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_SpawnItemEx
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ESpawnItemFlags
|
|
|
|
{
|
|
|
|
SXF_TRANSFERTRANSLATION = 1 << 0,
|
|
|
|
SXF_ABSOLUTEPOSITION = 1 << 1,
|
|
|
|
SXF_ABSOLUTEANGLE = 1 << 2,
|
|
|
|
SXF_ABSOLUTEMOMENTUM = 1 << 3, //Since "momentum" is declared to be deprecated in the expressions, for compatibility
|
|
|
|
SXF_ABSOLUTEVELOCITY = 1 << 3, //purposes, this was made. It does the same thing though. Do not change the value.
|
|
|
|
SXF_SETMASTER = 1 << 4,
|
|
|
|
SXF_NOCHECKPOSITION = 1 << 5,
|
|
|
|
SXF_TELEFRAG = 1 << 6,
|
|
|
|
SXF_CLIENTSIDE = 1 << 7, // only used by Skulltag
|
|
|
|
SXF_TRANSFERAMBUSHFLAG = 1 << 8,
|
|
|
|
SXF_TRANSFERPITCH = 1 << 9,
|
|
|
|
SXF_TRANSFERPOINTERS = 1 << 10,
|
|
|
|
SXF_USEBLOODCOLOR = 1 << 11,
|
|
|
|
SXF_CLEARCALLERTID = 1 << 12,
|
|
|
|
SXF_MULTIPLYSPEED = 1 << 13,
|
|
|
|
SXF_TRANSFERSCALE = 1 << 14,
|
|
|
|
SXF_TRANSFERSPECIAL = 1 << 15,
|
|
|
|
SXF_CLEARCALLERSPECIAL = 1 << 16,
|
|
|
|
SXF_TRANSFERSTENCILCOL = 1 << 17,
|
|
|
|
SXF_TRANSFERALPHA = 1 << 18,
|
|
|
|
SXF_TRANSFERRENDERSTYLE = 1 << 19,
|
|
|
|
SXF_SETTARGET = 1 << 20,
|
|
|
|
SXF_SETTRACER = 1 << 21,
|
|
|
|
SXF_NOPOINTERS = 1 << 22,
|
|
|
|
SXF_ORIGINATOR = 1 << 23,
|
|
|
|
SXF_TRANSFERSPRITEFRAME = 1 << 24,
|
|
|
|
SXF_TRANSFERROLL = 1 << 25,
|
|
|
|
SXF_ISTARGET = 1 << 26,
|
|
|
|
SXF_ISMASTER = 1 << 27,
|
|
|
|
SXF_ISTRACER = 1 << 28,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Chase
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EChaseFlags
|
2016-01-08 01:20:02 +00:00
|
|
|
{
|
|
|
|
CHF_FASTCHASE = 1,
|
|
|
|
CHF_NOPLAYACTIVE = 2,
|
|
|
|
CHF_NIGHTMAREFAST = 4,
|
|
|
|
CHF_RESURRECT = 8,
|
|
|
|
CHF_DONTMOVE = 16,
|
|
|
|
CHF_NORANDOMTURN = 32,
|
2016-01-27 15:35:19 +00:00
|
|
|
CHF_NODIRECTIONTURN = 64,
|
2016-01-08 01:20:02 +00:00
|
|
|
CHF_NOPOSTATTACKTURN = 128,
|
|
|
|
CHF_STOPIFBLOCKED = 256,
|
|
|
|
|
2016-01-27 15:39:46 +00:00
|
|
|
CHF_DONTTURN = CHF_NORANDOMTURN | CHF_NOPOSTATTACKTURN | CHF_STOPIFBLOCKED
|
2016-01-08 01:20:02 +00:00
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_LookEx
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ELookFlags
|
|
|
|
{
|
|
|
|
LOF_NOSIGHTCHECK = 1,
|
|
|
|
LOF_NOSOUNDCHECK = 2,
|
|
|
|
LOF_DONTCHASEGOAL = 4,
|
|
|
|
LOF_NOSEESOUND = 8,
|
|
|
|
LOF_FULLVOLSEESOUND = 16,
|
|
|
|
LOF_NOJUMP = 32,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Respawn
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERespawnFlags
|
|
|
|
{
|
|
|
|
RSF_FOG = 1,
|
|
|
|
RSF_KEEPTARGET = 2,
|
|
|
|
RSF_TELEFRAG = 4,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_JumpIfTargetInLOS and A_JumpIfInTargetLOS
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EJumpFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
|
|
|
JLOSF_PROJECTILE = 1,
|
|
|
|
JLOSF_NOSIGHT = 1 << 1,
|
|
|
|
JLOSF_CLOSENOFOV = 1 << 2,
|
|
|
|
JLOSF_CLOSENOSIGHT = 1 << 3,
|
|
|
|
JLOSF_CLOSENOJUMP = 1 << 4,
|
|
|
|
JLOSF_DEADNOJUMP = 1 << 5,
|
|
|
|
JLOSF_CHECKMASTER = 1 << 6,
|
|
|
|
JLOSF_TARGETLOS = 1 << 7,
|
|
|
|
JLOSF_FLIPFOV = 1 << 8,
|
|
|
|
JLOSF_ALLYNOJUMP = 1 << 9,
|
|
|
|
JLOSF_COMBATANTONLY = 1 << 10,
|
|
|
|
JLOSF_NOAUTOAIM = 1 << 11,
|
|
|
|
JLOSF_CHECKTRACER = 1 << 12,
|
|
|
|
};
|
|
|
|
|
|
|
|
// Flags for A_ChangeVelocity
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EChangeVelocityFlags
|
|
|
|
{
|
|
|
|
CVF_RELATIVE = 1,
|
|
|
|
CVF_REPLACE = 2,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_WeaponReady
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EWeaponReadyFlags
|
|
|
|
{
|
|
|
|
WRF_NOBOB = 1,
|
|
|
|
WRF_NOSWITCH = 2,
|
|
|
|
WRF_NOPRIMARY = 4,
|
|
|
|
WRF_NOSECONDARY = 8,
|
|
|
|
WRF_NOFIRE = WRF_NOPRIMARY | WRF_NOSECONDARY,
|
|
|
|
WRF_ALLOWRELOAD = 16,
|
|
|
|
WRF_ALLOWZOOM = 32,
|
|
|
|
WRF_DISABLESWITCH = 64,
|
|
|
|
WRF_ALLOWUSER1 = 128,
|
|
|
|
WRF_ALLOWUSER2 = 256,
|
|
|
|
WRF_ALLOWUSER3 = 512,
|
|
|
|
WRF_ALLOWUSER4 = 1024,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2016-07-29 23:48:54 +00:00
|
|
|
// Flags for A_SelectWeapon
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ESelectWeaponFlags
|
|
|
|
{
|
|
|
|
SWF_SELECTPRIORITY = 1,
|
|
|
|
};
|
2016-07-29 23:48:54 +00:00
|
|
|
|
2014-10-02 22:00:17 +00:00
|
|
|
// Morph constants
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EMorphFlags
|
|
|
|
{
|
|
|
|
MRF_ADDSTAMINA = 1,
|
|
|
|
MRF_FULLHEALTH = 2,
|
|
|
|
MRF_UNDOBYTOMEOFPOWER = 4,
|
|
|
|
MRF_UNDOBYCHAOSDEVICE = 8,
|
|
|
|
MRF_FAILNOTELEFRAG = 16,
|
|
|
|
MRF_FAILNOLAUGH = 32,
|
|
|
|
MRF_WHENINVULNERABLE = 64,
|
|
|
|
MRF_LOSEACTUALWEAPON = 128,
|
|
|
|
MRF_NEWTIDBEHAVIOUR = 256,
|
|
|
|
MRF_UNDOBYDEATH = 512,
|
|
|
|
MRF_UNDOBYDEATHFORCED = 1024,
|
|
|
|
MRF_UNDOBYDEATHSAVES = 2048,
|
|
|
|
MRF_UNDOALWAYS = 4096,
|
|
|
|
MRF_TRANSFERTRANSLATION = 8192,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_RailAttack and A_CustomRailgun
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERailFlags
|
|
|
|
{
|
|
|
|
RGF_SILENT = 1,
|
|
|
|
RGF_NOPIERCING = 2,
|
|
|
|
RGF_EXPLICITANGLE = 4,
|
|
|
|
RGF_FULLBRIGHT = 8,
|
|
|
|
RGF_CENTERZ = 16,
|
|
|
|
RGF_NORANDOMPUFFZ = 32,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Mushroom
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EMushroomFlags
|
|
|
|
{
|
|
|
|
MSF_Standard = 0,
|
|
|
|
MSF_Classic = 1,
|
|
|
|
MSF_DontHurt = 2,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Explode
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EExplodeFlags
|
|
|
|
{
|
|
|
|
XF_HURTSOURCE = 1,
|
|
|
|
XF_NOTMISSILE = 4,
|
|
|
|
XF_EXPLICITDAMAGETYPE = 1 << 3,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_RadiusThrust
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERadiusThrustFlags
|
|
|
|
{
|
|
|
|
RTF_AFFECTSOURCE = 1,
|
|
|
|
RTF_NOIMPACTDAMAGE = 2,
|
|
|
|
RTF_NOTMISSILE = 4,
|
|
|
|
RTF_THRUSTZ = 16,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2016-06-14 00:38:00 +00:00
|
|
|
// Flags for A_RadiusDamageSelf
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERadiusDamageSelfFlags
|
|
|
|
{
|
|
|
|
RDSF_BFGDAMAGE = 1,
|
|
|
|
};
|
2016-06-14 00:38:00 +00:00
|
|
|
|
2014-10-02 22:00:17 +00:00
|
|
|
// Flags for A_Blast
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EBlastFlags
|
|
|
|
{
|
|
|
|
BF_USEAMMO = 1,
|
|
|
|
BF_DONTWARN = 2,
|
|
|
|
BF_AFFECTBOSSES = 4,
|
|
|
|
BF_NOIMPACTDAMAGE = 8,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_SeekerMissile
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ESeekerMissileFlags
|
|
|
|
{
|
|
|
|
SMF_LOOK = 1,
|
|
|
|
SMF_PRECISE = 2,
|
|
|
|
SMF_CURSPEED = 4,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_CustomPunch
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ECustomPunchFlags
|
|
|
|
{
|
|
|
|
CPF_USEAMMO = 1,
|
|
|
|
CPF_DAGGER = 2,
|
|
|
|
CPF_PULLIN = 4,
|
|
|
|
CPF_NORANDOMPUFFZ = 8,
|
|
|
|
CPF_NOTURN = 16,
|
|
|
|
CPF_STEALARMOR = 32,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2016-10-09 13:47:31 +00:00
|
|
|
enum EFireCustomMissileFlags
|
2016-10-07 16:09:28 +00:00
|
|
|
{
|
|
|
|
FPF_AIMATANGLE = 1,
|
|
|
|
FPF_TRANSFERTRANSLATION = 2,
|
|
|
|
FPF_NOAUTOAIM = 4,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Teleport
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ETeleportFlags
|
2014-12-19 18:37:02 +00:00
|
|
|
{
|
|
|
|
TF_TELEFRAG = 0x00000001, // Allow telefrag in order to teleport.
|
|
|
|
TF_RANDOMDECIDE = 0x00000002, // Randomly fail based on health. (A_Srcr2Decide)
|
|
|
|
TF_FORCED = 0x00000004, // Forget what's in the way. TF_Telefrag takes precedence though.
|
|
|
|
TF_KEEPVELOCITY = 0x00000008, // Preserve velocity.
|
|
|
|
TF_KEEPANGLE = 0x00000010, // Keep angle.
|
|
|
|
TF_USESPOTZ = 0x00000020, // Set the z to the spot's z, instead of the floor.
|
|
|
|
TF_NOSRCFOG = 0x00000040, // Don't leave any fog behind when teleporting.
|
|
|
|
TF_NODESTFOG = 0x00000080, // Don't spawn any fog at the arrival position.
|
|
|
|
TF_USEACTORFOG = 0x00000100, // Use the actor's TeleFogSourceType and TeleFogDestType fogs.
|
|
|
|
TF_NOJUMP = 0x00000200, // Don't jump after teleporting.
|
2015-05-01 13:32:07 +00:00
|
|
|
TF_OVERRIDE = 0x00000400, // Ignore NOTELEPORT.
|
2015-12-17 16:34:38 +00:00
|
|
|
TF_SENSITIVEZ = 0x00000800, // Fail if the actor wouldn't fit in the position (for Z).
|
2014-12-19 18:37:02 +00:00
|
|
|
|
|
|
|
TF_KEEPORIENTATION = TF_KEEPVELOCITY|TF_KEEPANGLE,
|
|
|
|
TF_NOFOG = TF_NOSRCFOG|TF_NODESTFOG,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_WolfAttack
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EWolfAttackFlags
|
|
|
|
{
|
|
|
|
WAF_NORANDOM = 1,
|
|
|
|
WAF_USEPUFF = 2
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_RadiusGive
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERadiusGiveFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
|
|
|
RGF_GIVESELF = 1,
|
2014-10-29 19:01:31 +00:00
|
|
|
RGF_PLAYERS = 1 << 1,
|
|
|
|
RGF_MONSTERS = 1 << 2,
|
|
|
|
RGF_OBJECTS = 1 << 3,
|
|
|
|
RGF_VOODOO = 1 << 4,
|
|
|
|
RGF_CORPSES = 1 << 5,
|
|
|
|
RGF_NOTARGET = 1 << 6,
|
|
|
|
RGF_NOTRACER = 1 << 7,
|
|
|
|
RGF_NOMASTER = 1 << 8,
|
|
|
|
RGF_CUBE = 1 << 9,
|
|
|
|
RGF_NOSIGHT = 1 << 10,
|
|
|
|
RGF_MISSILES = 1 << 11,
|
- Significant A_RadiusGive update.
- Added filter and species parameter.
- Added new flags: RGF_INCLUSIVE, RGF_ITEMS, RGF_KILLED, RGF_EXFILTER, RGF_EXSPECIES, and RGF_EITHER.
- RGF_ITEMS: Items can receive inventory.
- RGF_KILLED: Actors who are truly dead might not be corpses, and vice versa.
- RGF_EXFILTER: Blacklists the specified actor filter. All but the filtered actor can receive the item.
- RGF_EXSPECIES: Blacklists the specified species. All but the filtered species can receive the item.
- RGF_EITHER: The actor can receive the item if it satisfies either the filter or the species. Only useful when both are used.
- RGF_INCLUSIVE: An actor marked as more than one pointer to the calling actor can ignore the exclusion pointers, but only if at least one is missing. I.e. an actor who is a target and tracer of the calling actor can still receive the item, if the calling actor doesn't pass RGF_NOTARGET and NOTRACER at the same time. RGF_INCLUSIVE only works with the pointer filtering flags. By default, if not specified, the actor will not be loopholed the item if they are under any one of the three filters.
- Fixed discrepancies and dependencies upon several flags and actor conditions which caused the function to fail.
2015-07-22 21:46:14 +00:00
|
|
|
RGF_INCLUSIVE = 1 << 12,
|
|
|
|
RGF_ITEMS = 1 << 13,
|
|
|
|
RGF_KILLED = 1 << 14,
|
|
|
|
RGF_EXFILTER = 1 << 15,
|
|
|
|
RGF_EXSPECIES = 1 << 16,
|
|
|
|
RGF_EITHER = 1 << 17,
|
2014-10-02 22:00:17 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// Activation flags
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EActivationFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
|
|
|
THINGSPEC_Default = 0,
|
|
|
|
THINGSPEC_ThingActs = 1,
|
|
|
|
THINGSPEC_ThingTargets = 2,
|
|
|
|
THINGSPEC_TriggerTargets = 4,
|
|
|
|
THINGSPEC_MonsterTrigger = 8,
|
|
|
|
THINGSPEC_MissileTrigger = 16,
|
|
|
|
THINGSPEC_ClearSpecial = 32,
|
|
|
|
THINGSPEC_NoDeathSpecial = 64,
|
|
|
|
THINGSPEC_TriggerActs = 128,
|
2016-10-07 16:09:28 +00:00
|
|
|
|
|
|
|
// Shorter aliases for same
|
|
|
|
AF_Default = 0,
|
|
|
|
AF_ThingActs = 1,
|
|
|
|
AF_ThingTargets = 2,
|
|
|
|
AF_TriggerTargets = 4,
|
|
|
|
AF_MonsterTrigger = 8,
|
|
|
|
AF_MissileTrigger = 16,
|
|
|
|
AF_ClearSpecial = 32,
|
|
|
|
AF_NoDeathSpecial = 64,
|
|
|
|
AF_TriggerActs = 128,
|
|
|
|
|
2014-10-02 22:00:17 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// Flags for A_TakeInventory and A_TakeFromTarget
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ETakeFlags
|
|
|
|
{
|
|
|
|
TIF_NOTAKEINFINITE = 1
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// constants for A_PlaySound
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ESoundFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
|
|
|
CHAN_AUTO = 0,
|
|
|
|
CHAN_WEAPON = 1,
|
|
|
|
CHAN_VOICE = 2,
|
|
|
|
CHAN_ITEM = 3,
|
|
|
|
CHAN_BODY = 4,
|
|
|
|
CHAN_5 = 5,
|
|
|
|
CHAN_6 = 6,
|
|
|
|
CHAN_7 = 7,
|
|
|
|
|
|
|
|
// modifier flags
|
|
|
|
CHAN_LISTENERZ = 8,
|
|
|
|
CHAN_MAYBE_LOCAL = 16,
|
|
|
|
CHAN_UI = 32,
|
|
|
|
CHAN_NOPAUSE = 64
|
|
|
|
};
|
|
|
|
|
|
|
|
// sound attenuation values
|
2016-10-07 16:09:28 +00:00
|
|
|
const ATTN_NONE = 0;
|
|
|
|
const ATTN_NORM = 1;
|
|
|
|
const ATTN_IDLE = 1.001;
|
|
|
|
const ATTN_STATIC = 3;
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// For SetPlayerProprty action special
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPlayerProperties
|
|
|
|
{
|
|
|
|
PROP_FROZEN = 0,
|
|
|
|
PROP_NOTARGET = 1,
|
|
|
|
PROP_INSTANTWEAPONSWITCH = 2,
|
|
|
|
PROP_FLY = 3,
|
|
|
|
PROP_TOTALLYFROZEN = 4,
|
|
|
|
PROP_INVULNERABILITY = 5, // (Deprecated)
|
|
|
|
PROP_STRENGTH = 6, // (Deprecated)
|
|
|
|
PROP_INVISIBILITY = 7, // (Deprecated)
|
|
|
|
PROP_RADIATIONSUIT = 8, // (Deprecated)
|
|
|
|
PROP_ALLMAP = 9, // (Deprecated)
|
|
|
|
PROP_INFRARED = 10, // (Deprecated)
|
|
|
|
PROP_WEAPONLEVEL2 = 11, // (Deprecated)
|
|
|
|
PROP_FLIGHT = 12, // (Deprecated)
|
|
|
|
PROP_SPEED = 15, // (Deprecated)
|
|
|
|
PROP_BUDDHA = 16,
|
|
|
|
}
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Line_SetBlocking
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EBlockFlags
|
|
|
|
{
|
|
|
|
BLOCKF_CREATURES = 1,
|
|
|
|
BLOCKF_MONSTERS = 2,
|
|
|
|
BLOCKF_PLAYERS = 4,
|
|
|
|
BLOCKF_FLOATERS = 8,
|
|
|
|
BLOCKF_PROJECTILES = 16,
|
|
|
|
BLOCKF_EVERYTHING = 32,
|
|
|
|
BLOCKF_RAILING = 64,
|
|
|
|
BLOCKF_USE = 128,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Pointer constants, bitfield-enabled
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPointerFlags
|
|
|
|
{
|
|
|
|
AAPTR_DEFAULT = 0,
|
|
|
|
AAPTR_NULL = 0x1,
|
|
|
|
AAPTR_TARGET = 0x2,
|
|
|
|
AAPTR_MASTER = 0x4,
|
|
|
|
AAPTR_TRACER = 0x8,
|
|
|
|
|
|
|
|
AAPTR_PLAYER_GETTARGET = 0x10,
|
|
|
|
AAPTR_PLAYER_GETCONVERSATION = 0x20,
|
|
|
|
|
|
|
|
AAPTR_PLAYER1 = 0x40,
|
|
|
|
AAPTR_PLAYER2 = 0x80,
|
|
|
|
AAPTR_PLAYER3 = 0x100,
|
|
|
|
AAPTR_PLAYER4 = 0x200,
|
|
|
|
AAPTR_PLAYER5 = 0x400,
|
|
|
|
AAPTR_PLAYER6 = 0x800,
|
|
|
|
AAPTR_PLAYER7 = 0x1000,
|
|
|
|
AAPTR_PLAYER8 = 0x2000,
|
|
|
|
AAPTR_FRIENDPLAYER = 0x4000,
|
|
|
|
AAPTR_LINETARGET = 0x8000,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Pointer operation flags
|
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPointerOperations
|
|
|
|
{
|
|
|
|
PTROP_UNSAFETARGET = 1,
|
|
|
|
PTROP_UNSAFEMASTER = 2,
|
|
|
|
PTROP_NOSAFEGUARDS = PTROP_UNSAFETARGET|PTROP_UNSAFEMASTER,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Warp
|
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EWarpFlags
|
|
|
|
{
|
|
|
|
WARPF_ABSOLUTEOFFSET = 0x1,
|
|
|
|
WARPF_ABSOLUTEANGLE = 0x2,
|
|
|
|
WARPF_USECALLERANGLE = 0x4,
|
|
|
|
WARPF_NOCHECKPOSITION = 0x8,
|
|
|
|
WARPF_INTERPOLATE = 0x10,
|
|
|
|
WARPF_WARPINTERPOLATION = 0x20,
|
|
|
|
WARPF_COPYINTERPOLATION = 0x40,
|
|
|
|
WARPF_STOP = 0x80,
|
|
|
|
WARPF_TOFLOOR = 0x100,
|
|
|
|
WARPF_TESTONLY = 0x200,
|
|
|
|
WAPRF_ABSOLUTEPOSITION = 0x400,
|
|
|
|
WARPF_ABSOLUTEPOSITION = 0x400,
|
|
|
|
WARPF_BOB = 0x800,
|
|
|
|
WARPF_MOVEPTR = 0x1000,
|
|
|
|
WARPF_USETID = 0x2000,
|
|
|
|
WARPF_COPYVELOCITY = 0x4000,
|
|
|
|
WARPF_COPYPITCH = 0x8000,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2015-01-05 09:51:32 +00:00
|
|
|
// flags for A_SetPitch/SetAngle/SetRoll
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EAngleFlags
|
|
|
|
{
|
|
|
|
SPF_FORCECLAMP = 1,
|
|
|
|
SPF_INTERPOLATE = 2,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// flags for A_CheckLOF
|
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ELOFFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
|
|
|
CLOFF_NOAIM_VERT = 0x1,
|
|
|
|
CLOFF_NOAIM_HORZ = 0x2,
|
|
|
|
|
|
|
|
CLOFF_JUMPENEMY = 0x4,
|
|
|
|
CLOFF_JUMPFRIEND = 0x8,
|
|
|
|
CLOFF_JUMPOBJECT = 0x10,
|
|
|
|
CLOFF_JUMPNONHOSTILE = 0x20,
|
|
|
|
|
|
|
|
CLOFF_SKIPENEMY = 0x40,
|
|
|
|
CLOFF_SKIPFRIEND = 0x80,
|
|
|
|
CLOFF_SKIPOBJECT = 0x100,
|
|
|
|
CLOFF_SKIPNONHOSTILE = 0x200,
|
|
|
|
|
|
|
|
CLOFF_MUSTBESHOOTABLE = 0x400,
|
|
|
|
|
|
|
|
CLOFF_SKIPTARGET = 0x800,
|
|
|
|
CLOFF_ALLOWNULL = 0x1000,
|
|
|
|
CLOFF_CHECKPARTIAL = 0x2000,
|
|
|
|
|
|
|
|
CLOFF_MUSTBEGHOST = 0x4000,
|
|
|
|
CLOFF_IGNOREGHOST = 0x8000,
|
|
|
|
|
|
|
|
CLOFF_MUSTBESOLID = 0x10000,
|
|
|
|
CLOFF_BEYONDTARGET = 0x20000,
|
|
|
|
|
|
|
|
CLOFF_FROMBASE = 0x40000,
|
|
|
|
CLOFF_MUL_HEIGHT = 0x80000,
|
|
|
|
CLOFF_MUL_WIDTH = 0x100000,
|
|
|
|
|
|
|
|
CLOFF_JUMP_ON_MISS = 0x200000,
|
|
|
|
CLOFF_AIM_VERT_NOOFFSET = 0x400000,
|
|
|
|
|
2014-12-15 20:50:35 +00:00
|
|
|
CLOFF_SETTARGET = 0x800000,
|
|
|
|
CLOFF_SETMASTER = 0x1000000,
|
|
|
|
CLOFF_SETTRACER = 0x2000000,
|
|
|
|
|
2014-10-02 22:00:17 +00:00
|
|
|
CLOFF_SKIPOBSTACLES = CLOFF_SKIPENEMY|CLOFF_SKIPFRIEND|CLOFF_SKIPOBJECT|CLOFF_SKIPNONHOSTILE,
|
|
|
|
CLOFF_NOAIM = CLOFF_NOAIM_VERT|CLOFF_NOAIM_HORZ
|
|
|
|
};
|
|
|
|
|
|
|
|
// Flags for A_Kill (Master/Target/Tracer/Children/Siblings) series
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EKillFlags
|
2014-12-21 16:38:51 +00:00
|
|
|
{
|
|
|
|
KILS_FOILINVUL = 0x00000001,
|
|
|
|
KILS_KILLMISSILES = 0x00000002,
|
|
|
|
KILS_NOMONSTERS = 0x00000004,
|
|
|
|
KILS_FOILBUDDHA = 0x00000008,
|
|
|
|
KILS_EXFILTER = 0x00000010,
|
|
|
|
KILS_EXSPECIES = 0x00000020,
|
|
|
|
KILS_EITHER = 0x00000040,
|
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Damage (Master/Target/Tracer/Children/Siblings/Self) series
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EDamageFlags
|
2014-12-21 16:38:51 +00:00
|
|
|
{
|
|
|
|
DMSS_FOILINVUL = 0x00000001,
|
|
|
|
DMSS_AFFECTARMOR = 0x00000002,
|
|
|
|
DMSS_KILL = 0x00000004,
|
|
|
|
DMSS_NOFACTOR = 0x00000008,
|
|
|
|
DMSS_FOILBUDDHA = 0x00000010,
|
|
|
|
DMSS_NOPROTECT = 0x00000020,
|
|
|
|
DMSS_EXFILTER = 0x00000040,
|
|
|
|
DMSS_EXSPECIES = 0x00000080,
|
|
|
|
DMSS_EITHER = 0x00000100,
|
2016-07-19 01:59:07 +00:00
|
|
|
DMSS_INFLICTORDMGTYPE = 0x00000200,
|
2014-12-21 16:38:51 +00:00
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_AlertMonsters
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EAlertFlags
|
|
|
|
{
|
|
|
|
AMF_TARGETEMITTER = 1,
|
|
|
|
AMF_TARGETNONPLAYER = 2,
|
|
|
|
AMF_EMITFROMTARGET = 4,
|
|
|
|
}
|
2014-10-02 22:00:17 +00:00
|
|
|
|
|
|
|
// Flags for A_Remove*
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ERemoveFlags
|
2014-10-02 22:00:17 +00:00
|
|
|
{
|
2014-12-21 16:38:51 +00:00
|
|
|
RMVF_MISSILES = 0x00000001,
|
|
|
|
RMVF_NOMONSTERS = 0x00000002,
|
|
|
|
RMVF_MISC = 0x00000004,
|
|
|
|
RMVF_EVERYTHING = 0x00000008,
|
|
|
|
RMVF_EXFILTER = 0x00000010,
|
|
|
|
RMVF_EXSPECIES = 0x00000020,
|
|
|
|
RMVF_EITHER = 0x00000040,
|
2014-10-02 22:00:17 +00:00
|
|
|
};
|
|
|
|
|
2014-11-25 19:24:35 +00:00
|
|
|
// Flags for A_Fade*
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EFadeFlags
|
2014-11-25 19:24:35 +00:00
|
|
|
{
|
|
|
|
FTF_REMOVE = 1 << 0,
|
|
|
|
FTF_CLAMP = 1 << 1,
|
|
|
|
};
|
|
|
|
|
2015-01-30 22:48:24 +00:00
|
|
|
// Flags for A_Face*
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EFaceFlags
|
2015-01-30 22:48:24 +00:00
|
|
|
{
|
|
|
|
FAF_BOTTOM = 1,
|
|
|
|
FAF_MIDDLE = 2,
|
|
|
|
FAF_TOP = 4,
|
|
|
|
FAF_NODISTFACTOR = 8,
|
|
|
|
};
|
|
|
|
|
2015-02-14 21:58:39 +00:00
|
|
|
// Flags for A_QuakeEx
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EQuakeFlags
|
2015-02-14 21:58:39 +00:00
|
|
|
{
|
2015-02-20 03:42:32 +00:00
|
|
|
QF_RELATIVE = 1,
|
|
|
|
QF_SCALEDOWN = 1 << 1,
|
|
|
|
QF_SCALEUP = 1 << 2,
|
2015-02-20 16:46:37 +00:00
|
|
|
QF_MAX = 1 << 3,
|
2015-02-20 17:06:41 +00:00
|
|
|
QF_FULLINTENSITY = 1 << 4,
|
Added QF_SINE
- Squashed commit of the following:
commit bc45fe3263d34ef5f746f524687999c19bf7b779
Author: Randy Heit <rheit@users.noreply.github.com>
Date: Sun Mar 1 18:51:05 2015 -0600
wave scale -> wave speed
commit ff96388b128c724c1198757bfa52f1935a263356
Author: Randy Heit <rheit@users.noreply.github.com>
Date: Sun Mar 1 18:45:32 2015 -0600
More sine quake fixes
commit 2a89749a6fe6d271b9fbdc218779f680afcf4cb6
Merge: 719dfbe 5456074
Author: MajorCooke <paul.growney22@gmail.com>
Date: Sat Feb 28 20:37:22 2015 -0600
Added QF_WAVE to A_QuakeEx.
- Changes the random quakes into a sine wave (see Shadow Warrior/Rise of the Triad reboots, Hard Reset, etc.)
- Added 3 properties to control waves per second along each individual axis. Only works with QF_WAVE.
- Intensity X/Y/Z property becomes the amplitude of the wave.
- Stacks with regular quakes, allowing shaking along the camera which must be called using A_QuakeEx WITHOUT the flag, or the other quaking functions.
- Uses the youngest quake's time for positioning.
commit 54560741581e8d15cc7060e8e068cf85e9a4b432
Author: MajorCooke <paul.growney22@gmail.com>
Date: Sat Feb 28 20:21:19 2015 -0600
Recommitted recommended changes by Randi, with some modifications. Now, we should be finished!
commit 6f4473013411686d88fc185bdc1cc58b1035b0f1
Author: MajorCooke <paul.growney22@gmail.com>
Date: Sat Feb 28 12:52:57 2015 -0600
Finish this revert.
commit 467e53f9400f588a2ada9b32e7634cb1f4ad5066
Author: MajorCooke <paul.growney22@gmail.com>
Date: Sat Feb 28 12:46:02 2015 -0600
Reverted back to what was working.
commit da9de56a67efda08036e481fd5fccd5392ce6810
Author: MajorCooke <paul.growney22@gmail.com>
Date: Thu Feb 26 18:53:20 2015 -0600
Forgot this bit, for testing.
commit c5093d9bb97caf8478cefc32abc56a036feeea58
Author: MajorCooke <paul.growney22@gmail.com>
Date: Thu Feb 26 18:52:46 2015 -0600
Some more progress, but...
- This did not solve anything. In fact, it did the opposite -- completely broke wave quakes. Now they only happen whenever a random quake is in progress.
- Left in the commented code on purpose so Randi can test it.
commit 7e526405d2127cbb279f66008c8f8e55a5d497f3
Author: MajorCooke <paul.growney22@gmail.com>
Date: Wed Feb 25 17:50:42 2015 -0600
- Use newest waveform timer, not oldest.
commit 1356443609dbc6c7f46e081d0846816dc0836124
Author: MajorCooke <paul.growney22@gmail.com>
Date: Wed Feb 25 17:32:09 2015 -0600
- Got regular quakes to multiply onto sine quakes, but the vice versa needs fixing too.
commit d95796c94c70cd0229d4a6d30f69e3a7568b9588
Author: MajorCooke <paul.growney22@gmail.com>
Date: Wed Feb 25 16:46:21 2015 -0600
- Last hurdle. Now just need to figure out how to properly scale up and down.
commit 4bc3458e689155ce72c09776604d9eb4fa73d8be
Author: MajorCooke <paul.growney22@gmail.com>
Date: Tue Feb 24 23:18:03 2015 -0600
- Fixed the quakes being unstackable.
commit b51012d6d4ea065bf7f6fc9c1a0472966491f7af
Author: MajorCooke <paul.growney22@gmail.com>
Date: Mon Feb 23 23:48:34 2015 -0600
QF_WAVE renamed from SINE.
- Lots of ground covered, but still more to go.
- Still need to figure out how to make the camera properly shudder.
commit 427e4893193470bbf45415ffec70a0b69b8cccfd
Author: MajorCooke <paul.growney22@gmail.com>
Date: Sun Feb 22 16:52:30 2015 -0600
- Begin the groundworks for QF_SINE.
- Need to figure out how to rework and manipulate the sine wave to move faster, and to allow going below 0 without breaking it too much.
2015-03-02 00:53:34 +00:00
|
|
|
QF_WAVE = 1 << 5,
|
2015-02-14 21:58:39 +00:00
|
|
|
};
|
2014-10-02 22:00:17 +00:00
|
|
|
|
2015-11-28 16:53:34 +00:00
|
|
|
// A_CheckProximity flags
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EProximityFlags
|
2015-11-28 16:53:34 +00:00
|
|
|
{
|
|
|
|
CPXF_ANCESTOR = 1,
|
|
|
|
CPXF_LESSOREQUAL = 1 << 1,
|
|
|
|
CPXF_NOZ = 1 << 2,
|
|
|
|
CPXF_COUNTDEAD = 1 << 3,
|
|
|
|
CPXF_DEADONLY = 1 << 4,
|
|
|
|
CPXF_EXACT = 1 << 5,
|
2016-01-07 23:09:02 +00:00
|
|
|
CPXF_SETTARGET = 1 << 6,
|
|
|
|
CPXF_SETMASTER = 1 << 7,
|
|
|
|
CPXF_SETTRACER = 1 << 8,
|
|
|
|
CPXF_FARTHEST = 1 << 9,
|
|
|
|
CPXF_CLOSEST = 1 << 10,
|
|
|
|
CPXF_SETONPTR = 1 << 11,
|
2016-01-26 16:00:20 +00:00
|
|
|
CPXF_CHECKSIGHT = 1 << 12,
|
2015-11-28 16:53:34 +00:00
|
|
|
};
|
|
|
|
|
2015-10-04 21:00:40 +00:00
|
|
|
// Flags for A_CheckBlock
|
|
|
|
// These flags only affect the calling actor('s pointer), not the ones being searched.
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ECheckBlockFlags
|
2015-10-04 21:00:40 +00:00
|
|
|
{
|
|
|
|
CBF_NOLINES = 1 << 0, //Don't check actors.
|
|
|
|
CBF_SETTARGET = 1 << 1, //Sets the caller/pointer's target to the actor blocking it. Actors only.
|
|
|
|
CBF_SETMASTER = 1 << 2, //^ but with master.
|
|
|
|
CBF_SETTRACER = 1 << 3, //^ but with tracer.
|
|
|
|
CBF_SETONPTR = 1 << 4, //Sets the pointer change on the actor doing the checking instead of self.
|
2016-01-31 15:45:41 +00:00
|
|
|
CBF_DROPOFF = 1 << 5, //Check for dropoffs.
|
2016-03-03 02:35:54 +00:00
|
|
|
CBF_NOACTORS = 1 << 6, //Don't check actors.
|
2016-03-10 18:54:23 +00:00
|
|
|
CBF_ABSOLUTEPOS = 1 << 7, //Absolute position for offsets.
|
|
|
|
CBF_ABSOLUTEANGLE = 1 << 8, //Absolute angle for offsets.
|
2015-10-04 21:00:40 +00:00
|
|
|
};
|
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EParticleFlags
|
2016-01-21 22:36:58 +00:00
|
|
|
{
|
|
|
|
SPF_FULLBRIGHT = 1,
|
|
|
|
SPF_RELPOS = 1 << 1,
|
|
|
|
SPF_RELVEL = 1 << 2,
|
|
|
|
SPF_RELACCEL = 1 << 3,
|
|
|
|
SPF_RELANG = 1 << 4,
|
2016-06-10 23:15:43 +00:00
|
|
|
SPF_NOTIMEFREEZE = 1 << 5,
|
2016-01-21 22:36:58 +00:00
|
|
|
|
|
|
|
SPF_RELATIVE = SPF_RELPOS|SPF_RELVEL|SPF_RELACCEL|SPF_RELANG
|
|
|
|
};
|
|
|
|
|
2016-01-27 16:12:13 +00:00
|
|
|
//Flags for A_FaceMovementDirection
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EMovementFlags
|
2016-01-27 16:12:13 +00:00
|
|
|
{
|
|
|
|
FMDF_NOPITCH = 1 << 0,
|
|
|
|
FMDF_INTERPOLATE = 1 << 1,
|
|
|
|
FMDF_NOANGLE = 1 << 2,
|
2015-11-25 07:44:19 +00:00
|
|
|
};
|
2016-05-05 23:33:36 +00:00
|
|
|
|
|
|
|
// Flags for GetZAt
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EZFlags
|
2016-05-05 23:33:36 +00:00
|
|
|
{
|
2016-05-12 18:23:10 +00:00
|
|
|
GZF_ABSOLUTEPOS = 1, // Use the absolute position instead of an offsetted one.
|
|
|
|
GZF_ABSOLUTEANG = 1 << 1, // Don't add the actor's angle to the parameter.
|
|
|
|
GZF_CEILING = 1 << 2, // Check the ceiling instead of the floor.
|
|
|
|
GZF_3DRESTRICT = 1 << 3, // Ignore midtextures and 3D floors above the pointer's z.
|
|
|
|
GZF_NOPORTALS = 1 << 4, // Don't pass through any portals.
|
|
|
|
GZF_NO3DFLOOR = 1 << 5, // Pass all 3D floors.
|
2016-05-05 23:33:36 +00:00
|
|
|
};
|
2016-05-17 20:44:03 +00:00
|
|
|
|
|
|
|
// Flags for A_WeaponOffset
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EWeaponOffsetFlags
|
2016-05-17 20:44:03 +00:00
|
|
|
{
|
|
|
|
WOF_KEEPX = 1,
|
|
|
|
WOF_KEEPY = 1 << 1,
|
|
|
|
WOF_ADD = 1 << 2,
|
2016-05-26 19:51:52 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// Flags for psprite layers
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPSpriteFlags
|
2016-05-26 19:51:52 +00:00
|
|
|
{
|
|
|
|
PSPF_ADDWEAPON = 1 << 0,
|
|
|
|
PSPF_ADDBOB = 1 << 1,
|
2016-06-02 21:58:21 +00:00
|
|
|
PSPF_POWDOUBLE = 1 << 2,
|
|
|
|
PSPF_CVARFAST = 1 << 3,
|
2016-10-11 22:20:58 +00:00
|
|
|
PSPF_FLIP = 1 << 6,
|
2016-05-26 19:51:52 +00:00
|
|
|
};
|
2016-05-27 16:08:56 +00:00
|
|
|
|
|
|
|
// Default psprite layers
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EPSPLayers
|
2016-05-27 16:08:56 +00:00
|
|
|
{
|
|
|
|
PSP_WEAPON = 1,
|
|
|
|
PSP_FLASH = 1000,
|
|
|
|
};
|
2016-06-20 13:49:57 +00:00
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EInputFlags
|
2016-06-20 13:49:57 +00:00
|
|
|
{
|
|
|
|
// These are the original inputs sent by the player.
|
|
|
|
INPUT_OLDBUTTONS,
|
|
|
|
INPUT_BUTTONS,
|
|
|
|
INPUT_PITCH,
|
|
|
|
INPUT_YAW,
|
|
|
|
INPUT_ROLL,
|
|
|
|
INPUT_FORWARDMOVE,
|
|
|
|
INPUT_SIDEMOVE,
|
|
|
|
INPUT_UPMOVE,
|
|
|
|
|
|
|
|
// These are the inputs, as modified by P_PlayerThink().
|
|
|
|
// Most of the time, these will match the original inputs, but
|
|
|
|
// they can be different if a player is frozen or using a
|
|
|
|
// chainsaw.
|
|
|
|
MODINPUT_OLDBUTTONS,
|
|
|
|
MODINPUT_BUTTONS,
|
|
|
|
MODINPUT_PITCH,
|
|
|
|
MODINPUT_YAW,
|
|
|
|
MODINPUT_ROLL,
|
|
|
|
MODINPUT_FORWARDMOVE,
|
|
|
|
MODINPUT_SIDEMOVE,
|
|
|
|
MODINPUT_UPMOVE
|
|
|
|
};
|
|
|
|
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EButtons
|
2016-06-20 13:49:57 +00:00
|
|
|
{
|
|
|
|
BT_ATTACK = 1<<0, // Press "Fire".
|
|
|
|
BT_USE = 1<<1, // Use button, to open doors, activate switches.
|
|
|
|
BT_JUMP = 1<<2,
|
|
|
|
BT_CROUCH = 1<<3,
|
|
|
|
BT_TURN180 = 1<<4,
|
|
|
|
BT_ALTATTACK = 1<<5, // Press your other "Fire".
|
|
|
|
BT_RELOAD = 1<<6, // [XA] Reload key. Causes state jump in A_WeaponReady.
|
|
|
|
BT_ZOOM = 1<<7, // [XA] Zoom key. Ditto.
|
|
|
|
|
|
|
|
// The rest are all ignored by the play simulation and are for scripts.
|
|
|
|
BT_SPEED = 1<<8,
|
|
|
|
BT_STRAFE = 1<<9,
|
|
|
|
|
|
|
|
BT_MOVERIGHT = 1<<10,
|
|
|
|
BT_MOVELEFT = 1<<11,
|
|
|
|
BT_BACK = 1<<12,
|
|
|
|
BT_FORWARD = 1<<13,
|
|
|
|
BT_RIGHT = 1<<14,
|
|
|
|
BT_LEFT = 1<<15,
|
|
|
|
BT_LOOKUP = 1<<16,
|
|
|
|
BT_LOOKDOWN = 1<<17,
|
|
|
|
BT_MOVEUP = 1<<18,
|
|
|
|
BT_MOVEDOWN = 1<<19,
|
|
|
|
BT_SHOWSCORES = 1<<20,
|
|
|
|
|
|
|
|
BT_USER1 = 1<<21,
|
|
|
|
BT_USER2 = 1<<22,
|
|
|
|
BT_USER3 = 1<<23,
|
|
|
|
BT_USER4 = 1<<24,
|
|
|
|
};
|
2016-10-07 16:09:28 +00:00
|
|
|
|
2016-06-24 18:19:49 +00:00
|
|
|
// Flags for GetAngle
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EGetAngleFlags
|
2016-06-24 18:19:49 +00:00
|
|
|
{
|
|
|
|
GAF_RELATIVE = 1,
|
|
|
|
GAF_SWITCH = 1 << 1,
|
2016-07-24 16:40:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
//Flags for A_CopySpriteFrame
|
2016-10-07 16:09:28 +00:00
|
|
|
enum ECopySpriteFrameFlags
|
2016-07-24 16:40:05 +00:00
|
|
|
{
|
|
|
|
CPSF_NOSPRITE = 1,
|
|
|
|
CPSF_NOFRAME = 1 << 1,
|
2016-09-18 20:07:08 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
//Flags for A_SetMaskRotation
|
2016-10-07 16:09:28 +00:00
|
|
|
enum EMaskRotationFlags
|
2016-09-18 20:07:08 +00:00
|
|
|
{
|
|
|
|
VRF_NOANGLESTART = 1,
|
|
|
|
VRF_NOANGLEEND = 1 << 1,
|
|
|
|
VRF_NOPITCHSTART = 1 << 2,
|
|
|
|
VRF_NOPITCHEND = 1 << 3,
|
|
|
|
|
|
|
|
VRF_NOANGLE = VRF_NOANGLESTART|VRF_NOANGLEEND,
|
|
|
|
VRF_NOPITCH = VRF_NOPITCHSTART|VRF_NOPITCHEND,
|
2016-10-01 22:43:05 +00:00
|
|
|
};
|
|
|
|
|
2016-10-09 07:09:17 +00:00
|
|
|
enum ERenderStyle
|
2016-10-01 22:43:05 +00:00
|
|
|
{
|
|
|
|
STYLE_None,
|
|
|
|
STYLE_Normal,
|
|
|
|
STYLE_Fuzzy,
|
|
|
|
STYLE_SoulTrans,
|
|
|
|
STYLE_OptFuzzy,
|
|
|
|
STYLE_Stencil,
|
|
|
|
STYLE_Translucent,
|
|
|
|
STYLE_Add,
|
|
|
|
STYLE_Shaded,
|
|
|
|
STYLE_TranslucentStencil,
|
|
|
|
STYLE_Shadow,
|
|
|
|
STYLE_Subtract,
|
|
|
|
STYLE_AddStencil,
|
|
|
|
STYLE_AddShaded,
|
|
|
|
};
|
2016-10-11 11:11:40 +00:00
|
|
|
|
|
|
|
// Type definition for the implicit 'callingstate' parameter that gets passed to action functions.
|
|
|
|
enum EStateType
|
|
|
|
{
|
|
|
|
STATE_Actor,
|
|
|
|
STATE_Psprite,
|
|
|
|
STATE_StateChain,
|
|
|
|
}
|
|
|
|
|
|
|
|
struct FStateParamInfo
|
|
|
|
{
|
|
|
|
state mCallingState;
|
|
|
|
EStateType mStateType;
|
|
|
|
int mPSPIndex;
|
|
|
|
}
|