summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMegaMech <MegaMech@users.noreply.github.com>2026-03-09 18:43:17 -0600
committerGitHub <noreply@github.com>2026-03-09 18:43:17 -0600
commitd16bdd75b1ccb8a5dfd078a4adf210a32256d271 (patch)
treee5f702099e119dad5557b70d6f7583b029f6fd33 /src
parent132357d9fb50d7962518e10b22db358c85d87ba5 (diff)
Fix Palm Tree Interp (#675)
* Update actors.c * Update actors.c * Update SkyCloud.cpp * Update render_objects.c
Diffstat (limited to 'src')
-rw-r--r--src/engine/sky/SkyCloud.cpp16
-rw-r--r--src/racing/actors.c3
-rw-r--r--src/render_objects.c2
3 files changed, 12 insertions, 9 deletions
diff --git a/src/engine/sky/SkyCloud.cpp b/src/engine/sky/SkyCloud.cpp
index 6c81cfbdd..d57133d31 100644
--- a/src/engine/sky/SkyCloud.cpp
+++ b/src/engine/sky/SkyCloud.cpp
@@ -28,22 +28,22 @@ SkyCloud::SkyCloud(ScreenContext* screen, u16 cloudVariant, u16 posY, u16 rotY,
mRotY = rotY;
mScale = (f32) scalePercent / 100.0;
+ // Stock
if (GameEngine_ResourceGetTexTypeByName((const char*)CM_GetProps()->CloudTexture) != 1) {
mTexture = ((u8*) LOAD_ASSET_RAW(CM_GetProps()->CloudTexture)) + (cloudVariant * 1024);
- mTextureWidth = 64;
- mTextureHeight = 32;
mVtx = (Vtx*)D_0D005FB0;
- } else {
+ } else { // Texture pack
mTexture = CM_GetProps()->CloudTexture;
- if (strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust0) == 0 ||
+
+ if ((strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust3) == 0) ||
+ (strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust4) == 0) ||
+ (strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust5) == 0)) {
+ mVtx = cloudvtx[cloudVariant];
+ } else if (strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust0) == 0 ||
strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust1) == 0 ||
strcmp((const char*)CM_GetProps()->CloudTexture, gTextureExhaust2) == 0) {
- mTextureWidth = 64;
- mTextureHeight = 32;
mVtx = cloudvtx2[cloudVariant];
} else {
- mTextureWidth = 64;
- mTextureHeight = 32;
mVtx = cloudvtx2[cloudVariant];
}
}
diff --git a/src/racing/actors.c b/src/racing/actors.c
index 5482a08ec..e24b53442 100644
--- a/src/racing/actors.c
+++ b/src/racing/actors.c
@@ -568,6 +568,7 @@ void render_cows(Camera* camera, Mat4 arg1) {
break;
}
} else {
+ FrameInterpolation_RecordCloseChild();
return;
}
@@ -691,6 +692,7 @@ void render_palm_trees(Camera* camera, Mat4 arg1) {
if (test == 6) {
mtxf_pos_rotation_xyz(sp90, spD4, sp88);
if (!(gMatrixObjectCount < MTX_OBJECT_POOL_SIZE)) {
+ FrameInterpolation_RecordCloseChild();
break;
}
render_set_position(sp90, 0);
@@ -718,6 +720,7 @@ void render_palm_trees(Camera* camera, Mat4 arg1) {
break;
}
} else {
+ FrameInterpolation_RecordCloseChild();
break;
}
var_s1++;
diff --git a/src/render_objects.c b/src/render_objects.c
index 2a0961a03..6489b2790 100644
--- a/src/render_objects.c
+++ b/src/render_objects.c
@@ -3502,7 +3502,7 @@ void func_80051C60(ScreenContext* screen, s16 arg0, s32 arg1) {
D_8018D228 = 0xFF;
gSPDisplayList(gDisplayListHead++, D_0D007A60);
- DrawSkyActors(screen, arg0);
+ DrawSkyActors(screen, var_s5);
}
void func_80051EBC(ScreenContext* screen) {