Label pause screen and tutorial code

This commit is contained in:
gamemasterplc 2023-12-29 13:34:27 -06:00
parent 282e4f6c67
commit 64043934b5
7 changed files with 102 additions and 99 deletions

View file

@ -1090,8 +1090,8 @@ BoardConfettiStop = .text:0x80060A58; // type:function size:0x24
BoardConfettiKill = .text:0x80060A7C; // type:function size:0x88
ConfettiUpdate = .text:0x80060B04; // type:function size:0xB8 scope:local
ConfettiSpawn = .text:0x80060BBC; // type:function size:0x564 scope:local
ConfettiMove = .text:0x80061120; // type:function size:0x14C
ConfettiDraw = .text:0x8006126C; // type:function size:0x254
ConfettiMove = .text:0x80061120; // type:function size:0x14C scope:local
ConfettiDraw = .text:0x8006126C; // type:function size:0x254 scope:local
BoardLast5GfxInit = .text:0x800614C0; // type:function size:0x2B4
BoardLast5GfxUpdate = .text:0x80061774; // type:function size:0x2AC
BoardLast5GfxHide = .text:0x80061A20; // type:function size:0xAC
@ -1411,7 +1411,7 @@ BoardSpaceHide = .text:0x8007664C; // type:function size:0x48
DrawSpaces = .text:0x80076694; // type:function size:0x9E8 scope:local
BoardSpaceRead = .text:0x8007707C; // type:function size:0x174
BoardSpaceSetCamera = .text:0x800771F0; // type:function size:0x2C
BoardSpaceHiddenBlockSetNextPos = .text:0x8007721C; // type:function size:0xD0
BoardSpaceBlockSetPos = .text:0x8007721C; // type:function size:0xD0
BoardSpaceInit = .text:0x800772EC; // type:function size:0x750
BoardSpaceDestroy = .text:0x80077A3C; // type:function size:0x70
fn_80077AAC = .text:0x80077AAC; // type:function size:0x8
@ -1952,37 +1952,37 @@ fn_800AD83C = .text:0x800AD83C; // type:function size:0x58
fn_800AD894 = .text:0x800AD894; // type:function size:0x58
fn_800AD8EC = .text:0x800AD8EC; // type:function size:0x38
fn_800AD924 = .text:0x800AD924; // type:function size:0x260
fn_800ADB84 = .text:0x800ADB84; // type:function size:0x88
fn_800ADC0C = .text:0x800ADC0C; // type:function size:0x3C0
fn_800ADFCC = .text:0x800ADFCC; // type:function size:0x108
fn_800AE0D4 = .text:0x800AE0D4; // type:function size:0xABC
fn_800AEB90 = .text:0x800AEB90; // type:function size:0x168
fn_800AECF8 = .text:0x800AECF8; // type:function size:0x58
fn_800AED50 = .text:0x800AED50; // type:function size:0x4F4
fn_800AF244 = .text:0x800AF244; // type:function size:0x310
fn_800AF554 = .text:0x800AF554; // type:function size:0x264
fn_800AF7B8 = .text:0x800AF7B8; // type:function size:0x110
fn_800AF8C8 = .text:0x800AF8C8; // type:function size:0x48
fn_800AF910 = .text:0x800AF910; // type:function size:0xD4
fn_800AF9E4 = .text:0x800AF9E4; // type:function size:0x1CC
fn_800AFBB0 = .text:0x800AFBB0; // type:function size:0x178
fn_800AFD28 = .text:0x800AFD28; // type:function size:0x238
fn_800AFF60 = .text:0x800AFF60; // type:function size:0x3B0
fn_800B0310 = .text:0x800B0310; // type:function size:0x154
fn_800B0464 = .text:0x800B0464; // type:function size:0x390
fn_800B07F4 = .text:0x800B07F4; // type:function size:0x3E4
fn_800B0BD8 = .text:0x800B0BD8; // type:function size:0x240
fn_800B0E18 = .text:0x800B0E18; // type:function size:0x210
fn_800B1028 = .text:0x800B1028; // type:function size:0x70
fn_800B1098 = .text:0x800B1098; // type:function size:0x1B8
fn_800B1250 = .text:0x800B1250; // type:function size:0x12C
fn_800B137C = .text:0x800B137C; // type:function size:0x1A4
fn_800B1520 = .text:0x800B1520; // type:function size:0x10C
fn_800B162C = .text:0x800B162C; // type:function size:0xDC
fn_800B1708 = .text:0x800B1708; // type:function size:0x34
fn_800B173C = .text:0x800B173C; // type:function size:0x12C
fn_800B1868 = .text:0x800B1868; // type:function size:0x4C
fn_800B18B4 = .text:0x800B18B4; // type:function size:0xC0
BoardPauseStart = .text:0x800ADB84; // type:function size:0x88
PauseExit = .text:0x800ADC0C; // type:function size:0x3C0 scope:local
PauseProcess = .text:0x800ADFCC; // type:function size:0x108 scope:local
CreatePauseScreen = .text:0x800AE0D4; // type:function size:0xABC scope:local
DeletePauseScreen = .text:0x800AEB90; // type:function size:0x168 scope:local
SetBoxVisible = .text:0x800AECF8; // type:function size:0x58 scope:local
PauseConfigObjFunc = .text:0x800AED50; // type:function size:0x4F4 scope:local
UpdatePauseText = .text:0x800AF244; // type:function size:0x310 scope:local
InitPauseQuit = .text:0x800AF554; // type:function size:0x264 scope:local
PauseQuitProcess = .text:0x800AF7B8; // type:function size:0x110 scope:local
DeletePauseQuit = .text:0x800AF8C8; // type:function size:0x48 scope:local
UpdatePadConfig = .text:0x800AF910; // type:function size:0xD4 scope:local
CreatePadConfig = .text:0x800AF9E4; // type:function size:0x1CC scope:local
ScrollInPadConfig = .text:0x800AFBB0; // type:function size:0x178 scope:local
CursorMovePadConfig = .text:0x800AFD28; // type:function size:0x238 scope:local
ChangeDiffPadConfig = .text:0x800AFF60; // type:function size:0x3B0 scope:local
ScrollOutPadConfig = .text:0x800B0310; // type:function size:0x154 scope:local
UpdatePauseBox = .text:0x800B0464; // type:function size:0x390 scope:local
UpdatePauseBoxExt = .text:0x800B07F4; // type:function size:0x3E4 scope:local
ExecPauseConfig = .text:0x800B0BD8; // type:function size:0x240 scope:local
CreatePauseControlWin = .text:0x800B0E18; // type:function size:0x210 scope:local
DeletePauseControlWin = .text:0x800B1028; // type:function size:0x70 scope:local
WaitPauseInput = .text:0x800B1098; // type:function size:0x1B8 scope:local
ShowPauseConfig = .text:0x800B1250; // type:function size:0x12C scope:local
CreatePadConfigSprite = .text:0x800B137C; // type:function size:0x1A4 scope:local
ShowPadConfigSprite = .text:0x800B1520; // type:function size:0x10C scope:local
PauseCreateNumber = .text:0x800B162C; // type:function size:0xDC scope:local
BoardPauseActiveCheck = .text:0x800B1708; // type:function size:0x34
BoardPauseReqCheck = .text:0x800B173C; // type:function size:0x12C
CheckPort = .text:0x800B1868; // type:function size:0x4C scope:local
RotateBox = .text:0x800B18B4; // type:function size:0xC0 scope:local
fn_800B1974 = .text:0x800B1974; // type:function size:0x60
fn_800B19D4 = .text:0x800B19D4; // type:function size:0x180
fn_800B1B54 = .text:0x800B1B54; // type:function size:0xE4
@ -1997,19 +1997,19 @@ fn_800B2AB8 = .text:0x800B2AB8; // type:function size:0x65C
fn_800B3114 = .text:0x800B3114; // type:function size:0x488
fn_800B359C = .text:0x800B359C; // type:function size:0x45C
fn_800B39F8 = .text:0x800B39F8; // type:function size:0x4E0
fn_800B3ED8 = .text:0x800B3ED8; // type:function size:0x34
fn_800B3F0C = .text:0x800B3F0C; // type:function size:0x80
fn_800B3F8C = .text:0x800B3F8C; // type:function size:0x4C
fn_800B3FD8 = .text:0x800B3FD8; // type:function size:0x8
fn_800B3FE0 = .text:0x800B3FE0; // type:function size:0x44
fn_800B4024 = .text:0x800B4024; // type:function size:0x78
fn_800B409C = .text:0x800B409C; // type:function size:0x10C
fn_800B41A8 = .text:0x800B41A8; // type:function size:0xBC
fn_800B4264 = .text:0x800B4264; // type:function size:0x10
fn_800B4274 = .text:0x800B4274; // type:function size:0x40
fn_800B42B4 = .text:0x800B42B4; // type:function size:0x8
fn_800B42BC = .text:0x800B42BC; // type:function size:0x8
fn_800B42C4 = .text:0x800B42C4; // type:function size:0x30
TutorialProcFunc = .text:0x800B3ED8; // type:function size:0x34 scope:local
BoardTutorialInit = .text:0x800B3F0C; // type:function size:0x80
BoardTutorialKill = .text:0x800B3F8C; // type:function size:0x4C
BoardTutorialHookSet = .text:0x800B3FD8; // type:function size:0x8
BoardTutorialHookExec = .text:0x800B3FE0; // type:function size:0x44
BoardTutorialPlayerInit = .text:0x800B4024; // type:function size:0x78
BoardTutorialWorkSave = .text:0x800B409C; // type:function size:0x10C
BoardTutorialWorkRestore = .text:0x800B41A8; // type:function size:0xBC
BoardTutorialDirInputSet = .text:0x800B4264; // type:function size:0x10
BoardTutorialBlockSetPos = .text:0x800B4274; // type:function size:0x40
BoardTutorialItemSet = .text:0x800B42B4; // type:function size:0x8
BoardTutorialHostSet = .text:0x800B42BC; // type:function size:0x8
BoardTutorialHostHide = .text:0x800B42C4; // type:function size:0x30
PPCMfmsr = .text:0x800B42F4; // type:function size:0x8 scope:global
PPCMtmsr = .text:0x800B42FC; // type:function size:0x8 scope:global
PPCMfhid0 = .text:0x800B4304; // type:function size:0x8 scope:global
@ -5265,9 +5265,12 @@ lbl_8013B0D8 = .data:0x8013B0D8; // type:object size:0x120
lbl_8013B1F8 = .data:0x8013B1F8; // type:object size:0x24
lbl_8013B21C = .data:0x8013B21C; // type:object size:0x28
lbl_8013B244 = .data:0x8013B244; // type:object size:0x1AC
lbl_8013B3F0 = .data:0x8013B3F0; // type:object size:0x10 data:2byte
lbl_8013B400 = .data:0x8013B400; // type:object size:0x40 data:float
lbl_8013B440 = .data:0x8013B440; // type:object size:0x74
boxModelID = .data:0x8013B3F0; // type:object size:0x10 scope:local data:2byte
boxPosTbl = .data:0x8013B400; // type:object size:0x40 scope:local data:float
padConfigPosTbl = .data:0x8013B440; // type:object size:0x20 scope:local
boardLogoTbl = .data:0x8013B460; // type:object size:0x24 scope:local
turnDigitPosTbl = .data:0x8013B484; // type:object size:0x10 scope:local
boxMdlTbl = .data:0x8013B494; // type:object size:0x20 scope:local
jumptable_8013B4B4 = .data:0x8013B4B4; // type:object size:0x20 scope:local
jumptable_8013B4D4 = .data:0x8013B4D4; // type:object size:0x20 scope:local
jumptable_8013B4F4 = .data:0x8013B4F4; // type:object size:0x20 scope:local
@ -5547,8 +5550,8 @@ lbl_801A4CFC = .bss:0x801A4CFC; // type:object size:0xC data:float
lbl_801A4D08 = .bss:0x801A4D08; // type:object size:0xC
lbl_801A4D14 = .bss:0x801A4D14; // type:object size:0x10 data:2byte
lbl_801A4D24 = .bss:0x801A4D24; // type:object size:0x14 data:4byte
lbl_801A4D38 = .bss:0x801A4D38; // type:object size:0x20
lbl_801A4D58 = .bss:0x801A4D58; // type:object size:0x10 data:float
boxRot = .bss:0x801A4D38; // type:object size:0x20 scope:local
padBoxPos = .bss:0x801A4D58; // type:object size:0xC scope:local data:float
lbl_801A4D68 = .bss:0x801A4D68; // type:object size:0x500 data:byte
lbl_801A5268 = .bss:0x801A5268; // type:object size:0x80
lbl_801A52E8 = .bss:0x801A52E8; // type:object size:0x18 data:4byte
@ -6507,32 +6510,32 @@ lbl_801D425A = .sbss:0x801D425A; // type:object size:0x2 data:2byte
lbl_801D425C = .sbss:0x801D425C; // type:object size:0x1 data:byte
lbl_801D425D = .sbss:0x801D425D; // type:object size:0x1 data:byte
lbl_801D425E = .sbss:0x801D425E; // type:object size:0x1 data:byte
lbl_801D4260 = .sbss:0x801D4260; // type:object size:0x4 data:4byte
lbl_801D4264 = .sbss:0x801D4264; // type:object size:0x4 data:4byte
lbl_801D4268 = .sbss:0x801D4268; // type:object size:0x4 data:4byte
lbl_801D426C = .sbss:0x801D426C; // type:object size:0x8
lbl_801D4274 = .sbss:0x801D4274; // type:object size:0x1 data:byte
lbl_801D4276 = .sbss:0x801D4276; // type:object size:0x2 data:2byte
lbl_801D4278 = .sbss:0x801D4278; // type:object size:0x1 data:byte
lbl_801D4279 = .sbss:0x801D4279; // type:object size:0x1 data:byte
lbl_801D427A = .sbss:0x801D427A; // type:object size:0x6 data:byte
mainProcess = .sbss:0x801D4260; // type:object size:0x4 scope:local data:4byte
quitProcess = .sbss:0x801D4264; // type:object size:0x4 scope:local data:4byte
configObj = .sbss:0x801D4268; // type:object size:0x4 scope:local data:4byte
boxState = .sbss:0x801D426C; // type:object size:0x8 scope:local
cursorPos = .sbss:0x801D4274; // type:object size:0x1 scope:local data:byte
hostMdl = .sbss:0x801D4276; // type:object size:0x2 scope:local data:2byte
hostOldLayer = .sbss:0x801D4278; // type:object size:0x1 scope:local data:byte
mainScreenF = .sbss:0x801D4279; // type:object size:0x1 scope:local data:byte
pauseQuitF = .sbss:0x801D427A; // type:object size:0x1 scope:local data:byte
lbl_801D4280 = .sbss:0x801D4280; // type:object size:0x2 data:2byte
lbl_801D4282 = .sbss:0x801D4282; // type:object size:0x6 data:2byte
lbl_801D4288 = .sbss:0x801D4288; // type:object size:0x4 data:4byte
lbl_801D428C = .sbss:0x801D428C; // type:object size:0x4 data:4byte
lbl_801D4290 = .sbss:0x801D4290; // type:object size:0x4 data:4byte
lbl_801D4294 = .sbss:0x801D4294; // type:object size:0x4 data:4byte
lbl_801D4298 = .sbss:0x801D4298; // type:object size:0x4 data:4byte
lbl_801D429C = .sbss:0x801D429C; // type:object size:0x1 data:byte
lbl_801D429E = .sbss:0x801D429E; // type:object size:0x2 data:2byte
lbl_801D42A0 = .sbss:0x801D42A0; // type:object size:0x1 data:byte
lbl_801D42A1 = .sbss:0x801D42A1; // type:object size:0x1 data:byte
lbl_801D42A2 = .sbss:0x801D42A2; // type:object size:0x1 data:byte
lbl_801D42A4 = .sbss:0x801D42A4; // type:object size:0x4 data:4byte
lbl_801D42A8 = .sbss:0x801D42A8; // type:object size:0x2 data:2byte
lbl_801D42AA = .sbss:0x801D42AA; // type:object size:0x1 data:byte
lbl_801D42AB = .sbss:0x801D42AB; // type:object size:0x1 data:byte
lbl_801D42AC = .sbss:0x801D42AC; // type:object size:0x4 data:4byte
gameStatCopy = .sbss:0x801D4288; // type:object size:0x4 scope:local data:4byte
systemCopy = .sbss:0x801D428C; // type:object size:0x4 scope:local data:4byte
playerCopy = .sbss:0x801D4290; // type:object size:0x4 scope:local data:4byte
playerCfgCopy = .sbss:0x801D4294; // type:object size:0x4 scope:local data:4byte
tutorialProcess = .sbss:0x801D4298; // type:object size:0x4 scope:local data:4byte
boardTutorialF = .sbss:0x801D429C; // type:object size:0x1 data:byte
hostMdl = .sbss:0x801D429E; // type:object size:0x2 scope:local data:2byte
boardTutorialUseItem = .sbss:0x801D42A0; // type:object size:0x1 data:byte
boardTutorialBlockF = .sbss:0x801D42A1; // type:object size:0x1 data:byte
boardTutorialBlockItem = .sbss:0x801D42A2; // type:object size:0x1 data:byte
boardTutorialBlockPos = .sbss:0x801D42A4; // type:object size:0x4 data:4byte
boardTutorialDirInputTime = .sbss:0x801D42A8; // type:object size:0x2 data:2byte
boardTutorialDirInputY = .sbss:0x801D42AA; // type:object size:0x1 data:byte
boardTutorialDirInputX = .sbss:0x801D42AB; // type:object size:0x1 data:byte
tutorialHook = .sbss:0x801D42AC; // type:object size:0x4 scope:local data:4byte
BootInfo = .sbss:0x801D42B0; // type:object size:0x4 scope:local data:4byte
BI2DebugFlag = .sbss:0x801D42B4; // type:object size:0x4 scope:local data:4byte
BI2DebugFlagHolder = .sbss:0x801D42B8; // type:object size:0x4 scope:local data:4byte

