- DoActorZRange parameters.

This commit is contained in:
Christoph Oelckers 2021-11-03 17:47:13 +01:00
parent 730b7492cb
commit 0b3b30170c
10 changed files with 28 additions and 58 deletions

View file

@ -875,7 +875,7 @@ int DoBunnyBeginJumpAttack(DSWActor* actor)
u->jump_grav = 17; // was 8
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actor->GetSpriteIndex());
DoActorZrange(actor);
DoJump(actor);
@ -903,7 +903,7 @@ int DoBunnyMoveJump(DSWActor* actor)
DoActorFall(actor);
}
DoActorZrange(actor->GetSpriteIndex());
DoActorZrange(actor);
if (!TEST(u->Flags, SPR_JUMPING | SPR_FALLING))
{
@ -1220,7 +1220,7 @@ void BunnyHatch(DSWActor* actor)
nu->jump_grav = 8;
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
DoActorJump(actorNew);
}
@ -1287,7 +1287,7 @@ DSWActor* BunnyHatch2(DSWActor* actor)
nu->active_range = 75000; // Set it far
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
DoActorJump(actorNew);

View file

@ -466,7 +466,7 @@ void EnemyDefaults(DSWActor* actor, ACTOR_ACTION_SETp action, PERSONALITYp perso
u->Personality = person;
u->ActorActionSet = action;
DoActorZrange(actor->GetSpriteIndex());
DoActorZrange(actor);
//KeepActorOnFloor(actor); // for swimming actors

View file

@ -1994,7 +1994,7 @@ int InitBloodSpray(DSWActor* actor, bool dogib, short velocity)
wu->zchange = wp->zvel >> 1;
if (!GlobalSkipZrange)
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
}
return 0;

View file

@ -1103,7 +1103,7 @@ int DoRipperBeginJumpAttack(DSWActor* actor)
u->jump_grav = 17; // was 8
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actor->GetSpriteIndex());
DoActorZrange(actor);
DoJump(actor);
@ -1262,7 +1262,7 @@ void RipperHatch(DSWActor* actor)
nu->jump_grav = 8;
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
DoJump(actorNew);
}

View file

@ -1113,7 +1113,7 @@ int DoRipper2BeginJumpAttack(DSWActor* actor)
u->jump_grav = 8;
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actor->GetSpriteIndex());
DoActorZrange(actor);
DoJump(actor);
@ -1273,7 +1273,7 @@ void Ripper2Hatch(DSWActor* actor)
nu->jump_grav = 8;
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
DoJump(actorNew);
}

View file

@ -1623,7 +1623,7 @@ IconDefault(short SpriteNum)
RESET(sp->cstat, CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
u->Radius = 650;
DoActorZrange(SpriteNum);
DoActorZrange(actor);
}
void PreMapCombineFloors(void)
@ -3182,43 +3182,12 @@ KeyMain:
u->Radius = 500;
sp->hitag = LUMINOUS; //Set so keys over ride colored lighting
DoActorZrange(SpriteNum);
DoActorZrange(actor);
}
break;
#if 0
case RED_KEY_STATUE:
num = 0;
goto KeyStatueMain;
case BLUE_KEY_STATUE:
num = 1;
goto KeyStatueMain;
case GREEN_KEY_STATUE:
num = 2;
goto KeyStatueMain;
case YELLOW_KEY_STATUE:
num = 3;
KeyStatueMain:
u = SpawnUser(SpriteNum, 0, nullptr);
ASSERT(u != nullptr);
sprite[SpriteNum].picnum = u->ID = sprite[SpriteNum].picnum;
u->spal = sp->pal;
ChangeState(actor, s_KeyStatue[num]);
RESET(picanm[sp->picnum].sf, PICANM_ANIMTYPE_MASK);
RESET(picanm[sp->picnum + 1].sf, PICANM_ANIMTYPE_MASK);
change_actor_stat(actor, STAT_ITEM);
DoActorZrange(SpriteNum);
break;
#endif
// Used for multiplayer locks
case 1846:
case 1850:
@ -4904,11 +4873,10 @@ getzrangepoint(int x, int y, int z, short sectnum,
}
void
DoActorZrange(short SpriteNum)
void DoActorZrange(DSWActor* actor)
{
SPRITEp sp = &sprite[SpriteNum];
USERp u = User[SpriteNum].Data();
USERp u = actor->u(), wu;
SPRITEp sp = &actor->s(), wp;
int ceilhit, florhit;
short save_cstat;
@ -7016,7 +6984,7 @@ void ActorWarpUpdatePos(short SpriteNum, short sectnum)
sp->backuppos();
u->oz = sp->oz;
ChangeActorSect(actor, sectnum);
DoActorZrange(SpriteNum);
DoActorZrange(actor);
}
void MissileWarpType(DSWActor* sp, DSWActor* act_warp)

