// Flags for A_Saw const int SF_NORANDOM = 1; const int SF_RANDOMLIGHTMISS = 2; const int SF_RANDOMLIGHTHIT = 4; const int SF_RANDOMLIGHTBOTH = 6; const int SF_NOUSEAMMOMISS = 8; const int SF_NOUSEAMMO = 16; // Flags for A_CustomMissile const int CMF_AIMOFFSET = 1; const int CMF_AIMDIRECTION = 2; const int CMF_TRACKOWNER = 4; const int CMF_CHECKTARGETDEAD = 8; // Flags for A_CustomBulletAttack const int CBAF_AIMFACING = 1; const int CBAF_NORANDOM = 2; const int CBAF_EXPLICITANGLE = 4; // Flags for A_FireBullets const int FBF_USEAMMO = 1; const int FBF_NORANDOM = 2; const int FBF_EXPLICITANGLE = 4; // Flags for A_SpawnItemEx const int SXF_TRANSFERTRANSLATION=1; const int SXF_ABSOLUTEPOSITION=2; const int SXF_ABSOLUTEANGLE=4; const int SXF_ABSOLUTEMOMENTUM=8; const int SXF_ABSOLUTEVELOCITY=8; const int SXF_SETMASTER=16; const int SXF_NOCHECKPOSITION = 32; const int SXF_TELEFRAG=64; const int SXF_CLIENTSIDE=128; // only used by Skulltag const int SXF_TRANSFERAMBUSHFLAG=256; const int SXF_TRANSFERPITCH=512; const int SXF_TRANSFERPOINTERS=1024; // Flags for A_Chase const int CHF_FASTCHASE = 1; const int CHF_NOPLAYACTIVE = 2; const int CHF_NIGHTMAREFAST = 4; const int CHF_RESURRECT = 8; const int CHF_DONTMOVE = 16; // Flags for A_LookEx const int LOF_NOSIGHTCHECK = 1; const int LOF_NOSOUNDCHECK = 2; const int LOF_DONTCHASEGOAL = 4; const int LOF_NOSEESOUND = 8; const int LOF_FULLVOLSEESOUND = 16; // Flags for A_Respawn const int RSF_FOG = 1; const int RSF_KEEPTARGET = 2; const int RSF_TELEFRAG = 4; // Flags for A_ChangeVelocity const int CVF_RELATIVE = 1; const int CVF_REPLACE = 2; // Flags for A_WeaponReady const int WRF_NOBOB = 1; const int WRF_NOFIRE = 12; const int WRF_NOSWITCH = 2; const int WRF_NOPRIMARY = 4; const int WRF_NOSECONDARY = 8; // Morph constants const int MRF_ADDSTAMINA = 1; const int MRF_FULLHEALTH = 2; const int MRF_UNDOBYTOMEOFPOWER = 4; const int MRF_UNDOBYCHAOSDEVICE = 8; const int MRF_FAILNOTELEFRAG = 16; const int MRF_FAILNOLAUGH = 32; const int MRF_WHENINVULNERABLE = 64; const int MRF_LOSEACTUALWEAPON = 128; const int MRF_NEWTIDBEHAVIOUR = 256; const int MRF_UNDOBYDEATH = 512; const int MRF_UNDOBYDEATHFORCED = 1024; const int MRF_UNDOBYDEATHSAVES = 2048; // Flags for A_RailAttack and A_CustomRailgun const int RGF_SILENT = 1; const int RGF_NOPIERCING = 2; const int RGF_EXPLICITANGLE = 4; // Flags for A_Mushroom const int MSF_Standard = 0; const int MSF_Classic = 1; const int MSF_DontHurt = 2; // Flags for A_Blast const int BF_USEAMMO = 1; const int BF_DONTWARN = 2; const int BF_AFFECTBOSSES = 4; // Flags for A_SeekerMissile const int SMF_LOOK = 1; const int SMF_PRECISE = 2; // Flags for A_CustomPunch const int CPF_USEAMMO = 1; const int CPF_DAGGER = 2; const int CPF_PULLIN = 4; // Flags for A_Teleport const int TF_TELEFRAG = 1; const int TF_RANDOMDECIDE = 2; // Activation flags enum { 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, }; // Shorter aliases for same const int AF_Default = 0; const int AF_ThingActs = 1; const int AF_ThingTargets = 2; const int AF_TriggerTargets = 4; const int AF_MonsterTrigger = 8; const int AF_MissileTrigger = 16; const int AF_ClearSpecial = 32; const int AF_NoDeathSpecial = 64; const int AF_TriggerActs = 128; // Flags for A_TakeInventory and A_TakeFromTarget const int TIF_NOTAKEINFINITE = 1; // constants for A_PlaySound enum { CHAN_AUTO = 0, CHAN_WEAPON = 1, CHAN_VOICE = 2, CHAN_ITEM = 3, CHAN_BODY = 4, // modifier flags CHAN_LISTENERZ = 8, CHAN_MAYBE_LOCAL = 16, CHAN_UI = 32, CHAN_NOPAUSE = 64 }; // sound attenuation values const float ATTN_NONE = 0; const float ATTN_NORM = 1; const float ATTN_IDLE = 1.001; const float ATTN_STATIC = 3; // This is only here to provide one global variable for testing. native int testglobalvar;