View file

@ -60,14 +60,14 @@ void fn_800884F4(s32);
void fn_800A4C88(void);
void fn_800A6B10(void);
void fn_8008853C(s32);
void fn_800B42B4(s32);
void BoardTutorialItemSet(s32);
void fn_80082AAC(s32);
void fn_800B4264(s32, s32, s32);
void BoardTutorialDirInputSet(s32, s32, s32);
void BoardSpaceStarSetIndex(s32);
void BoardModelRotYSet(s32, f32);
f32 BoardModelRotYGet(s32);
void BoardModelLayerSet(s16, s32);
void fn_800B42BC(s16);
void BoardTutorialHostSet(s16);
s32 BoardModelIDGet(s16);
void BoardInit(void*, void*);
void BoardModelScaleSetV(s32, Vec*);
@ -91,8 +91,8 @@ void fn_80077AAC(s16);
void fn_8007A83C(s16);
void fn_80083EDC(s16);
void fn_800A4F6C(s16);
void fn_800B3FD8(void*);
void fn_800B4274(s32, s32);
void BoardTutorialHookSet(void*);
void BoardTutorialBlockSetPos(s32, s32);
void BoardCameraRotGet(Vec*);
void BoardModelScaleSet(s16, f32, f32, f32);
s32 BoardIsKill(void);

