From e1ceab240bce3fe7ac64651cc42c722c110c4e81 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sun, 21 Aug 2022 10:52:19 +0200 Subject: [PATCH] - SW's quake stuff --- source/games/sw/src/player.cpp | 2 +- source/games/sw/src/quake.cpp | 19 +++++++++---------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/source/games/sw/src/player.cpp b/source/games/sw/src/player.cpp index 39a0c497d..2094b782a 100644 --- a/source/games/sw/src/player.cpp +++ b/source/games/sw/src/player.cpp @@ -5722,7 +5722,7 @@ void DoPlayerDeathCheckKeys(PLAYER* pp) plActor->spr.picnum = plActor->user.State->Pic; plActor->spr.xrepeat = plActor->spr.yrepeat = PLAYER_NINJA_XREPEAT; plActor->spr.cstat &= ~(CSTAT_SPRITE_YCENTER); - plActor->set_int_pos({ pp->int_ppos().X, pp->int_ppos().Y, pp->int_ppos().Z + PLAYER_HEIGHT }); + plActor->spr.pos = pp->pos.plusZ(PLAYER_HEIGHTF); plActor->set_int_ang(pp->angle.ang.Buildang()); DoSpawnTeleporterEffect(plActor); diff --git a/source/games/sw/src/quake.cpp b/source/games/sw/src/quake.cpp index 6e88a6c69..789cb4f18 100644 --- a/source/games/sw/src/quake.cpp +++ b/source/games/sw/src/quake.cpp @@ -220,13 +220,12 @@ void QuakeViewChange(PLAYER* pp, int *z_diff, int *x_diff, int *y_diff, short *a } } -void SpawnQuake(sectortype* sect, int x, int y, int z, - short tics, short amt, int radius) +void SpawnQuake(sectortype* sect, const DVector3& pos, int tics, int amt, int radius) { auto actorNew = insertActor(sect, STAT_QUAKE_ON); - actorNew->set_int_pos({ x, y, z }); + actorNew->spr.pos = pos; actorNew->spr.cstat = 0; actorNew->spr.extra = 0; @@ -242,43 +241,43 @@ void SpawnQuake(sectortype* sect, int x, int y, int z, bool SetQuake(PLAYER* pp, short tics, short amt) { - SpawnQuake(pp->cursector, pp->int_ppos().X, pp->int_ppos().Y, pp->int_ppos().Z, tics, amt, 30000); + SpawnQuake(pp->cursector, pp->pos, tics, amt, 30000); return false; } int SetExpQuake(DSWActor* actor) { - SpawnQuake(actor->sector(), actor->int_pos().X, actor->int_pos().Y, actor->int_pos().Z, 40, 4, 20000); // !JIM! was 8, 40000 + SpawnQuake(actor->sector(), actor->spr.pos, 40, 4, 20000); // !JIM! was 8, 40000 return 0; } int SetGunQuake(DSWActor* actor) { - SpawnQuake(actor->sector(), actor->int_pos().X, actor->int_pos().Y, actor->int_pos().Z, 40, 8, 40000); + SpawnQuake(actor->sector(), actor->spr.pos, 40, 8, 40000); return 0; } int SetPlayerQuake(PLAYER* pp) { - SpawnQuake(pp->cursector, pp->int_ppos().X, pp->int_ppos().Y, pp->int_ppos().Z, 40, 8, 40000); + SpawnQuake(pp->cursector, pp->pos, 40, 8, 40000); return 0; } int SetNuclearQuake(DSWActor* actor) { - SpawnQuake(actor->sector(), actor->int_pos().X, actor->int_pos().Y, actor->int_pos().Z, 400, 8, 64000); + SpawnQuake(actor->sector(), actor->spr.pos, 400, 8, 64000); return 0; } int SetSumoQuake(DSWActor* actor) { - SpawnQuake(actor->sector(), actor->int_pos().X, actor->int_pos().Y, actor->int_pos().Z, 120, 4, 20000); + SpawnQuake(actor->sector(), actor->spr.pos, 120, 4, 20000); return 0; } int SetSumoFartQuake(DSWActor* actor) { - SpawnQuake(actor->sector(), actor->int_pos().X, actor->int_pos().Y, actor->int_pos().Z, 60, 4, 4000); + SpawnQuake(actor->sector(), actor->spr.pos, 60, 4, 4000); return 0; }