mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 09:21:36 +00:00
actors.c: replace hard-coded list with missing check for SFLAG_NODAMAGEPUSH.
In A_RadiusDamage(). The code snippet that is disabled for such actors increases the damaged actor's .xvel by (4 times the) damage amount and is responsible for the strange effect of enemies becoming faster TOWARDS the player on being hit with an RPG frontally. Thanks to Fox for a keen eye. git-svn-id: https://svn.eduke32.com/eduke32@4863 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
7033205fcf
commit
d7b88df6af
2 changed files with 8 additions and 4 deletions
|
@ -271,8 +271,7 @@ SKIPWALLCHECK:
|
|||
actor[j].extra = hp1 + (krand()%(hp2-hp1));
|
||||
}
|
||||
|
||||
if (sprite[j].picnum != TANK && sprite[j].picnum != ROTATEGUN && sprite[j].picnum != RECON && sprite[j].picnum != BOSS1 &&
|
||||
sprite[j].picnum != BOSS2 && sprite[j].picnum != BOSS3 && sprite[j].picnum != BOSS4)
|
||||
if (!A_CheckSpriteFlags(j, SFLAG_NODAMAGEPUSH))
|
||||
{
|
||||
if (sj->xvel < 0) sj->xvel = 0;
|
||||
sj->xvel += (s->extra<<2);
|
||||
|
|
|
@ -10772,9 +10772,14 @@ static void G_LoadExtraPalettes(void)
|
|||
// Has to be after setting the dynamic names (e.g. SHARK).
|
||||
static void A_InitEnemyFlags(void)
|
||||
{
|
||||
int32_t DukeEnemies[] = { SHARK, RECON, DRONE, LIZTROOPONTOILET, LIZTROOPJUSTSIT, LIZTROOPSTAYPUT, LIZTROOPSHOOT, LIZTROOPJETPACK, LIZTROOPSHOOT, LIZTROOPDUCKING,
|
||||
LIZTROOPRUNNING, LIZTROOP, OCTABRAIN, COMMANDER, COMMANDERSTAYPUT, PIGCOP, PIGCOPSTAYPUT, PIGCOPDIVE, EGG, LIZMAN, LIZMANSPITTING, LIZMANJUMP, ORGANTIC,
|
||||
int32_t DukeEnemies[] = {
|
||||
SHARK, RECON, DRONE,
|
||||
LIZTROOPONTOILET, LIZTROOPJUSTSIT, LIZTROOPSTAYPUT, LIZTROOPSHOOT,
|
||||
LIZTROOPJETPACK, LIZTROOPSHOOT, LIZTROOPDUCKING, LIZTROOPRUNNING, LIZTROOP,
|
||||
OCTABRAIN, COMMANDER, COMMANDERSTAYPUT, PIGCOP, PIGCOPSTAYPUT, PIGCOPDIVE, EGG,
|
||||
LIZMAN, LIZMANSPITTING, LIZMANJUMP, ORGANTIC,
|
||||
BOSS1, BOSS2, BOSS3, BOSS4, RAT, ROTATEGUN };
|
||||
|
||||
int32_t i, SolidEnemies[] = { TANK, BOSS1, BOSS2, BOSS3, BOSS4, RECON, ROTATEGUN };
|
||||
|
||||
for (i=GREENSLIME; i<=GREENSLIME+7; i++)
|
||||
|
|
Loading…
Reference in a new issue