View file

@ -80,13 +80,13 @@ void fn_1_E0(void) {
lbl_1_bss_0->unk0 = 0;
lbl_1_bss_0->unk4 = 0;
lbl_1_bss_0->unk6 = 0;
fn_800B3FD8(&fn_1_1AAC);
BoardTutorialHookSet(&fn_1_1AAC);
fn_1_AEC();
fn_1_1D68();
lbl_1_bss_C = 0;
BoardSpaceInit(MAKE_DATA_NUM(DATADIR_W10, 0));
temp = BoardSpaceFlagSearch(0, 1);
fn_800B4274(temp, 1);
BoardTutorialBlockSetPos(temp, 1);
lbl_1_data_28 = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 1), NULL, 0);
fn_8006DDE8(lbl_1_data_28, -1.0f);
BoardModelPosSet(lbl_1_data_28, 0.0f, 0.0f, 0.0f);

View file

@ -15,7 +15,7 @@ void fn_1_AEC(void) {
lbl_1_bss_1C = 0;
lbl_1_bss_1E = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 15), &lbl_1_data_78, 0);
BoardModelMotionStart(lbl_1_bss_1E, 1, 0x40000001);
fn_800B42BC(lbl_1_bss_1E);
BoardTutorialHostSet(lbl_1_bss_1E);
BoardModelLayerSet(lbl_1_bss_1E, 6);
lbl_1_bss_18 = HuPrcCreate(fn_1_C20, 0x1FFF, 0x1800, 0);
}
@ -48,7 +48,7 @@ void fn_1_C20(void) {
while (1) {
if (BoardIsKill() != 0) {
BoardModelKill(lbl_1_bss_1E);
fn_800B42BC(-1);
BoardTutorialHostSet(-1);
HuPrcEnd();
}
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);

View file

@ -64,7 +64,7 @@ void fn_1_F6C(void) {
fn_1_1E3C(2, 0x122, 0x8C);
fn_1_BA0(0x2E000F);
fn_1_1FB0();
fn_800B4264(0, 0x50, 1);
BoardTutorialDirInputSet(0, 0x50, 1);
}
void fn_1_FB8(void) {
@ -72,14 +72,14 @@ void fn_1_FB8(void) {
fn_1_BA0(0x2E0010);
fn_1_1FB0();
fn_1_BA0(0x2E0011);
fn_800B4264(-0x50, 0, 1);
BoardTutorialDirInputSet(-0x50, 0, 1);
}
void fn_1_1010(void) {
fn_1_1E3C(4, 0x122, 0x8C);
fn_1_BA0(0x2E0012);
fn_1_1FB0();
fn_800B4264(0, 0x50, 1);
BoardTutorialDirInputSet(0, 0x50, 1);
}
void fn_1_105C(void) {
@ -94,7 +94,7 @@ void fn_1_1098(void) {
void fn_1_10C0(void) {
fn_1_BA0(0x2E0015);
fn_800B4264(-0x50, 0, 1);
BoardTutorialDirInputSet(-0x50, 0, 1);
}
void fn_1_10F8(void) {
@ -119,7 +119,7 @@ void fn_1_11A0(void) {
fn_1_BA0(0x2E0019);
temp = BoardSpaceFlagSearch(0, 1);
fn_800B4274(temp, 0);
BoardTutorialBlockSetPos(temp, 0);
}
void fn_1_11EC(void) {
@ -127,13 +127,13 @@ void fn_1_11EC(void) {
fn_1_BA0(0x2E001A);
temp = BoardSpaceFlagSearch(0, 1);
fn_800B4274(temp, 0);
fn_800B42B4(0);
BoardTutorialBlockSetPos(temp, 0);
BoardTutorialItemSet(0);
}
void fn_1_1240(void) {
fn_1_BA0(0x2E001B);
fn_800B4264(0x50, 0, 1);
BoardTutorialDirInputSet(0x50, 0, 1);
}
void fn_1_1278(void) {
@ -143,7 +143,7 @@ void fn_1_1278(void) {
void fn_1_12A0(void) {
fn_1_BA0(0x2E001D);
fn_80062B74(2, 1);
fn_800B42B4(1);
BoardTutorialItemSet(1);
}
void fn_1_12DC(void) {
@ -230,7 +230,7 @@ void fn_1_13A4(void) {
fn_80070EE8(0, 0x1F3);
BoardKill();
}
fn_800B3FD8(NULL);
BoardTutorialHookSet(NULL);
while (1) {
HuPrcVSleep();
}

View file

@ -154,7 +154,7 @@ void fn_1_1984(void) {
OSReport(lbl_1_data_98);
fn_80070EE8(0, 0x1F3);
BoardKill();
fn_800B3FD8(NULL);
BoardTutorialHookSet(NULL);
}
}
}
@ -183,7 +183,7 @@ int fn_1_1AAC(s16 arg0, s32 arg1) {
OSReport(lbl_1_data_98);
fn_80070EE8(0, 0x1F3);
BoardKill();
fn_800B3FD8(NULL);
BoardTutorialHookSet(NULL);
}
}
}

View file

@ -3,7 +3,7 @@
#include "game/memory.h"
#include "game/flag.h"
extern s8 lbl_801D429C;
extern s8 boardTutorialF;
s16 HuSysVWaitGet(s16 old);
@ -111,7 +111,7 @@ void WipeExecAlways(void)
void WipeCreate(s16 mode, s16 type, s16 duration)
{
WipeState *wipe;
if(_CheckFlag(FLAG_ID_MAKE(1, 11)) && lbl_801D429C) {
if(_CheckFlag(FLAG_ID_MAKE(1, 11)) && boardTutorialF) {
return;
}
wipe = &wipeData;