diff options
| author | sitton76 <58642183+sitton76@users.noreply.github.com> | 2025-05-17 01:51:32 -0500 |
|---|---|---|
| committer | sitton76 <58642183+sitton76@users.noreply.github.com> | 2025-05-17 01:51:32 -0500 |
| commit | 41dcadce4229eae4f0f9ec9b9eefed4399731fe1 (patch) | |
| tree | 9bf526dd5239f01376769d300389ab468a617d64 /src | |
| parent | 9cb954a2b025d2b3de0c7c74ae19077a1c80779f (diff) | |
| parent | 3852e7e88b8ff36529c830b376a391a89d430f37 (diff) | |
Merge branch 'frameinterpolation' of https://github.com/HarbourMasters/SpaghettiKart into frameinterpolation
Diffstat (limited to 'src')
| -rw-r--r-- | src/code_80057C60.c | 6 | ||||
| -rw-r--r-- | src/port/interpolation/FrameInterpolation.h | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/code_80057C60.c b/src/code_80057C60.c index f9d56af83..840ea88c4 100644 --- a/src/code_80057C60.c +++ b/src/code_80057C60.c @@ -6574,6 +6574,10 @@ void func_8006D474(Player* player, s8 playerId, s8 screenId) { s16 var_s2; if ((player->unk_002 & (8 << (screenId * 4))) == (8 << (screenId * 4))) { for (var_s2 = 0; var_s2 < 10; var_s2++) { + // @port: Tag the transform. + FrameInterpolation_RecordOpenChild( + "SmokeDust", TAG_SMOKE_DUST(((u32) player->unk_258[var_s2].unk_012 << 8) + (playerId << 16) + var_s2)); + switch (player->unk_258[var_s2].unk_012) { case 1: if (gActiveScreenMode == SCREEN_MODE_3P_4P_SPLITSCREEN) { @@ -6694,6 +6698,8 @@ void func_8006D474(Player* player, s8 playerId, s8 screenId) { } break; } + // @port Pop the transform id. + FrameInterpolation_RecordCloseChild(); } } if ((gModeSelection == BATTLE) && (player->unk_002 & (2 << (screenId * 4)))) { diff --git a/src/port/interpolation/FrameInterpolation.h b/src/port/interpolation/FrameInterpolation.h index 5d3f9cb35..016dc691a 100644 --- a/src/port/interpolation/FrameInterpolation.h +++ b/src/port/interpolation/FrameInterpolation.h @@ -17,8 +17,10 @@ std::unordered_map<Mtx*, MtxF> FrameInterpolation_Interpolate(float step); extern "C" { #endif -#define TAG_ITEM_ADDR(x) ((u32) 0x10000000 | (u32) x) -#define TAG_OBJECT(x) ((u32) 0x40000000 | (u32) (x)) +#define TAG_ITEM_ADDR(x) ((u32) 0x10000000 | (u32)x) +#define TAG_SMOKE_DUST(x) ((u32) 0x20000000 | (u32) (x)) +#define TAG_LETTER(x) ((u32)0x30000000 | (u32) (x)) +#define TAG_OBJECT(x) ((u32)0x40000000 | (u32)(x)) void FrameInterpolation_ShouldInterpolateFrame(bool shouldInterpolate); |
