Fixed B_TRANSITION_SHRED_SPLIT from softlocking the game (#4919)
* Added B_ENABLE_SHRED_SPLIT Created preproc define to remove ShredSplit_BrokenCheck * Removed config per https://github.com/rh-hideout/pokeemerald-expansion/pull/4919\#issuecomment-2211690039
This commit is contained in:
parent
fcdc9ed65a
commit
805a6300c7
1 changed files with 0 additions and 25 deletions
|
@ -212,7 +212,6 @@ static bool8 AngledWipes_TryEnd(struct Task *);
|
||||||
static bool8 AngledWipes_StartNext(struct Task *);
|
static bool8 AngledWipes_StartNext(struct Task *);
|
||||||
static bool8 ShredSplit_Init(struct Task *);
|
static bool8 ShredSplit_Init(struct Task *);
|
||||||
static bool8 ShredSplit_Main(struct Task *);
|
static bool8 ShredSplit_Main(struct Task *);
|
||||||
static bool8 ShredSplit_BrokenCheck(struct Task *);
|
|
||||||
static bool8 ShredSplit_End(struct Task *);
|
static bool8 ShredSplit_End(struct Task *);
|
||||||
static bool8 Blackhole_Init(struct Task *);
|
static bool8 Blackhole_Init(struct Task *);
|
||||||
static bool8 Blackhole_Vibrate(struct Task *);
|
static bool8 Blackhole_Vibrate(struct Task *);
|
||||||
|
@ -561,7 +560,6 @@ static const TransitionStateFunc sShredSplit_Funcs[] =
|
||||||
{
|
{
|
||||||
ShredSplit_Init,
|
ShredSplit_Init,
|
||||||
ShredSplit_Main,
|
ShredSplit_Main,
|
||||||
ShredSplit_BrokenCheck,
|
|
||||||
ShredSplit_End
|
ShredSplit_End
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2928,29 +2926,6 @@ static bool8 ShredSplit_Main(struct Task *task)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// This function never increments the state counter, because the loop condition
|
|
||||||
// is always false, resulting in the game being stuck in an infinite loop.
|
|
||||||
// It's possible this transition is only partially
|
|
||||||
// done and the second part was left out.
|
|
||||||
// In any case removing or bypassing this state allows the transition to finish.
|
|
||||||
static bool8 ShredSplit_BrokenCheck(struct Task *task)
|
|
||||||
{
|
|
||||||
u16 i;
|
|
||||||
bool32 done = TRUE;
|
|
||||||
u16 checkVar2 = 0xFF10;
|
|
||||||
|
|
||||||
for (i = 0; i < DISPLAY_HEIGHT; i++)
|
|
||||||
{
|
|
||||||
if (gScanlineEffectRegBuffers[1][i] != DISPLAY_WIDTH && gScanlineEffectRegBuffers[1][i] != checkVar2)
|
|
||||||
done = FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (done == TRUE)
|
|
||||||
task->tState++;
|
|
||||||
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool8 ShredSplit_End(struct Task *task)
|
static bool8 ShredSplit_End(struct Task *task)
|
||||||
{
|
{
|
||||||
DmaStop(0);
|
DmaStop(0);
|
||||||
|
|
Loading…
Reference in a new issue