From 69c97a88d3ab052a8e0f38cd1332824a0d68dca5 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Mon, 1 Nov 2021 14:33:26 +0100 Subject: [PATCH] - lava.cpp --- source/games/sw/src/lava.cpp | 14 +++++--------- source/games/sw/src/sprite.cpp | 4 ++-- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/source/games/sw/src/lava.cpp b/source/games/sw/src/lava.cpp index aa68f14d7..f756ed63f 100644 --- a/source/games/sw/src/lava.cpp +++ b/source/games/sw/src/lava.cpp @@ -451,22 +451,20 @@ ACTOR_ACTION_SET LavaActionSet = nullptr }; -int -SetupLava(short SpriteNum) +int SetupLava(DSWActor* actor) { - auto actor = &swActors[SpriteNum]; - SPRITEp sp = &sprite[SpriteNum]; + SPRITEp sp = &actor->s(); USERp u; ANIMATOR DoActorDecide; if (TEST(sp->cstat, CSTAT_SPRITE_RESTORE)) { - u = User[SpriteNum].Data(); + u = actor->u(); ASSERT(u); } else { - u = SpawnUser(SpriteNum,LAVA_RUN_R0,s_LavaRun[0]); + u = SpawnUser(actor, LAVA_RUN_R0, s_LavaRun[0]); u->Health = 100; } @@ -489,7 +487,6 @@ SetupLava(short SpriteNum) int NullLava(DSWActor* actor) { USER* u = actor->u(); - int SpriteNum = u->SpriteNum; if (TEST(u->Flags,SPR_SLIDING)) DoActorSlide(actor); @@ -503,13 +500,12 @@ int NullLava(DSWActor* actor) int DoLavaMove(DSWActor* actor) { USER* u = actor->u(); - int SpriteNum = u->SpriteNum; if (TEST(u->Flags,SPR_SLIDING)) DoActorSlide(actor); if (u->track >= 0) - ActorFollowTrack(SpriteNum, ACTORMOVETICS); + ActorFollowTrack(actor->GetSpriteIndex(), ACTORMOVETICS); else (*u->ActorActionFunc)(actor); diff --git a/source/games/sw/src/sprite.cpp b/source/games/sw/src/sprite.cpp index 06b312d54..f84a3e70e 100644 --- a/source/games/sw/src/sprite.cpp +++ b/source/games/sw/src/sprite.cpp @@ -71,7 +71,7 @@ int SetupBunny(DSWActor*); int SetupRipper(short); int SetupRipper2(short); int SetupSerp(short); -int SetupLava(short); +int SetupLava(DSWActor* actor); int SetupSkel(short); int SetupHornet(DSWActor*); int SetupSkull(short); @@ -1473,7 +1473,7 @@ ActorSpawn(SPRITEp sp) } PicAnimOff(sp->picnum); - SetupLava(SpriteNum); + SetupLava(actor); break; }