Fix camera jitter in Egg Hammer Tank Mk.1 Boss

This commit is contained in:
JaceCear committed 2025-11-19 22:48:30 +01:00
1 parent ce5179300d
commit b7de0e5c26
3 files changed
+10 -5

No files matched your search

+7 -2
View File
@@ -282,7 +282,7 @@ void Task_8025D80(void)
s2->graphics.anim = SA1_ANIM_EGGMAN;
s2->variant = 0;
s2->frameFlags |= 0x400;
CreatePreBossCameraPan((worldY - 48), (worldY + 112));
CreatePreBossCameraPan((worldY - 48), (worldY + (DISPLAY_HEIGHT - 48)));
}
}
@@ -399,7 +399,12 @@ void CreateEntity_EggHammerTank(MapEntity *me, u16 regionX, u16 regionY, u8 id)
gCamera.shiftY = -56;
gCamera.maxX = s->x - 64;
gCamera.minX = (((float)gCamera.maxX) - 360.f);
// TODO/NOTE(Jace):
// (DISPLAY_WIDTH * 1.5f) might break TAS tests, if we plan on adding those.
//
// Also, once we allow for arbitrary resolutions, it might lead to Eggman
// indefinitely moving left, without turning around...
gCamera.minX = (((float)gCamera.maxX) - (DISPLAY_WIDTH * 1.5f));
gMusicManagerState.unk1 = 0x10;
}
+2 -2
View File
@@ -103,9 +103,9 @@ struct Task *CreateMultiplayerChao(u8 spawnIndex, u8 id)
if ((gCurrentLevel == ACT_CHAO_HUNT_D) && (spawnIndex > 4U)) {
SPRITE_FLAG_SET(s, Y_FLIP);
SPRITE_FLAG_SET_VALUE(s, PRIORITY, 2);
y = sChaoSpawnPositions[gCurrentLevel - NUM_LEVEL_IDS_SP][spawnIndex][1] + 0x10;
y = sChaoSpawnPositions[gCurrentLevel - NUM_LEVEL_IDS_SP][spawnIndex][1] + 16;
} else {
y = sChaoSpawnPositions[gCurrentLevel - NUM_LEVEL_IDS_SP][spawnIndex][1] - 0x10;
y = sChaoSpawnPositions[gCurrentLevel - NUM_LEVEL_IDS_SP][spawnIndex][1] - 16;
}
chao->id = id;
+1 -1
View File
@@ -187,7 +187,7 @@ NONMATCH("asm/non_matching/game/stage/Item_Tasks__Task_Item_Shield_Normal.inc",
b = (pid & 1);
if (((gStageTime & 0x2) && (pid != b)) || (!(gStageTime & 0x2) && (b != 0))) {
if (((gStageTime & 0x2) && (pid != b)) || (!(gStageTime & 0x2) && (pid != 0))) {
DisplaySprite(&item->s);
}
}