mirror of
https://github.com/ZDoom/Raze.git
synced 2025-04-04 06:55:48 +00:00
- deleted the native flag setter code.
This commit is contained in:
parent
918c75cb6e
commit
cfa18952d1
2 changed files with 0 additions and 387 deletions
|
@ -49,211 +49,6 @@ void initactorflags_d()
|
|||
gs.actorinfo[DTILE_OCTABRAIN].falladjustz = gs.actorinfo[DTILE_COMMANDER].falladjustz = gs.actorinfo[DTILE_DRONE].falladjustz = 0;
|
||||
|
||||
|
||||
setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT, {
|
||||
DTILE_RECON,
|
||||
DTILE_DRONE,
|
||||
DTILE_LIZTROOPONTOILET,
|
||||
DTILE_LIZTROOPJUSTSIT,
|
||||
DTILE_LIZTROOPSTAYPUT,
|
||||
DTILE_LIZTROOPSHOOT,
|
||||
DTILE_LIZTROOPJETPACK,
|
||||
DTILE_LIZTROOPDUCKING,
|
||||
DTILE_LIZTROOPRUNNING,
|
||||
DTILE_LIZTROOP,
|
||||
DTILE_OCTABRAIN,
|
||||
DTILE_COMMANDER,
|
||||
DTILE_COMMANDERSTAYPUT,
|
||||
DTILE_PIGCOP,
|
||||
DTILE_EGG,
|
||||
DTILE_PIGCOPSTAYPUT,
|
||||
DTILE_PIGCOPDIVE,
|
||||
DTILE_LIZMAN,
|
||||
DTILE_LIZMANSPITTING,
|
||||
DTILE_LIZMANFEEDING,
|
||||
DTILE_LIZMANJUMP,
|
||||
DTILE_ORGANTIC,
|
||||
DTILE_BOSS1,
|
||||
DTILE_BOSS2,
|
||||
DTILE_BOSS3,
|
||||
DTILE_BOSS4,
|
||||
DTILE_GREENSLIME,
|
||||
DTILE_RAT,
|
||||
DTILE_ROTATEGUN });
|
||||
|
||||
// non-STAT_ACTOR classes that need CON support. For compatibility this must be explicitly enabled.
|
||||
setflag(SFLAG3_FORCERUNCON, {
|
||||
DTILE_EXPLODINGBARREL,
|
||||
DTILE_WOODENHORSE,
|
||||
DTILE_HORSEONSIDE,
|
||||
DTILE_FLOORFLAME,
|
||||
DTILE_FIREBARREL,
|
||||
DTILE_FIREVASE,
|
||||
DTILE_NUKEBARREL,
|
||||
DTILE_NUKEBARRELDENTED,
|
||||
DTILE_NUKEBARRELLEAKED,
|
||||
DTILE_TOILETWATER,
|
||||
DTILE_RUBBERCAN,
|
||||
DTILE_STEAM,
|
||||
DTILE_CEILINGSTEAM,
|
||||
DTILE_WATERBUBBLEMAKER,
|
||||
DTILE_SHOTSPARK1,
|
||||
DTILE_BURNING,
|
||||
DTILE_BURNING2,
|
||||
DTILE_FECES,
|
||||
DTILE_WATERBUBBLE,
|
||||
DTILE_SMALLSMOKE,
|
||||
DTILE_EXPLOSION2,
|
||||
DTILE_SHRINKEREXPLOSION,
|
||||
DTILE_EXPLOSION2BOT,
|
||||
DTILE_BLOOD,
|
||||
DTILE_LASERSITE,
|
||||
DTILE_FORCERIPPLE,
|
||||
DTILE_TRANSPORTERSTAR,
|
||||
DTILE_TRANSPORTERBEAM
|
||||
});
|
||||
// Some flags taken from RedNukem's init code. This is a good start as any to reduce the insane dependency on tile numbers for making decisions in the play code. A lot more will be added here later.
|
||||
setflag(SFLAG2_NODAMAGEPUSH, { DTILE_TANK, DTILE_BOSS1, DTILE_BOSS2, DTILE_BOSS3, DTILE_BOSS4, DTILE_RECON, DTILE_ROTATEGUN });
|
||||
setflag(SFLAG_BOSS, { DTILE_BOSS1, DTILE_BOSS2, DTILE_BOSS3, DTILE_BOSS4, DTILE_BOSS4STAYPUT, DTILE_BOSS1STAYPUT });
|
||||
if (isWorldTour()) setflag(SFLAG_BOSS, { DTILE_BOSS2STAYPUT, DTILE_BOSS3STAYPUT, DTILE_BOSS5, DTILE_BOSS5STAYPUT });
|
||||
setflag(SFLAG_NOWATERDIP, { DTILE_OCTABRAIN, DTILE_COMMANDER, DTILE_DRONE });
|
||||
setflag(SFLAG_GREENSLIMEFOOD, { DTILE_LIZTROOP, DTILE_LIZMAN, DTILE_PIGCOP, DTILE_NEWBEAST });
|
||||
setflag(SFLAG_NOINTERPOLATE, { DTILE_CRANEPOLE });
|
||||
setflag(SFLAG_FLAMMABLEPOOLEFFECT, { DTILE_TIRE });
|
||||
setflag(SFLAG_FALLINGFLAMMABLE, { DTILE_BOX });
|
||||
setflag(SFLAG_INFLAME, { DTILE_RADIUSEXPLOSION, DTILE_RPG, DTILE_FIRELASER, DTILE_HYDRENT, DTILE_HEAVYHBOMB });
|
||||
setflag(SFLAG_NOFLOORFIRE, { DTILE_TREE1, DTILE_TREE2 });
|
||||
setflag(SFLAG_HITRADIUS_FLAG1, { DTILE_BOX, DTILE_TREE1, DTILE_TREE2, DTILE_TIRE, DTILE_CONE });
|
||||
setflag(SFLAG_HITRADIUS_FLAG2, { DTILE_TRIPBOMB, DTILE_QUEBALL, DTILE_STRIPEBALL, DTILE_DUKELYINGDEAD });
|
||||
setflag(SFLAG_CHECKSLEEP, { DTILE_RUBBERCAN, DTILE_EXPLODINGBARREL, DTILE_WOODENHORSE, DTILE_HORSEONSIDE, DTILE_CANWITHSOMETHING, DTILE_FIREBARREL, DTILE_NUKEBARREL, DTILE_NUKEBARRELDENTED, DTILE_NUKEBARRELLEAKED, DTILE_TRIPBOMB });
|
||||
setflag(SFLAG_NOTELEPORT, { DTILE_TRANSPORTERSTAR, DTILE_TRANSPORTERBEAM, DTILE_TRIPBOMB, DTILE_BULLETHOLE, DTILE_WATERSPLASH2, DTILE_BURNING, DTILE_BURNING2, DTILE_FIRE, DTILE_FIRE2, DTILE_TOILETWATER, DTILE_LASERLINE });
|
||||
setflag(SFLAG_SE24_NOCARRY, { DTILE_TRIPBOMB, DTILE_LASERLINE, DTILE_BOLT1, DTILE_BOLT2, DTILE_BOLT3, DTILE_BOLT4, DTILE_SIDEBOLT1, DTILE_SIDEBOLT2, DTILE_SIDEBOLT3, DTILE_SIDEBOLT4, DTILE_CRANE, DTILE_BARBROKE });
|
||||
setflag(SFLAG_SE24_REMOVE, { DTILE_BLOODPOOL, DTILE_PUKE, DTILE_FOOTPRINTS, DTILE_FOOTPRINTS2, DTILE_FOOTPRINTS3, DTILE_FOOTPRINTS4, DTILE_BULLETHOLE, DTILE_BLOODSPLAT1, DTILE_BLOODSPLAT2, DTILE_BLOODSPLAT3, DTILE_BLOODSPLAT4 });
|
||||
setflag(SFLAG_BLOCK_TRIPBOMB, { DTILE_TRIPBOMB }); // making this a flag adds the option to let other things block placing trip bombs as well.
|
||||
setflag(SFLAG_NOFALLER, { DTILE_SPEAKER, DTILE_CRACK1, DTILE_CRACK2, DTILE_CRACK3, DTILE_CRACK4, DTILE_SPEAKER, DTILE_LETTER, DTILE_DUCK, DTILE_TARGET, DTILE_TRIPBOMB, DTILE_VIEWSCREEN, DTILE_VIEWSCREEN2 });
|
||||
setflag(SFLAG2_NOROTATEWITHSECTOR, { DTILE_LASERLINE });
|
||||
setflag(SFLAG2_SHOWWALLSPRITEONMAP, { DTILE_LASERLINE });
|
||||
setflag(SFLAG2_NOFLOORPAL, {
|
||||
DTILE_TRIPBOMB,
|
||||
DTILE_LASERLINE,
|
||||
DTILE_FORCESPHERE,
|
||||
DTILE_BURNING,
|
||||
DTILE_BURNING2,
|
||||
DTILE_ATOMICHEALTH,
|
||||
DTILE_CRYSTALAMMO,
|
||||
DTILE_VIEWSCREEN,
|
||||
DTILE_VIEWSCREEN2,
|
||||
DTILE_SHRINKSPARK,
|
||||
DTILE_GROWSPARK,
|
||||
DTILE_RPG,
|
||||
DTILE_WATERBUBBLE,
|
||||
DTILE_RECON });
|
||||
|
||||
setflag(SFLAG2_EXPLOSIVE, { DTILE_FIREEXT, DTILE_RPG, DTILE_RADIUSEXPLOSION, DTILE_SEENINE, DTILE_OOZFILTER });
|
||||
setflag(SFLAG2_BRIGHTEXPLODE, { DTILE_SEENINE, DTILE_OOZFILTER });
|
||||
setflag(SFLAG2_DOUBLEDMGTHRUST, { DTILE_RADIUSEXPLOSION, DTILE_RPG, DTILE_HYDRENT, DTILE_HEAVYHBOMB, DTILE_SEENINE, DTILE_OOZFILTER, DTILE_EXPLODINGBARREL });
|
||||
setflag(SFLAG2_BREAKMIRRORS, { DTILE_RADIUSEXPLOSION, DTILE_RPG, DTILE_HYDRENT, DTILE_HEAVYHBOMB, DTILE_SEENINE, DTILE_OOZFILTER, DTILE_EXPLODINGBARREL });
|
||||
setflag(SFLAG2_CAMERA, { DTILE_CAMERA1 });
|
||||
setflag(SFLAG2_DONTANIMATE, { DTILE_TRIPBOMB, DTILE_LASERLINE });
|
||||
//setflag(SFLAG2_INTERPOLATEANGLE, { DTILE_BEARINGPLATE });
|
||||
setflag(SFLAG2_GREENBLOOD, { DTILE_OOZFILTER, DTILE_NEWBEAST, DTILE_NUKEBARREL });
|
||||
setflag(SFLAG2_ALWAYSROTATE1, { DTILE_RAT, DTILE_CAMERA1, DTILE_CHAIR3, DTILE_PLAYERONWATER });
|
||||
setflag(SFLAG2_ALWAYSROTATE2, { DTILE_RPG });
|
||||
setflag(SFLAG2_DIENOW, { DTILE_RADIUSEXPLOSION, DTILE_KNEE });
|
||||
setflag(SFLAG2_TRANSFERPALTOJIBS, { DTILE_LIZTROOP });
|
||||
setflag(SFLAG2_NORADIUSPUSH, { DTILE_TANK, DTILE_ROTATEGUN, DTILE_RECON });
|
||||
setflag(SFLAG2_FREEZEDAMAGE | SFLAG2_REFLECTIVE, { DTILE_FREEZEBLAST });
|
||||
setflag(SFLAG2_ALWAYSROTATE2, { DTILE_RECON });
|
||||
setflag(SFLAG2_SPECIALAUTOAIM, { DTILE_RECON });
|
||||
setflag(SFLAG2_IGNOREHITOWNER, { DTILE_RECON });
|
||||
setflag(SFLAG2_NODAMAGEPUSH, { DTILE_RECON, DTILE_TANK, DTILE_ROTATEGUN });
|
||||
setflag(SFLAG2_FLOATING, { DTILE_DRONE, DTILE_SHARK, DTILE_COMMANDER });
|
||||
setflag(SFLAG2_NONSMOKYROCKET, { DTILE_BOSS2 }); // If this wasn't needed for a CON defined actor it could be handled better
|
||||
setflag(SFLAG2_MIRRORREFLECT, { DTILE_SHRINKSPARK, DTILE_FIRELASER, DTILE_COOLEXPLOSION1 });
|
||||
setflag(SFLAG2_UNDERWATERSLOWDOWN, { DTILE_RPG });
|
||||
setflag(SFLAG3_BROWNBLOOD, { DTILE_FECES });
|
||||
setflag(SFLAG3_DONTDIVEALIVE, { DTILE_OCTABRAIN, DTILE_SHARK, DTILE_GREENSLIME });
|
||||
setflag(SFLAG3_LIGHTDAMAGE, { DTILE_SHOTSPARK1 });
|
||||
setflag(SFLAG3_BIGHEALTH, { DTILE_ATOMICHEALTH });
|
||||
|
||||
if (isWorldTour())
|
||||
{
|
||||
setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT, { DTILE_FIREFLY });
|
||||
setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT |SFLAG_BOSS, { DTILE_BOSS5 });
|
||||
setflag(SFLAG3_FORCERUNCON, { DTILE_LAVAPOOL, DTILE_ONFIRE, DTILE_ONFIRESMOKE, DTILE_BURNEDCORPSE, DTILE_LAVAPOOLBUBBLE, DTILE_WHISPYSMOKE, DTILE_FIREFLYFLYINGEFFECT });
|
||||
}
|
||||
|
||||
setflag(SFLAG_INVENTORY, {
|
||||
DTILE_FIRSTAID,
|
||||
DTILE_STEROIDS,
|
||||
DTILE_HEATSENSOR,
|
||||
DTILE_BOOTS,
|
||||
DTILE_JETPACK,
|
||||
DTILE_HOLODUKE,
|
||||
DTILE_AIRTANK });
|
||||
|
||||
setflag(SFLAG_SHRINKAUTOAIM, {
|
||||
DTILE_GREENSLIME,
|
||||
});
|
||||
|
||||
setflag(SFLAG_HITRADIUSCHECK, {
|
||||
DTILE_PODFEM1 ,
|
||||
DTILE_FEM1,
|
||||
DTILE_FEM2,
|
||||
DTILE_FEM3,
|
||||
DTILE_FEM4,
|
||||
DTILE_FEM5,
|
||||
DTILE_FEM6,
|
||||
DTILE_FEM7,
|
||||
DTILE_FEM8,
|
||||
DTILE_FEM9,
|
||||
DTILE_FEM10,
|
||||
DTILE_STATUE,
|
||||
DTILE_STATUEFLASH,
|
||||
DTILE_SPACEMARINE,
|
||||
DTILE_QUEBALL,
|
||||
DTILE_STRIPEBALL
|
||||
});
|
||||
|
||||
setflag(SFLAG_TRIGGER_IFHITSECTOR, { DTILE_EXPLOSION2 });
|
||||
|
||||
setflag(SFLAG_MOVEFTA_MAKESTANDABLE, {
|
||||
DTILE_RUBBERCAN,
|
||||
DTILE_EXPLODINGBARREL,
|
||||
DTILE_WOODENHORSE,
|
||||
DTILE_HORSEONSIDE,
|
||||
DTILE_CANWITHSOMETHING,
|
||||
DTILE_CANWITHSOMETHING2,
|
||||
DTILE_CANWITHSOMETHING3,
|
||||
DTILE_CANWITHSOMETHING4,
|
||||
DTILE_FIREBARREL,
|
||||
DTILE_FIREVASE,
|
||||
DTILE_NUKEBARREL,
|
||||
DTILE_NUKEBARRELDENTED,
|
||||
DTILE_NUKEBARRELLEAKED,
|
||||
DTILE_TRIPBOMB
|
||||
});
|
||||
|
||||
setflag(SFLAG2_TRIGGERRESPAWN, {
|
||||
DTILE_FEM1,
|
||||
DTILE_FEM2,
|
||||
DTILE_FEM3,
|
||||
DTILE_FEM4,
|
||||
DTILE_FEM5,
|
||||
DTILE_FEM6,
|
||||
DTILE_FEM7,
|
||||
DTILE_FEM8,
|
||||
DTILE_FEM9,
|
||||
DTILE_FEM10,
|
||||
DTILE_PODFEM1,
|
||||
DTILE_NAKED1,
|
||||
DTILE_STATUE,
|
||||
DTILE_TOUGHGAL
|
||||
});
|
||||
|
||||
setflag(SFLAG2_FORCESECTORSHADE, { DTILE_GREENSLIME });
|
||||
setflag(SFLAG3_DONTDIVEALIVE, { DTILE_GREENSLIME, DTILE_SHARK, DTILE_OCTABRAIN });
|
||||
setflag(SFLAG3_BLOODY, { DTILE_BLOODPOOL });
|
||||
|
||||
// The feature guarded by this flag does not exist in Duke, it always acts as if the flag was set.
|
||||
|
||||
gs.actorinfo[DTILE_ORGANTIC].aimoffset = 32;
|
||||
|
|
|
@ -45,188 +45,6 @@ void initactorflags_r()
|
|||
gs.actorinfo[RTILE_CHEERBOAT].falladjustz = gs.actorinfo[RTILE_EMPTYBOAT].falladjustz = 6;
|
||||
}
|
||||
gs.actorinfo[RTILE_DRONE].falladjustz = 0;
|
||||
|
||||
|
||||
setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT, {
|
||||
RTILE_BOULDER,
|
||||
RTILE_BOULDER1,
|
||||
RTILE_RAT,
|
||||
RTILE_TORNADO,
|
||||
RTILE_BILLYCOCK,
|
||||
RTILE_BILLYRAY,
|
||||
RTILE_BILLYRAYSTAYPUT,
|
||||
RTILE_BRAYSNIPER,
|
||||
RTILE_DOGRUN,
|
||||
RTILE_LTH,
|
||||
RTILE_HULKJUMP,
|
||||
RTILE_BUBBASTAND,
|
||||
RTILE_HULK,
|
||||
RTILE_HULKSTAYPUT,
|
||||
RTILE_DRONE,
|
||||
RTILE_RECON,
|
||||
RTILE_MINION,
|
||||
RTILE_MINIONSTAYPUT,
|
||||
RTILE_COOT,
|
||||
RTILE_COOTSTAYPUT,
|
||||
RTILE_VIXEN });
|
||||
|
||||
if (isRRRA()) setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT, {
|
||||
RTILE_SBSWIPE,
|
||||
RTILE_BIKERB,
|
||||
RTILE_BIKERBV2,
|
||||
RTILE_BIKER,
|
||||
RTILE_MAKEOUT,
|
||||
RTILE_CHEERB,
|
||||
RTILE_CHEER,
|
||||
RTILE_CHEERSTAYPUT,
|
||||
RTILE_MINIONBOAT,
|
||||
RTILE_HULKBOAT,
|
||||
RTILE_CHEERBOAT,
|
||||
RTILE_RABBIT,
|
||||
RTILE_MAMA,
|
||||
RTILE_UFO1_RRRA });
|
||||
else setflag(SFLAG_INTERNAL_BADGUY | SFLAG_KILLCOUNT, {
|
||||
RTILE_SBMOVE,
|
||||
RTILE_UFO1_RR,
|
||||
RTILE_UFO2,
|
||||
RTILE_UFO3,
|
||||
RTILE_UFO4,
|
||||
RTILE_UFO5 });
|
||||
|
||||
setflag(SFLAG_INTERNAL_BADGUY, { RTILE_PIG, RTILE_HEN });
|
||||
|
||||
//gs.actorinfo[RTILE_DRONE].flags |= SFLAG_NOWATERDIP;
|
||||
//gs.actorinfo[RTILE_VIXEN].flags |= SFLAG_LOOKALLAROUND;
|
||||
if (isRRRA())
|
||||
{
|
||||
setflag(SFLAG_LOOKALLAROUND, { RTILE_COOT, RTILE_COOTSTAYPUT, RTILE_BIKERB, RTILE_BIKERBV2, RTILE_CHEER, RTILE_CHEERB,
|
||||
RTILE_CHEERSTAYPUT, RTILE_MINIONBOAT, RTILE_HULKBOAT, RTILE_CHEERBOAT, RTILE_RABBIT, RTILE_COOTPLAY, RTILE_BILLYPLAY, RTILE_MAKEOUT, RTILE_MAMA });
|
||||
setflag(SFLAG_INTERNAL_BADGUY, { RTILE_COOTPLAY, RTILE_BILLYPLAY });
|
||||
}
|
||||
|
||||
setflag(SFLAG_INVENTORY, {
|
||||
RTILE_FIRSTAID,
|
||||
RTILE_STEROIDS,
|
||||
RTILE_HEATSENSOR,
|
||||
RTILE_BOOTS,
|
||||
RTILE_COWPIE,
|
||||
RTILE_HOLODUKE,
|
||||
RTILE_AIRTANK });
|
||||
|
||||
setflag(SFLAG_HITRADIUSCHECK, {
|
||||
RTILE_STATUEFLASH,
|
||||
RTILE_BOWLINGPIN,
|
||||
RTILE_QUEBALL,
|
||||
RTILE_STRIPEBALL
|
||||
});
|
||||
|
||||
setflag(SFLAG_LOOKALLAROUND, { RTILE_VIXEN });
|
||||
if (isRRRA())
|
||||
{
|
||||
setflag(SFLAG_LOOKALLAROUND, { RTILE_COOT, RTILE_COOTSTAYPUT, RTILE_BIKER, RTILE_BIKERB, RTILE_BIKERBV2, RTILE_CHEER, RTILE_CHEERB,
|
||||
RTILE_CHEERSTAYPUT, RTILE_MINIONBOAT, RTILE_HULKBOAT, RTILE_CHEERBOAT, RTILE_RABBIT, RTILE_COOTPLAY, RTILE_BILLYPLAY, RTILE_MAKEOUT, RTILE_MAMA });
|
||||
}
|
||||
|
||||
setflag(SFLAG_TRIGGER_IFHITSECTOR, { RTILE_EXPLOSION2, RTILE_EXPLOSION3 });
|
||||
|
||||
setflag(SFLAG_MOVEFTA_MAKESTANDABLE, {
|
||||
RTILE_CANWITHSOMETHING,
|
||||
});
|
||||
|
||||
// non-STAT_ACTOR classes that need CON support. For compatibility this must be explicitly enabled.
|
||||
setflag(SFLAG3_FORCERUNCON, {
|
||||
RTILE_EXPLODINGBARREL,
|
||||
RTILE_TOILETWATER,
|
||||
RTILE_STEAM,
|
||||
RTILE_CEILINGSTEAM,
|
||||
RTILE_SHOTSPARK1,
|
||||
RTILE_BURNING,
|
||||
RTILE_WATERBUBBLE,
|
||||
RTILE_WATERBUBBLEMAKER,
|
||||
RTILE_SMALLSMOKE,
|
||||
RTILE_EXPLOSION2,
|
||||
RTILE_EXPLOSION3,
|
||||
RTILE_BLOOD,
|
||||
RTILE_FORCERIPPLE,
|
||||
RTILE_TRANSPORTERSTAR,
|
||||
RTILE_TRANSPORTERBEAM
|
||||
});
|
||||
|
||||
setflag(SFLAG_NOINTERPOLATE, { RTILE_CRANEPOLE });
|
||||
setflag(SFLAG_FALLINGFLAMMABLE, { RTILE_BOX });
|
||||
setflag(SFLAG_INFLAME, { RTILE_RADIUSEXPLOSION, RTILE_RPG, RTILE_FIRELASER, RTILE_HYDRENT, RTILE_DYNAMITE, RTILE_POWDERKEG, RTILE_VIXENSHOT, RTILE_OWHIP, RTILE_UWHIP });
|
||||
if (isRRRA()) setflag(SFLAG_INFLAME, { RTILE_RPG2 });
|
||||
setflag(SFLAG_NOFLOORFIRE, { RTILE_TREE1, RTILE_TREE2 });
|
||||
setflag(SFLAG_HITRADIUS_FLAG1, { RTILE_BOX, RTILE_TREE1, RTILE_TREE2, RTILE_TIRE });
|
||||
setflag(SFLAG_HITRADIUS_FLAG2, { RTILE_QUEBALL, RTILE_STRIPEBALL, RTILE_BOWLINGPIN, RTILE_DUKELYINGDEAD });
|
||||
setflag(SFLAG_NOTELEPORT, { RTILE_TRANSPORTERSTAR, RTILE_TRANSPORTERBEAM, RTILE_BULLETHOLE, RTILE_WATERSPLASH2, RTILE_BURNING, RTILE_FIRE, RTILE_MUD });
|
||||
setflag(SFLAG_SE24_NOCARRY, { RTILE_BULLETHOLE, RTILE_BOLT1, RTILE_BOLT2, RTILE_BOLT3, RTILE_BOLT4, RTILE_CRANE, RTILE_BARBROKE });
|
||||
setflag(SFLAG_SE24_REMOVE, { RTILE_BLOODPOOL, RTILE_PUKE, RTILE_FOOTPRINTS, RTILE_FOOTPRINTS2, RTILE_FOOTPRINTS3 });
|
||||
setflag(SFLAG_NOFALLER, { RTILE_CRACK1, RTILE_CRACK2, RTILE_CRACK3, RTILE_CRACK4 });
|
||||
setflag(SFLAG2_EXPLOSIVE, {RTILE_RPG, RTILE_RADIUSEXPLOSION, RTILE_SEENINE, RTILE_OOZFILTER });
|
||||
if (isRRRA()) setflag(SFLAG2_EXPLOSIVE, { RTILE_RPG2 });
|
||||
setflag(SFLAG2_BRIGHTEXPLODE, { RTILE_SEENINE, RTILE_OOZFILTER });
|
||||
setflag(SFLAG2_DOUBLEDMGTHRUST, { RTILE_RADIUSEXPLOSION, RTILE_RPG, RTILE_HYDRENT, RTILE_DYNAMITE, RTILE_SEENINE, RTILE_OOZFILTER, RTILE_POWDERKEG });
|
||||
if (isRRRA()) setflag(SFLAG2_DOUBLEDMGTHRUST, { RTILE_RPG2 });
|
||||
setflag(SFLAG2_BREAKMIRRORS, { RTILE_RADIUSEXPLOSION, RTILE_RPG, RTILE_HYDRENT, RTILE_DYNAMITE, RTILE_SEENINE, RTILE_OOZFILTER, RTILE_POWDERKEG });
|
||||
if (isRRRA()) setflag(SFLAG2_BREAKMIRRORS, { RTILE_RPG2 });
|
||||
setflag(SFLAG2_CAMERA, { RTILE_CAMERA1 });
|
||||
setflag(SFLAG2_GREENBLOOD, { RTILE_OOZFILTER });
|
||||
setflag(SFLAG2_ALWAYSROTATE1, { RTILE_RAT, RTILE_CAMERA1, RTILE_CHAIR3, RTILE_PLAYERONWATER });
|
||||
setflag(SFLAG2_ALWAYSROTATE2, { RTILE_RPG });
|
||||
setflag(SFLAG2_DIENOW, { RTILE_RADIUSEXPLOSION });
|
||||
setflag(SFLAG2_NORADIUSPUSH, { RTILE_HULK });
|
||||
setflag(SFLAG2_FREEZEDAMAGE | SFLAG2_REFLECTIVE, { RTILE_FREEZEBLAST });
|
||||
setflag(SFLAG2_FLOATING, { RTILE_DRONE });
|
||||
setflag(SFLAG3_BLOODY, { RTILE_BLOODPOOL });
|
||||
setflag(SFLAG3_BIGHEALTH, { RTILE_ATOMICHEALTH });
|
||||
|
||||
setflag(SFLAG2_NOFLOORPAL, {
|
||||
RTILE_RESPAWNMARKERRED,
|
||||
RTILE_RESPAWNMARKERYELLOW,
|
||||
RTILE_RESPAWNMARKERGREEN,
|
||||
RTILE_FORCESPHERE,
|
||||
RTILE_BURNING,
|
||||
RTILE_ATOMICHEALTH,
|
||||
RTILE_SHITBALL,
|
||||
RTILE_RPG,
|
||||
RTILE_RECON,
|
||||
RTILE_POWDERKEG,
|
||||
RTILE_WATERBUBBLE,
|
||||
});
|
||||
// Animals were not supposed to have this, but due to a coding bug the logic was unconditional for everything in the game.
|
||||
for (auto& ainf : gs.actorinfo)
|
||||
{
|
||||
//ainf.flags |= SFLAG_MOVEFTA_WAKEUPCHECK;
|
||||
}
|
||||
|
||||
|
||||
if (isRRRA())
|
||||
{
|
||||
setflag(SFLAG_LOOKALLAROUNDWITHPAL8, { RTILE_MINION });
|
||||
setflag(SFLAG2_TRANSFERPALTOJIBS, { RTILE_MINION });
|
||||
setflag(SFLAG2_NORADIUSPUSH, { RTILE_MAMA, RTILE_BILLYPLAY, RTILE_COOTPLAY, RTILE_MAMACLOUD });
|
||||
setflag(SFLAG2_DONTDIVE, { RTILE_CHEERBOAT, RTILE_HULKBOAT, RTILE_MINIONBOAT, RTILE_UFO1_RRRA });
|
||||
setflag(SFLAG2_FLOATING, { RTILE_UFO1_RRRA });
|
||||
setflag(SFLAG2_SPAWNRABBITGUTS, { RTILE_MAMA });
|
||||
setflag(SFLAG2_ALTPROJECTILESPRITE, { RTILE_CHEER, RTILE_CHEERSTAYPUT });
|
||||
setflag(SFLAG2_UNDERWATERSLOWDOWN, { RTILE_RPG2 });
|
||||
setflag(SFLAG2_ALWAYSROTATE2, { RTILE_RPG2, RTILE_EMPTYBIKE, RTILE_EMPTYBOAT });
|
||||
setflag(SFLAG2_NOFLOORPAL, { RTILE_CHEERBOMB, RTILE_RPG2 });
|
||||
}
|
||||
else
|
||||
{
|
||||
setflag(SFLAG2_NORADIUSPUSH, { RTILE_SBMOVE });
|
||||
setflag(SFLAG2_DONTDIVE, { RTILE_UFO1_RR, RTILE_UFO2, RTILE_UFO3, RTILE_UFO4, RTILE_UFO5 });
|
||||
setflag(SFLAG2_FLOATING, { RTILE_UFO1_RR, RTILE_UFO2, RTILE_UFO3, RTILE_UFO4, RTILE_UFO5 });
|
||||
}
|
||||
|
||||
//gs.actorinfo[RTILE_RPG2].flags |= SFLAG_FORCEAUTOAIM;
|
||||
|
||||
// clear some bad killcount defaults
|
||||
//for (auto t : { RTILE_COW, RTILE_HEN, RTILE_PIG, RTILE_MINECARTKILLER, RTILE_UFOBEAM }) gs.actorinfo[t].flags &= ~SFLAG_KILLCOUNT;
|
||||
//if (isRRRA()) gs.actorinfo[RTILE_WACOWINDER].flags &= ~SFLAG_KILLCOUNT;
|
||||
|
||||
gs.weaponsandammosprites[0] = RTILE_CROSSBOWSPRITE;
|
||||
gs.weaponsandammosprites[1] = RTILE_RIFLEGUNSPRITE;
|
||||
gs.weaponsandammosprites[2] = RTILE_DEVISTATORAMMO;
|
||||
|
|
Loading…
Reference in a new issue