mirror of
https://github.com/ZDoom/Raze.git
synced 2025-02-20 18:42:26 +00:00
- first bunch of wrapping xvel.
This commit is contained in:
parent
0740ccbef1
commit
ba044ac2f4
17 changed files with 60 additions and 60 deletions
|
@ -225,8 +225,8 @@ int ssp(DDukeActor* const actor, unsigned int cliptype) //The set sprite functio
|
|||
Collision c;
|
||||
|
||||
return movesprite_ex(actor,
|
||||
MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14), actor->int_zvel(),
|
||||
MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14), actor->int_zvel(),
|
||||
cliptype, c) == kHitNone;
|
||||
}
|
||||
|
||||
|
@ -1257,8 +1257,8 @@ void movecanwithsomething(DDukeActor* actor)
|
|||
|
||||
void bounce(DDukeActor* actor)
|
||||
{
|
||||
int xvect = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 10);
|
||||
int yvect = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 10);
|
||||
int xvect = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 10);
|
||||
int yvect = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 10);
|
||||
int zvect = actor->int_zvel();
|
||||
|
||||
auto sectp = actor->sector();
|
||||
|
@ -1464,8 +1464,8 @@ bool queball(DDukeActor *actor, int pocket, int queball, int stripeball)
|
|||
auto sect = actor->sector();
|
||||
auto pos = actor->spr.pos;
|
||||
int j = clipmove(pos, §,
|
||||
(MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14) * TICSPERFRAME) << 11,
|
||||
(MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14) * TICSPERFRAME) << 11,
|
||||
(MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14) * TICSPERFRAME) << 11,
|
||||
(MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14) * TICSPERFRAME) << 11,
|
||||
24, (4 << 8), (4 << 8), CLIPMASK1, coll);
|
||||
actor->spr.pos = pos;;
|
||||
actor->setsector(sect);
|
||||
|
@ -2219,7 +2219,7 @@ bool jibs(DDukeActor *actor, int JIBS6, bool timeout, bool callsetsprite, bool f
|
|||
else actor->add_int_zvel( gs.gravity - 50);
|
||||
}
|
||||
|
||||
actor->add_int_pos({ MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14), MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14), 0 });
|
||||
actor->add_int_pos({ MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14), MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14), 0 });
|
||||
actor->spr.pos.Z += actor->float_zvel();
|
||||
|
||||
if (floorcheck && actor->spr.pos.Z >= actor->sector()->floorz)
|
||||
|
@ -2494,7 +2494,7 @@ void scrap(DDukeActor* actor, int SCRAP1, int SCRAP6)
|
|||
}
|
||||
}
|
||||
if (actor->float_zvel() < 16) actor->add_int_zvel( gs.gravity - 50);
|
||||
actor->add_int_pos({ MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14), MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14), actor->int_zvel()});
|
||||
actor->add_int_pos({ MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14), MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14), actor->int_zvel()});
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2824,8 +2824,8 @@ void handle_se14(DDukeActor* actor, bool checkstat, int RPG, int JIBS6)
|
|||
}
|
||||
}
|
||||
|
||||
int m = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
x = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
int m = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
x = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
double mm = m * inttoworld;
|
||||
double xx = x * inttoworld;
|
||||
|
||||
|
@ -2983,8 +2983,8 @@ void handle_se30(DDukeActor *actor, int JIBS6)
|
|||
|
||||
if (actor->spr.xvel)
|
||||
{
|
||||
int l = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
int x = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
int l = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
int x = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
if ((sc->floorz - sc->ceilingz) < 108)
|
||||
if (ud.clipping == 0)
|
||||
|
@ -3134,8 +3134,8 @@ void handle_se02(DDukeActor* actor)
|
|||
else sc->setfloorslope(sc->getfloorslope() + (Sgn(actor->temp_data[5] - sc->getfloorslope()) << 4));
|
||||
}
|
||||
|
||||
int m = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
int x = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
int m = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
int x = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
|
||||
for (int p = connecthead; p >= 0; p = connectpoint2[p])
|
||||
|
@ -4118,8 +4118,8 @@ void handle_se20(DDukeActor* actor)
|
|||
|
||||
if (actor->spr.xvel) //Moving
|
||||
{
|
||||
int x = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
int l = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
int x = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
int l = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
actor->temp_data[3] += actor->spr.xvel;
|
||||
|
||||
|
|
|
@ -2598,8 +2598,8 @@ static void heavyhbomb(DDukeActor *actor)
|
|||
|
||||
Collision coll;
|
||||
movesprite_ex(actor,
|
||||
MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14),
|
||||
MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14),
|
||||
actor->int_zvel(), CLIPMASK0, coll);
|
||||
|
||||
if (actor->sector()->lotag == 1 && actor->float_zvel() == 0)
|
||||
|
|
|
@ -2375,8 +2375,8 @@ static void heavyhbomb(DDukeActor *actor)
|
|||
|
||||
Collision coll;
|
||||
movesprite_ex(actor,
|
||||
MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14),
|
||||
MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14),
|
||||
MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14),
|
||||
actor->int_zvel(), CLIPMASK0, coll);
|
||||
|
||||
if (actor->sector()->lotag == 1 && actor->float_zvel() == 0)
|
||||
|
@ -2563,8 +2563,8 @@ static int henstand(DDukeActor *actor)
|
|||
makeitfall(actor);
|
||||
Collision coll;
|
||||
movesprite_ex(actor,
|
||||
MulScale(bcos(actor->int_ang()), actor->spr.xvel, 14),
|
||||
MulScale(bsin(actor->int_ang()), actor->spr.xvel, 14),
|
||||
MulScale(bcos(actor->int_ang()), actor->int_xvel(), 14),
|
||||
MulScale(bsin(actor->int_ang()), actor->int_xvel(), 14),
|
||||
actor->int_zvel(), CLIPMASK0, coll);
|
||||
if (coll.type)
|
||||
{
|
||||
|
|
|
@ -216,7 +216,7 @@ void animatesprites_d(tspriteArray& tsprites, int x, int y, int a, int smoothrat
|
|||
case BURNING2:
|
||||
if (OwnerAc && OwnerAc->spr.statnum == STAT_PLAYER)
|
||||
{
|
||||
if (display_mirror == 0 && OwnerAc->spr.yvel == screenpeek && ps[screenpeek].over_shoulder_on == 0)
|
||||
if (display_mirror == 0 && OwnerAc->PlayerIndex() == screenpeek && ps[screenpeek].over_shoulder_on == 0)
|
||||
t->xrepeat = 0;
|
||||
else
|
||||
{
|
||||
|
|
|
@ -773,8 +773,8 @@ int DoActorDeathMove(DSWActor* actor)
|
|||
DoActorFall(actor);
|
||||
}
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
actor->spr.clipdist = (128+64)>>2;
|
||||
move_actor(actor, nx, ny, 0);
|
||||
|
|
|
@ -805,8 +805,8 @@ int DoActorMoveCloser(DSWActor* actor)
|
|||
{
|
||||
int nx, ny;
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// if cannot move the sprite
|
||||
if (!move_actor(actor, nx, ny, 0))
|
||||
|
@ -1282,8 +1282,8 @@ int DoActorMoveJump(DSWActor* actor)
|
|||
|
||||
// Move while jumping
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
move_actor(actor, nx, ny, 0L);
|
||||
|
||||
|
@ -1590,8 +1590,8 @@ int DoActorReposition(DSWActor* actor)
|
|||
{
|
||||
int nx, ny;
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// still might hit something and have to handle it.
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
|
|
|
@ -866,8 +866,8 @@ int DoBunnyMoveJump(DSWActor* actor)
|
|||
int nx, ny;
|
||||
|
||||
// Move while jumping
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
move_actor(actor, nx, ny, 0L);
|
||||
|
||||
|
|
|
@ -706,8 +706,8 @@ int DoCoolgCircle(DSWActor* actor)
|
|||
|
||||
actor->set_int_ang(NORM_ANGLE(actor->int_ang() + actor->user.Counter2));
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
{
|
||||
|
|
|
@ -779,8 +779,8 @@ int GirlNinjaJumpActionFunc(DSWActor* actor)
|
|||
int nx, ny;
|
||||
|
||||
// Move while jumping
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// if cannot move the sprite
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
|
|
|
@ -439,8 +439,8 @@ int DoHornetCircle(DSWActor* actor)
|
|||
|
||||
actor->set_int_ang(NORM_ANGLE(actor->int_ang() + actor->user.Counter2));
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
{
|
||||
|
@ -449,8 +449,8 @@ int DoHornetCircle(DSWActor* actor)
|
|||
// try moving in the opposite direction
|
||||
actor->user.Counter2 = -actor->user.Counter2;
|
||||
actor->spr.angle += DAngle180;
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
if (!move_actor(actor, nx, ny, 0))
|
||||
{
|
||||
|
|
|
@ -2036,8 +2036,8 @@ int NinjaJumpActionFunc(DSWActor* actor)
|
|||
int nx, ny;
|
||||
|
||||
// Move while jumping
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// if cannot move the sprite
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
|
|
|
@ -979,8 +979,8 @@ int DoRipperMoveHang(DSWActor* actor)
|
|||
int nx, ny;
|
||||
|
||||
// Move while jumping
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// if cannot move the sprite
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
|
|
|
@ -993,8 +993,8 @@ int DoRipper2MoveHang(DSWActor* actor)
|
|||
int nx, ny;
|
||||
|
||||
// Move while jumping
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 14);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 14);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 14);
|
||||
|
||||
// if cannot move the sprite
|
||||
if (!move_actor(actor, nx, ny, 0L))
|
||||
|
|
|
@ -2602,8 +2602,8 @@ void DoPanning(void)
|
|||
{
|
||||
sectp = actor->sector();
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 20);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 20);
|
||||
|
||||
sectp->addfloorxpan((float)nx);
|
||||
sectp->addfloorypan((float)ny);
|
||||
|
@ -2614,8 +2614,8 @@ void DoPanning(void)
|
|||
{
|
||||
sectp = actor->sector();
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 20);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 20);
|
||||
|
||||
sectp->addceilingxpan((float)nx);
|
||||
sectp->addceilingypan((float)ny);
|
||||
|
@ -2626,8 +2626,8 @@ void DoPanning(void)
|
|||
{
|
||||
wallp = actor->tempwall;
|
||||
|
||||
nx = MulScale(actor->spr.xvel, bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->spr.xvel, bsin(actor->int_ang()), 20);
|
||||
nx = MulScale(actor->int_xvel(), bcos(actor->int_ang()), 20);
|
||||
ny = MulScale(actor->int_xvel(), bsin(actor->int_ang()), 20);
|
||||
|
||||
wallp->addxpan((float)nx);
|
||||
wallp->addypan((float)ny);
|
||||
|
|
|
@ -252,7 +252,7 @@ int SetupSkull(DSWActor* actor)
|
|||
|
||||
int DoSkullMove(DSWActor* actor)
|
||||
{
|
||||
auto vect = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vect = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
double daz = actor->float_zvel();
|
||||
|
||||
actor->user.coll = move_missile(actor, DVector3(vect, daz), 16, 16, CLIPMASK_MISSILE, ACTORMOVETICS);
|
||||
|
|
|
@ -38,7 +38,7 @@ public:
|
|||
|
||||
inline void UpdateChangeXY(DSWActor* actor)
|
||||
{
|
||||
actor->user.change.XY() = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
actor->user.change.XY() = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
}
|
||||
|
||||
inline void UpdateChange(DSWActor* actor, double zfactor = 1.0)
|
||||
|
|
|
@ -7920,7 +7920,7 @@ int DoPlasma(DSWActor* actor)
|
|||
auto oldv = actor->spr.pos;
|
||||
DoBlurExtend(actor, 0, 4);
|
||||
|
||||
auto vec = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vec = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
double daz = actor->float_zvel();
|
||||
|
||||
actor->user.coll = move_missile(actor, DVector3(vec, daz), 16, 16, CLIPMASK_MISSILE, MISSILEMOVETICS);
|
||||
|
@ -8849,7 +8849,7 @@ int DoBoltThinMan(DSWActor* actor)
|
|||
{
|
||||
DoBlurExtend(actor, 0, 4);
|
||||
|
||||
auto vec = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vec = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
double daz = actor->float_zvel();
|
||||
|
||||
actor->user.coll = move_missile(actor, DVector3(vec, daz), CEILING_DIST, FLOOR_DIST, CLIPMASK_MISSILE, MISSILEMOVETICS);
|
||||
|
@ -9420,7 +9420,7 @@ int DoBoltSeeker(DSWActor* actor)
|
|||
MissileSeek(actor, 30, 768/*, 4, 48, 6*/);
|
||||
DoBlurExtend(actor, 0, 4);
|
||||
|
||||
auto vec = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vec = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
double daz = actor->float_zvel();
|
||||
|
||||
actor->user.coll = move_missile(actor, DVector3(vec, daz), CEILING_DIST, FLOOR_DIST, CLIPMASK_MISSILE, MISSILEMOVETICS);
|
||||
|
@ -9459,7 +9459,7 @@ int DoElectro(DSWActor* actor)
|
|||
if (actor->user.Counter > 0)
|
||||
MissileSeek(actor, 30, 512/*, 3, 52, 2*/);
|
||||
|
||||
auto vec = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vec = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
double daz = actor->float_zvel();
|
||||
|
||||
actor->user.coll = move_missile(actor, DVector3(vec, daz), CEILING_DIST, FLOOR_DIST, CLIPMASK_MISSILE, MISSILEMOVETICS);
|
||||
|
@ -16081,7 +16081,7 @@ int HelpMissileLateral(DSWActor* actor, int dist)
|
|||
|
||||
actor->spr.xvel = dist;
|
||||
|
||||
auto vec = MOVExy(actor->spr.xvel, actor->spr.angle);
|
||||
auto vec = MOVExy(actor->int_xvel(), actor->spr.angle);
|
||||
|
||||
actor->spr.clipdist = 32L >> 2;
|
||||
|
||||
|
|
Loading…
Reference in a new issue