summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMegaMech <7255464+MegaMech@users.noreply.github.com>2025-05-23 06:41:07 -0600
committerMegaMech <7255464+MegaMech@users.noreply.github.com>2025-05-23 06:41:07 -0600
commit180e2a20e9583bb3b4753ec9c8a000edb326b481 (patch)
tree4f72365d357cb19ef798c08eb0dbcab011593b54
parent598e7ba62ea5035dae7abf00438c3fbb69723930 (diff)
Tag finishline
-rw-r--r--src/engine/actors/Finishline.cpp7
-rw-r--r--src/engine/actors/Finishline.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/engine/actors/Finishline.cpp b/src/engine/actors/Finishline.cpp
index 33f12120f..4f76f3546 100644
--- a/src/engine/actors/Finishline.cpp
+++ b/src/engine/actors/Finishline.cpp
@@ -7,6 +7,7 @@
#include "World.h"
#include "assets/common_data.h"
#include "src/port/Game.h"
+#include "port/interpolation/FrameInterpolation.h"
extern "C" {
#include "macros.h"
@@ -18,6 +19,8 @@ extern f32 gKartHopInitialVelocityTable[];
extern f32 gKartGravityTable[];
}
+size_t AFinishline::_count = 0;
+
AFinishline::AFinishline(std::optional<FVector> pos) {
Name = "Finishline";
@@ -58,6 +61,8 @@ void AFinishline::Draw(Camera *camera) {
return;
}
+ FrameInterpolation_RecordOpenChild("Finishline", _count);
+
mtxf_pos_rotation_xyz(mtx, Pos, Rot);
maxObjectsReached = render_set_position(mtx, 0) == 0;
@@ -79,6 +84,8 @@ void AFinishline::Draw(Camera *camera) {
} else {
gSPDisplayList(gDisplayListHead++, (Gfx*)D_0D001BD8);
}
+
+ FrameInterpolation_RecordCloseChild();
}
void AFinishline::Collision(Player* player, AActor* actor) {}
diff --git a/src/engine/actors/Finishline.h b/src/engine/actors/Finishline.h
index 61b561a5e..3c0e84de8 100644
--- a/src/engine/actors/Finishline.h
+++ b/src/engine/actors/Finishline.h
@@ -27,6 +27,7 @@ public:
virtual void Collision(Player* player, AActor* actor) override;
virtual bool IsMod() override;
+ static size_t _count;
bool PickedUp = false;
uint32_t Timer = 0;