summaryrefslogtreecommitdiff
path: root/mm/src/code
diff options
context:
space:
mode:
authorGarrett Cox <garrettjcox@gmail.com>2026-08-17 07:59:04 -0500
committerGitHub <noreply@github.com>2026-08-17 07:59:04 -0500
commit431dea3c6ea00d0447c68639cfe97628255ccdcd (patch)
tree516647751d78325a2d6380b313fab1cc94eb5504 /mm/src/code
parent7e6907f96ed9f2c11f87e5e23a4195712b07c677 (diff)
parent4daf4e270d896771400b0b30beb7b83c20041b07 (diff)
develop-battler -> develop (#1892)
* Fix tingle map & bombers notebook checks not being re-obtainable (#1886) * fix flags (#1885) * button it up (#1884) * Maybe fix wasapi teardown (#1879) * [Fix] Game crashes when menu engaged when regenerating OTR (#1878) * fix * more reliable target it should just check that process of otr extraction finished and we are in game * properly remove all incompatible o2rs (#1882) * Fix interpolation for archery enemies and bubbles (#1889) --------- Co-authored-by: balloondude2 <55861555+balloondude2@users.noreply.github.com> Co-authored-by: mckinlee <mckinlee@ymail.com> Co-authored-by: lightmanLP <liteman1000@gmail.com>
Diffstat (limited to 'mm/src/code')
-rw-r--r--mm/src/code/z_effect_soft_sprite.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/mm/src/code/z_effect_soft_sprite.c b/mm/src/code/z_effect_soft_sprite.c
index da9ea400c..25f4b2e36 100644
--- a/mm/src/code/z_effect_soft_sprite.c
+++ b/mm/src/code/z_effect_soft_sprite.c
@@ -22,6 +22,7 @@ void EffectSs_InitInfo(PlayState* play, s32 tableSize) {
for (effectSs = &sEffectSsInfo.table[0]; effectSs < &sEffectSsInfo.table[sEffectSsInfo.tableSize]; effectSs++) {
EffectSs_Reset(effectSs);
+ effectSs->epoch = 0;
}
overlay = &gEffectSsOverlayTable[0];
@@ -161,8 +162,11 @@ void EffectSs_Insert(PlayState* play, EffectSs* effectSs) {
if (FrameAdvance_IsEnabled(play) != true) {
if (EffectSs_FindSlot(effectSs->priority, &index) == 0) {
+ u32 epoch = sEffectSsInfo.table[index].epoch + 1;
+
sEffectSsInfo.searchStartIndex = index + 1;
sEffectSsInfo.table[index] = *effectSs;
+ sEffectSsInfo.table[index].epoch = epoch;
}
}
}
@@ -211,6 +215,7 @@ void EffectSs_Spawn(PlayState* play, s32 type, s32 priority, void* initData) {
sEffectSsInfo.table[index].type = type;
sEffectSsInfo.table[index].priority = priority;
+ sEffectSsInfo.table[index].epoch++;
if (profile->init(play, index, &sEffectSsInfo.table[index], initData) == 0) {
EffectSs_Reset(&sEffectSsInfo.table[index]);