View file

@ -49,7 +49,7 @@ bool CanMoveHere(int16_t spritenum);
bool SpriteOverlap(int16_t spritenum_a, int16_t spritenum_b);
int DoActorDie(DSWActor* actor, DSWActor* weapActor, int meansofdeath);
void SpriteControl(void);
void DoActorZrange(short SpriteNum);
void DoActorZrange(DSWActor*);
void PreMapCombineFloors(void);
void SpriteSetupPost(void);
int ActorCoughItem(short SpriteNum);

View file

@ -3584,7 +3584,7 @@ ActorTrackDecide(TRACK_POINTp tpoint, short SpriteNum)
// destination z for climbing
u->sz = sector[wall[hit_wall].nextsector].floorz;
DoActorZrange(SpriteNum);
DoActorZrange(actor);
//
// Adjust for YCENTERING

View file

@ -7907,7 +7907,7 @@ DoStar(DSWActor* actor)
sp->z += 128 * MISSILEMOVETICS;
DoActorZrange(Weapon);
DoActorZrange(actor);
MissileWaterAdjust(Weapon);
if (sp->z > u->loz)
@ -19528,7 +19528,8 @@ SpriteWarpToUnderwater(SPRITEp sp)
bool
SpriteWarpToSurface(SPRITEp sp)
{
USERp u = User[sp - sprite].Data();
auto actor = &swActors[sp - sprite];
USERp u = actor->u();
int i;
SECT_USERp sectu = SectUser[sp->sectnum].Data();
short over, under;
@ -19599,7 +19600,7 @@ SpriteWarpToSurface(SPRITEp sp)
sp->z = sector[over_sp->sectnum].floorz - Z(2);
// set z range and wade depth so we know how high to set view
DoActorZrange(short(sp - sprite));
DoActorZrange(actor);
MissileWaterAdjust(short(sp - sprite));
@ -19612,8 +19613,9 @@ SpriteWarpToSurface(SPRITEp sp)
int
SpawnSplash(short SpriteNum)
{
USERp u = User[SpriteNum].Data(), wu;
SPRITEp sp = User[SpriteNum]->SpriteP, wp;
auto actor = &swActors[SpriteNum];
USERp u = actor->u(), wu;
SPRITEp sp = &actor->s(), wp;
short w;
SECT_USERp sectu = SectUser[sp->sectnum].Data();
@ -19630,7 +19632,7 @@ SpawnSplash(short SpriteNum)
PlaySound(DIGI_SPLASH1, sp, v3df_none);
DoActorZrange(SpriteNum);
DoActorZrange(actor);
MissileWaterAdjust(SpriteNum);
w = SpawnSprite(STAT_MISSILE, SPLASH, s_Splash, sp->sectnum, sp->x, sp->y, u->loz, sp->ang, 0);

View file

@ -804,7 +804,7 @@ void SpawnZombie(PLAYERp pp, DSWActor* weaponActor)
RESET(nu->Flags, SPR_FALLING);
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
}
void SpawnZombie2(DSWActor* actor)
@ -862,7 +862,7 @@ void SpawnZombie2(DSWActor* actor)
RESET(nu->Flags, SPR_FALLING);
// if I didn't do this here they get stuck in the air sometimes
DoActorZrange(actorNew->GetSpriteIndex());
DoActorZrange(actorNew);
}
int DoZombieMove(DSWActor* actor)