From 180e2a20e9583bb3b4753ec9c8a000edb326b481 Mon Sep 17 00:00:00 2001 From: MegaMech <7255464+MegaMech@users.noreply.github.com> Date: Fri, 23 May 2025 06:41:07 -0600 Subject: [PATCH] Tag finishline --- src/engine/actors/Finishline.cpp | 7 +++++++ src/engine/actors/Finishline.h | 1 + 2 files changed, 8 insertions(+) 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 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;