Merge pull request #345 from gamemasterplc/main
Decompile w02dll/roulette.c
This commit is contained in:
commit
4eb62f1b0f
4 changed files with 469 additions and 239 deletions
|
|
@ -302,67 +302,67 @@ lbl_1_rodata_3F8 = .rodata:0x000003F8; // type:object size:0x4 data:float
|
||||||
lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float
|
lbl_1_rodata_3FC = .rodata:0x000003FC; // type:object size:0x4 data:float
|
||||||
lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float
|
lbl_1_rodata_400 = .rodata:0x00000400; // type:object size:0x4 data:float
|
||||||
lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float
|
lbl_1_rodata_404 = .rodata:0x00000404; // type:object size:0x4 data:float
|
||||||
lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 data:float
|
lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 data:float
|
lbl_1_rodata_40C = .rodata:0x0000040C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 data:float
|
lbl_1_rodata_410 = .rodata:0x00000410; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 data:float
|
lbl_1_rodata_414 = .rodata:0x00000414; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 data:float
|
lbl_1_rodata_418 = .rodata:0x00000418; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 data:float
|
lbl_1_rodata_41C = .rodata:0x0000041C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float
|
lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float
|
lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float
|
lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float
|
lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float
|
lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float
|
lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float
|
lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float
|
lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float
|
lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float
|
lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float
|
lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 data:double
|
lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 data:double
|
lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 data:float
|
lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 data:float
|
lbl_1_rodata_464 = .rodata:0x00000464; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float
|
lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 data:float
|
lbl_1_rodata_46C = .rodata:0x0000046C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 data:float
|
lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 data:float
|
lbl_1_rodata_474 = .rodata:0x00000474; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float
|
lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float
|
lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 data:double
|
lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 data:double
|
lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float
|
lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float
|
lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 data:double
|
lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 data:double
|
lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float
|
lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float
|
lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float
|
lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 data:double
|
lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float
|
lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float
|
lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float
|
lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float
|
lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 data:double
|
lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 data:float
|
lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 data:float
|
lbl_1_rodata_4DC = .rodata:0x000004DC; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0xC data:4byte
|
lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0xC scope:local data:4byte
|
||||||
lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 data:float
|
lbl_1_rodata_4EC = .rodata:0x000004EC; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 data:float
|
lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 data:float
|
lbl_1_rodata_4F4 = .rodata:0x000004F4; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 data:float
|
lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 data:float
|
lbl_1_rodata_4FC = .rodata:0x000004FC; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float
|
lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float
|
lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float
|
lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float
|
lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float
|
lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float
|
lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 data:double
|
lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x8 scope:local data:double
|
||||||
lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float
|
lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 data:float
|
lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 data:float
|
lbl_1_rodata_528 = .rodata:0x00000528; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 data:float
|
lbl_1_rodata_52C = .rodata:0x0000052C; // type:object size:0x4 scope:local data:float
|
||||||
lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 scope:local
|
lbl_1_data_0 = .data:0x00000000; // type:object size:0x280 scope:local
|
||||||
lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte
|
lbl_1_data_280 = .data:0x00000280; // type:object size:0x2 data:2byte
|
||||||
lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte
|
lbl_1_data_282 = .data:0x00000282; // type:object size:0x2 data:2byte
|
||||||
|
|
@ -393,7 +393,7 @@ lbl_1_data_480 = .data:0x00000480; // type:object size:0x10
|
||||||
lbl_1_data_490 = .data:0x00000490; // type:object size:0x20
|
lbl_1_data_490 = .data:0x00000490; // type:object size:0x20
|
||||||
lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x20
|
lbl_1_data_4B0 = .data:0x000004B0; // type:object size:0x20
|
||||||
lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0x40
|
lbl_1_data_4D0 = .data:0x000004D0; // type:object size:0x40
|
||||||
lbl_1_data_510 = .data:0x00000510; // type:object size:0x14 data:string
|
lbl_1_data_510 = .data:0x00000510; // type:object size:0x14 scope:local data:string
|
||||||
lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte
|
lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte
|
||||||
lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte
|
lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x4 data:4byte
|
||||||
lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte
|
lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x8 data:2byte
|
||||||
|
|
|
||||||
|
|
@ -1489,7 +1489,7 @@ config.libs = [
|
||||||
Object(NonMatching, "REL/w02Dll/mg_coin.c"),
|
Object(NonMatching, "REL/w02Dll/mg_coin.c"),
|
||||||
Object(NonMatching, "REL/w02Dll/mg_item.c"),
|
Object(NonMatching, "REL/w02Dll/mg_item.c"),
|
||||||
Object(NonMatching, "REL/w02Dll/shuffleboard.c"),
|
Object(NonMatching, "REL/w02Dll/shuffleboard.c"),
|
||||||
Object(NonMatching, "REL/w02Dll/roulette.c"),
|
Object(Matching, "REL/w02Dll/roulette.c"),
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
Rel(
|
Rel(
|
||||||
|
|
|
||||||
|
|
@ -80,6 +80,6 @@ extern void fn_1_BC1C();
|
||||||
extern s32 fn_1_BE88();
|
extern s32 fn_1_BE88();
|
||||||
extern s32 fn_1_C108(s32);
|
extern s32 fn_1_C108(s32);
|
||||||
extern void fn_1_CD04(s32);
|
extern void fn_1_CD04(s32);
|
||||||
extern void fn_1_E41C();
|
void fn_1_E41C(void);
|
||||||
|
|
||||||
#endif //W02DLL
|
#endif //W02DLL
|
||||||
|
|
@ -1,80 +1,30 @@
|
||||||
#include "REL/w02Dll.h"
|
#include "REL/w02Dll.h"
|
||||||
#include "game/audio.h"
|
#include "game/audio.h"
|
||||||
|
#include "game/frand.h"
|
||||||
|
#include "game/chrman.h"
|
||||||
|
#include "game/pad.h"
|
||||||
|
|
||||||
#define ROULETTE_CHOICE_YES 0
|
#include "ext_math.h"
|
||||||
#define ROULETTE_CHOICE_NO 1
|
|
||||||
#define ROULETTE_CHOICE_MAP 2
|
|
||||||
|
|
||||||
#define BRIBE_CHOICE_20 0
|
|
||||||
#define BRIBE_CHOICE_10 1
|
|
||||||
#define BRIBE_CHOICE_5 2
|
|
||||||
#define BRIBE_CHOICE_NVM 3
|
|
||||||
#define BRIBE_CHOICE_INVALID -1
|
|
||||||
|
|
||||||
/* RODATA */
|
|
||||||
extern f32 lbl_1_rodata_408;
|
|
||||||
extern f32 lbl_1_rodata_40C;
|
|
||||||
extern f32 lbl_1_rodata_410;
|
|
||||||
extern f32 lbl_1_rodata_414;
|
|
||||||
extern f32 lbl_1_rodata_418;
|
|
||||||
extern f32 lbl_1_rodata_41C;
|
|
||||||
extern f32 lbl_1_rodata_420;
|
|
||||||
extern f32 lbl_1_rodata_424;
|
|
||||||
extern f32 lbl_1_rodata_428;
|
|
||||||
extern f32 lbl_1_rodata_42C;
|
|
||||||
extern f32 lbl_1_rodata_430;
|
|
||||||
extern f32 lbl_1_rodata_434;
|
|
||||||
extern f32 lbl_1_rodata_438;
|
|
||||||
extern f32 lbl_1_rodata_43C;
|
|
||||||
extern f32 lbl_1_rodata_440;
|
|
||||||
extern f32 lbl_1_rodata_444;
|
|
||||||
extern f32 lbl_1_rodata_448;
|
|
||||||
extern f64 lbl_1_rodata_450;
|
|
||||||
extern f64 lbl_1_rodata_458;
|
|
||||||
extern f32 lbl_1_rodata_460;
|
|
||||||
extern f32 lbl_1_rodata_464;
|
|
||||||
extern f32 lbl_1_rodata_468;
|
|
||||||
extern f32 lbl_1_rodata_46C;
|
|
||||||
extern f32 lbl_1_rodata_470;
|
|
||||||
extern f32 lbl_1_rodata_474;
|
|
||||||
extern f32 lbl_1_rodata_478;
|
|
||||||
extern f32 lbl_1_rodata_47C;
|
|
||||||
extern f64 lbl_1_rodata_480;
|
|
||||||
extern f64 lbl_1_rodata_488;
|
|
||||||
extern f32 lbl_1_rodata_490;
|
|
||||||
extern f32 lbl_1_rodata_494;
|
|
||||||
extern f64 lbl_1_rodata_498;
|
|
||||||
extern f64 lbl_1_rodata_4A0;
|
|
||||||
extern f32 lbl_1_rodata_4A8;
|
|
||||||
extern f32 lbl_1_rodata_4AC;
|
|
||||||
extern f32 lbl_1_rodata_4B0;
|
|
||||||
extern f32 lbl_1_rodata_4B8;
|
|
||||||
extern f32 lbl_1_rodata_4C0;
|
|
||||||
extern f32 lbl_1_rodata_4C4;
|
|
||||||
extern f32 lbl_1_rodata_4C8;
|
|
||||||
extern f32 lbl_1_rodata_4CC;
|
|
||||||
extern f64 lbl_1_rodata_4D0;
|
|
||||||
extern f32 lbl_1_rodata_4D8;
|
|
||||||
extern f32 lbl_1_rodata_4DC;
|
|
||||||
|
|
||||||
/* DATA */
|
/* DATA */
|
||||||
extern s32 lbl_1_data_4D0[];
|
s32 lbl_1_data_4D0[] = {
|
||||||
|
-1, 2, 2, 2,
|
||||||
|
-1, 1, 1, 1,
|
||||||
|
-1, 0, 0, 0,
|
||||||
|
-1, 3, 3, 3
|
||||||
|
};
|
||||||
|
|
||||||
/* BSS */
|
Process *lbl_1_bss_38C;
|
||||||
extern s32 lbl_1_bss_38C;
|
s16 lbl_1_bss_388;
|
||||||
extern s16 lbl_1_bss_388;
|
s32 lbl_1_bss_384;
|
||||||
extern s32 lbl_1_bss_384;
|
float lbl_1_bss_380;
|
||||||
extern f32 lbl_1_bss_380;
|
|
||||||
|
|
||||||
//Function Externs
|
|
||||||
extern s16 BoardBowserSuitModelGet();
|
|
||||||
extern s16 BoardBowserSuitPlayerModelGet();
|
|
||||||
extern void BoardComKeySetDown();
|
|
||||||
extern void BoardComKeySetUp();
|
|
||||||
extern void omVibrate(s16 player, s16 duration, s16 off, s16 on);
|
|
||||||
extern u32 frand();
|
|
||||||
|
|
||||||
//Local Functions
|
//Local Functions
|
||||||
|
void fn_1_D3AC(void);
|
||||||
|
s32 fn_1_D8C4(void);
|
||||||
|
void fn_1_DF48(void);
|
||||||
|
|
||||||
s32 fn_1_E2AC(void);
|
s32 fn_1_E2AC(void);
|
||||||
void fn_1_E310(f32);
|
void fn_1_E310(f32);
|
||||||
|
|
||||||
|
|
@ -90,13 +40,13 @@ void fn_1_BC1C(void) {
|
||||||
Point3d sp8;
|
Point3d sp8;
|
||||||
|
|
||||||
BoardModelPosGet(lbl_1_bss_30[15], &sp8);
|
BoardModelPosGet(lbl_1_bss_30[15], &sp8);
|
||||||
sp8.z -= lbl_1_rodata_408;
|
sp8.z -= 90.0f;
|
||||||
sp8.y += lbl_1_rodata_40C;
|
sp8.y += 50.0f;
|
||||||
BoardModelPosSetV(lbl_1_bss_30[6], &sp8);
|
BoardModelPosSetV(lbl_1_bss_30[6], &sp8);
|
||||||
BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002);
|
BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002);
|
||||||
BoardModelMotionTimeSet(lbl_1_bss_30[5], lbl_1_rodata_410);
|
BoardModelMotionTimeSet(lbl_1_bss_30[5], 0.0f);
|
||||||
BoardModelRotGet(lbl_1_bss_30[15], &sp8);
|
BoardModelRotGet(lbl_1_bss_30[15], &sp8);
|
||||||
sp8.y = lbl_1_rodata_410;
|
sp8.y = 0.0f;
|
||||||
BoardModelRotSetV(lbl_1_bss_30[15], &sp8);
|
BoardModelRotSetV(lbl_1_bss_30[15], &sp8);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -111,14 +61,14 @@ void fn_1_BCFC(void) {
|
||||||
while (GWPlayer[lbl_1_bss_388].moving) {
|
while (GWPlayer[lbl_1_bss_388].moving) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardRotateDiceNumbers((s32) lbl_1_bss_388);
|
BoardPlayerIdleSet(lbl_1_bss_388);
|
||||||
BoardCameraViewSet(2);
|
BoardCameraViewSet(2);
|
||||||
BoardCameraMotionWait();
|
BoardCameraMotionWait();
|
||||||
BoardPlayerMotBlendSet((s32) lbl_1_bss_388, 0x5A, 0xF);
|
BoardPlayerMotBlendSet((s32) lbl_1_bss_388, 0x5A, 0xF);
|
||||||
while (BoardPlayerMotBlendCheck((s32) lbl_1_bss_388) == 0) {
|
while (BoardPlayerMotBlendCheck((s32) lbl_1_bss_388) == 0) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardModelRotYSet(lbl_1_bss_30[15], lbl_1_rodata_414);
|
BoardModelRotYSet(lbl_1_bss_30[15], -90.0f);
|
||||||
fn_1_121C(0x130000);
|
fn_1_121C(0x130000);
|
||||||
HuAudFXPlay(0x44);
|
HuAudFXPlay(0x44);
|
||||||
temp_r29 = fn_1_BE88();
|
temp_r29 = fn_1_BE88();
|
||||||
|
|
@ -160,7 +110,7 @@ s32 fn_1_BE88(void) {
|
||||||
BoardWinCreateChoice(2, 0x13001DU, 4, 0);
|
BoardWinCreateChoice(2, 0x13001DU, 4, 0);
|
||||||
/* COM has 50% to bribe goomba */
|
/* COM has 50% to bribe goomba */
|
||||||
if (GWPlayer[lbl_1_bss_388].com) {
|
if (GWPlayer[lbl_1_bss_388].com) {
|
||||||
if (frand() & 1) {
|
if (frandBool()) {
|
||||||
BoardComKeySetRight();
|
BoardComKeySetRight();
|
||||||
} else {
|
} else {
|
||||||
BoardComKeySetLeft();
|
BoardComKeySetLeft();
|
||||||
|
|
@ -170,7 +120,7 @@ s32 fn_1_BE88(void) {
|
||||||
BoardWinKill();
|
BoardWinKill();
|
||||||
rouletteChoice = BoardWinChoiceGet();
|
rouletteChoice = BoardWinChoiceGet();
|
||||||
// If chose to play roulette
|
// If chose to play roulette
|
||||||
if (rouletteChoice == ROULETTE_CHOICE_YES) {
|
if (rouletteChoice == 0) {
|
||||||
BoardWinCreateChoice(1, 0x130003U, 4, 0);
|
BoardWinCreateChoice(1, 0x130003U, 4, 0);
|
||||||
playerCoinRegion = 3;
|
playerCoinRegion = 3;
|
||||||
if (coinAmount < 0x14) {
|
if (coinAmount < 0x14) {
|
||||||
|
|
@ -186,7 +136,7 @@ s32 fn_1_BE88(void) {
|
||||||
if (GWPlayer[lbl_1_bss_388].com) {
|
if (GWPlayer[lbl_1_bss_388].com) {
|
||||||
if (playerCoinRegion < 2) {
|
if (playerCoinRegion < 2) {
|
||||||
BoardComKeySetUp();
|
BoardComKeySetUp();
|
||||||
} else if (frand() & 1) {
|
} else if (frandBool()) {
|
||||||
BoardComKeySetUp();
|
BoardComKeySetUp();
|
||||||
} else {
|
} else {
|
||||||
BoardComKeySetDown();
|
BoardComKeySetDown();
|
||||||
|
|
@ -195,24 +145,24 @@ s32 fn_1_BE88(void) {
|
||||||
BoardWinWait();
|
BoardWinWait();
|
||||||
BoardWinKill();
|
BoardWinKill();
|
||||||
bribeChoice = BoardWinChoiceGet();
|
bribeChoice = BoardWinChoiceGet();
|
||||||
if (bribeChoice == BRIBE_CHOICE_INVALID ||
|
if (bribeChoice == -1 ||
|
||||||
bribeChoice == BRIBE_CHOICE_NVM) {
|
bribeChoice == 3) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Coin amount is now the bribe amount in coins
|
// Coin amount is now the bribe amount in coins
|
||||||
switch (bribeChoice) {
|
switch (bribeChoice) {
|
||||||
case BRIBE_CHOICE_20:
|
case 0:
|
||||||
mesg = 0x130004;
|
mesg = 0x130004;
|
||||||
coinAmount = 0x14;
|
coinAmount = 0x14;
|
||||||
var_r30 = 0x5A; // 90%
|
var_r30 = 0x5A; // 90%
|
||||||
break;
|
break;
|
||||||
case BRIBE_CHOICE_10:
|
case 1:
|
||||||
mesg = 0x130005;
|
mesg = 0x130005;
|
||||||
coinAmount = 0xA;
|
coinAmount = 0xA;
|
||||||
var_r30 = 0x3C; // 60%
|
var_r30 = 0x3C; // 60%
|
||||||
break;
|
break;
|
||||||
case BRIBE_CHOICE_5:
|
case 2:
|
||||||
mesg = 0x130006;
|
mesg = 0x130006;
|
||||||
coinAmount = 5;
|
coinAmount = 5;
|
||||||
var_r30 = 0x1E; // 30%
|
var_r30 = 0x1E; // 30%
|
||||||
|
|
@ -228,22 +178,21 @@ s32 fn_1_BE88(void) {
|
||||||
}
|
}
|
||||||
HuAudFXPlay(0xF);
|
HuAudFXPlay(0xF);
|
||||||
// If chose to view map
|
// If chose to view map
|
||||||
} else if (rouletteChoice == ROULETTE_CHOICE_MAP) {
|
} else if (rouletteChoice == 2) {
|
||||||
BoardViewMapExec(lbl_1_bss_388);
|
BoardViewMapExec(lbl_1_bss_388);
|
||||||
}
|
}
|
||||||
} while (rouletteChoice == ROULETTE_CHOICE_MAP); // While viewing map
|
} while (rouletteChoice == 2); // While viewing map
|
||||||
if (var_r30 == -1) {
|
if (var_r30 == -1) {
|
||||||
fn_1_121C(0x130007);
|
fn_1_121C(0x130007);
|
||||||
}
|
}
|
||||||
return var_r30;
|
return var_r30;
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://decomp.me/scratch/rctvo
|
|
||||||
s32 fn_1_C108(s32 arg0) {
|
s32 fn_1_C108(s32 arg0) {
|
||||||
Vec sp34;
|
Vec sp34;
|
||||||
Vec sp28;
|
Vec sp28;
|
||||||
Vec sp1C;
|
Vec sp1C;
|
||||||
UnkPoint spC;
|
Vec sp10;
|
||||||
|
|
||||||
|
|
||||||
f32 var_f27;
|
f32 var_f27;
|
||||||
|
|
@ -273,7 +222,7 @@ s32 fn_1_C108(s32 arg0) {
|
||||||
var_r29 = frandmod(0x10U);
|
var_r29 = frandmod(0x10U);
|
||||||
var_r27 = frandmod(4U);
|
var_r27 = frandmod(4U);
|
||||||
}
|
}
|
||||||
BoardModelPosGet(lbl_1_bss_30[4], &spC.point);
|
BoardModelPosGet(lbl_1_bss_30[4], &sp10);
|
||||||
BoardCameraViewSet(1);
|
BoardCameraViewSet(1);
|
||||||
BoardCameraMotionWait();
|
BoardCameraMotionWait();
|
||||||
var_r26 = BoardSpaceFlagSearch(0, 0x800U);
|
var_r26 = BoardSpaceFlagSearch(0, 0x800U);
|
||||||
|
|
@ -282,32 +231,32 @@ s32 fn_1_C108(s32 arg0) {
|
||||||
BoardModelRotGet(lbl_1_bss_30[15], &sp34);
|
BoardModelRotGet(lbl_1_bss_30[15], &sp34);
|
||||||
|
|
||||||
for (i = 0; i < 0xF; i++) {
|
for (i = 0; i < 0xF; i++) {
|
||||||
sp34.y -= lbl_1_rodata_418;
|
sp34.y -= 6.0f;
|
||||||
BoardModelRotSetV(lbl_1_bss_30[15], &sp34);
|
BoardModelRotSetV(lbl_1_bss_30[15], &sp34);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
|
|
||||||
sp34.y = lbl_1_rodata_41C;
|
sp34.y = 180.0f;
|
||||||
BoardModelRotSetV(lbl_1_bss_30[15], &sp34);
|
BoardModelRotSetV(lbl_1_bss_30[15], &sp34);
|
||||||
BoardCameraMotionWait();
|
BoardCameraMotionWait();
|
||||||
lbl_1_bss_384 = HuAudFXPlay(0x41D);
|
lbl_1_bss_384 = HuAudFXPlay(0x41D);
|
||||||
var_r28 = -0x1FFF;
|
var_r28 = -0x1FFF;
|
||||||
var_f29 = lbl_1_rodata_410;
|
var_f29 = 0.0f;
|
||||||
for (i = 0; i < 0x3C; i++) {
|
for (i = 0; i < 0x3C; i++) {
|
||||||
var_f29 -= lbl_1_rodata_420;
|
var_f29 -= 0.375f;
|
||||||
fn_1_E310(var_f29);
|
fn_1_E310(var_f29);
|
||||||
var_r28 = (s16) ((f32) (s16) var_r28 + lbl_1_rodata_424);
|
var_r28 += 136.51666f;
|
||||||
HuAudFXPitchSet(lbl_1_bss_384, var_r28);
|
HuAudFXPitchSet(lbl_1_bss_384, var_r28);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
|
|
||||||
var_f29 = lbl_1_rodata_428;
|
var_f29 = -22.5f;
|
||||||
HuAudFXPitchSet(lbl_1_bss_384, 0);
|
HuAudFXPitchSet(lbl_1_bss_384, 0);
|
||||||
BoardModelMotionStart(lbl_1_bss_30[15], 2, 0x40000001);
|
BoardModelMotionStart(lbl_1_bss_30[15], 2, 0x40000001);
|
||||||
BoardModelPosGet(lbl_1_bss_30[15], &sp34);
|
BoardModelPosGet(lbl_1_bss_30[15], &sp34);
|
||||||
|
|
||||||
for (i = 0; i < 0x1E; i++) {
|
for (i = 0; i < 0x1E; i++) {
|
||||||
sp34.z += lbl_1_rodata_42C;
|
sp34.z += 2.1f;
|
||||||
BoardModelPosSetV(lbl_1_bss_30[15], &sp34);
|
BoardModelPosSetV(lbl_1_bss_30[15], &sp34);
|
||||||
fn_1_E310(var_f29);
|
fn_1_E310(var_f29);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
|
|
@ -319,69 +268,57 @@ s32 fn_1_C108(s32 arg0) {
|
||||||
var_r29 -= 1;
|
var_r29 -= 1;
|
||||||
}
|
}
|
||||||
BoardModelMotionStart(lbl_1_bss_30[15], 3, 0x40000001);
|
BoardModelMotionStart(lbl_1_bss_30[15], 3, 0x40000001);
|
||||||
BoardModelMotionSpeedSet(lbl_1_bss_30[15], lbl_1_rodata_430);
|
BoardModelMotionSpeedSet(lbl_1_bss_30[15], 4.0f);
|
||||||
|
|
||||||
for (i = 0; i < 0xA; i++) {
|
for (i = 0; i < 0xA; i++) {
|
||||||
sp34.z -= lbl_1_rodata_434;
|
sp34.z -= 6.2999997f;
|
||||||
BoardModelPosSetV(lbl_1_bss_30[15], &sp34);
|
BoardModelPosSetV(lbl_1_bss_30[15], &sp34);
|
||||||
fn_1_E310(var_f29);
|
fn_1_E310(var_f29);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardModelMotionStart(lbl_1_bss_30[15], 1, 0x40000001);
|
BoardModelMotionStart(lbl_1_bss_30[15], 1, 0x40000001);
|
||||||
BoardModelMotionSpeedSet(lbl_1_bss_30[15], lbl_1_rodata_438);
|
BoardModelMotionSpeedSet(lbl_1_bss_30[15], 1.0f);
|
||||||
HuAudFXPlay(0x41F);
|
HuAudFXPlay(0x41F);
|
||||||
HuAudFXPlay(0x42D);
|
HuAudFXPlay(0x42D);
|
||||||
omVibrate(lbl_1_bss_388, 0xC, 6, 6);
|
omVibrate(lbl_1_bss_388, 0xC, 6, 6);
|
||||||
var_f31 = lbl_1_rodata_410;
|
var_f31 = 0.0f;
|
||||||
var_f27 = lbl_1_rodata_43C;
|
var_f27 = 16.0f;
|
||||||
sp1C.x = lbl_1_rodata_410;
|
sp1C.x = 0.0f;
|
||||||
sp1C.z = lbl_1_rodata_440;
|
sp1C.z = -50.0f;
|
||||||
|
|
||||||
// Roulette motion and ball ?
|
// Roulette motion and ball ?
|
||||||
while(TRUE) {
|
while(TRUE) {
|
||||||
sp1C.y = var_f27 - (lbl_1_rodata_444 * (lbl_1_rodata_448 * (var_f31 * var_f31)));
|
sp1C.y = var_f27 - (0.55833334f * (0.25f * (var_f31 * var_f31)));
|
||||||
var_f31 += lbl_1_rodata_438;
|
var_f31 += 1.0f;
|
||||||
BoardModelPosGet(lbl_1_bss_30[6], &sp28);
|
BoardModelPosGet(lbl_1_bss_30[6], &sp28);
|
||||||
PSVECAdd(&sp28, &sp1C, &sp28);
|
PSVECAdd(&sp28, &sp1C, &sp28);
|
||||||
var_f28 = (sp28.x - spC.point.x) * (sp28.x - spC.point.x) + ((sp28.z - spC.point.z) * (sp28.z - spC.point.z));
|
var_f25 = VECDistanceXZ(&sp28, &sp10);
|
||||||
if (var_f28 > lbl_1_rodata_410) {
|
if (var_f25 >= 430.0f) {
|
||||||
var_f30 = __frsqrte(var_f28);
|
if (sp28.y <= (55.0f + sp10.y)) {
|
||||||
var_f30 = lbl_1_rodata_450 * var_f30 * (lbl_1_rodata_458 - ((f64) var_f28 * (var_f30 * var_f30)));
|
PSVECSubtract(&sp28, &sp10, (Vec* ) &sp1C);
|
||||||
var_f30 = lbl_1_rodata_450 * var_f30 * (lbl_1_rodata_458 - ((f64) var_f28 * (var_f30 * var_f30)));
|
|
||||||
var_f30 = (lbl_1_rodata_450 * var_f30 * (lbl_1_rodata_458 - (var_f28 * (var_f30 * var_f30))));
|
|
||||||
spC.unk00 = (var_f28 * var_f30);
|
|
||||||
var_f26 = spC.unk00;
|
|
||||||
} else {
|
|
||||||
var_f26 = var_f28;
|
|
||||||
}
|
|
||||||
|
|
||||||
var_f25 = var_f26;
|
|
||||||
if (var_f25 >= lbl_1_rodata_460) {
|
|
||||||
if (sp28.y <= (lbl_1_rodata_464 + spC.point.y)) {
|
|
||||||
PSVECSubtract(&sp28, &spC.point, (Vec* ) &sp1C);
|
|
||||||
PSVECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C);
|
PSVECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C);
|
||||||
sp1C.y = lbl_1_rodata_410;
|
sp1C.y = 0.0f;
|
||||||
PSVECScale((Vec* ) &sp1C, (Vec* ) &sp1C, lbl_1_rodata_468);
|
PSVECScale((Vec* ) &sp1C, (Vec* ) &sp1C, 429.0f);
|
||||||
PSVECAdd((Vec* ) &sp1C, &spC.point, (Vec* ) &sp1C);
|
PSVECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C);
|
||||||
sp28.x = sp1C.x;
|
sp28.x = sp1C.x;
|
||||||
sp28.z = sp1C.z;
|
sp28.z = sp1C.z;
|
||||||
sp1C.x = lbl_1_rodata_46C;
|
sp1C.x = -5.0f;
|
||||||
sp1C.z = lbl_1_rodata_470;
|
sp1C.z = 10.0f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sp28.y < spC.point.y) {
|
if (sp28.y < sp10.y) {
|
||||||
sp28.y = spC.point.y;
|
sp28.y = sp10.y;
|
||||||
if (var_r27 >= 3) {
|
if (var_r27 >= 3) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//var_f31 = (lbl_1_rodata_474 * (lbl_1_rodata_418 * (s32) (u8) frand()));
|
//var_f31 = ((1.0f/255.0f) * (6.0f * frand8()));
|
||||||
var_f27 = lbl_1_rodata_418 + (lbl_1_rodata_474 * (lbl_1_rodata_418 * (s32) (u8) frand()));
|
var_f27 = 6.0f + ((1.0f/255.0f) * (6.0f * frand8()));
|
||||||
var_f31 = lbl_1_rodata_438;
|
var_f31 = 1.0f;
|
||||||
var_r27 += 1;
|
var_r27 += 1;
|
||||||
//var_f31 = (lbl_1_rodata_474 * (lbl_1_rodata_47C * (s32) (u8) frand()));
|
//var_f31 = ((1.0f/255.0f) * (5.0f * frand8()));
|
||||||
sp1C.x = lbl_1_rodata_478 + (lbl_1_rodata_474 * (lbl_1_rodata_47C * (s32) (u8) frand()));
|
sp1C.x = 15.0f + ((1.0f/255.0f) * (5.0f * frand8()));
|
||||||
sp1C.z = lbl_1_rodata_478 + (lbl_1_rodata_474 * (lbl_1_rodata_47C * (s32) (u8) frand()));
|
sp1C.z = 15.0f + ((1.0f/255.0f) * (5.0f * frand8()));
|
||||||
HuAudFXPlay(0x41E);
|
HuAudFXPlay(0x41E);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -391,58 +328,58 @@ s32 fn_1_C108(s32 arg0) {
|
||||||
}
|
}
|
||||||
|
|
||||||
HuAudFXPlay(0x41E);
|
HuAudFXPlay(0x41E);
|
||||||
PSVECSubtract(&sp28, &spC.point, (Vec* ) &sp1C);
|
PSVECSubtract(&sp28, &sp10, (Vec* ) &sp1C);
|
||||||
PSVECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C);
|
PSVECNormalize((Vec* ) &sp1C, (Vec* ) &sp1C);
|
||||||
var_f31 = (f32) (lbl_1_rodata_480 * (atan2((f64) -sp1C.z, (f64) sp1C.x) / lbl_1_rodata_488));
|
var_f31 = atan2d(-sp1C.z, sp1C.x);
|
||||||
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
||||||
var_f31 = var_f31 - sp34.y;
|
var_f31 = var_f31 - sp34.y;
|
||||||
if (var_f31 < lbl_1_rodata_410) {
|
if (var_f31 < 0.0f) {
|
||||||
var_f31 += lbl_1_rodata_490;
|
var_f31 += 360.0f;
|
||||||
}
|
}
|
||||||
var_r30 = (s32) (var_f31 / lbl_1_rodata_494);
|
var_r30 = (s32) (var_f31 / 22.5f);
|
||||||
if (fmod(var_f31, lbl_1_rodata_498) > lbl_1_rodata_4A0) {
|
if (fmod(var_f31, 22.5) > 11.25) {
|
||||||
var_r30 += 1;
|
var_r30 += 1;
|
||||||
}
|
}
|
||||||
if (var_r30 >= 0x10) {
|
if (var_r30 >= 0x10) {
|
||||||
var_r30 -= 0x10;
|
var_r30 -= 0x10;
|
||||||
}
|
}
|
||||||
sp1C.y = lbl_1_rodata_410;
|
sp1C.y = 0.0f;
|
||||||
|
|
||||||
while(TRUE) {
|
while(TRUE) {
|
||||||
fn_1_E310(var_f29);
|
fn_1_E310(var_f29);
|
||||||
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
||||||
var_f31 = (lbl_1_rodata_494 * var_r30) + sp34.y; // TODO: Update rodata for asm change
|
var_f31 = (22.5f * var_r30) + sp34.y; // TODO: Update rodata for asm change
|
||||||
sp1C.x= cos((lbl_1_rodata_488 * var_f31) / lbl_1_rodata_480);
|
sp1C.x = cosd(var_f31);
|
||||||
sp1C.z = -sin((lbl_1_rodata_488 * var_f31) / lbl_1_rodata_480);
|
sp1C.z = -sind(var_f31);
|
||||||
PSVECScale(&sp1C, &sp1C, lbl_1_rodata_468);
|
PSVECScale(&sp1C, &sp1C, 429.0f);
|
||||||
PSVECAdd(&sp1C, &spC.point, &sp1C);
|
PSVECAdd(&sp1C, &sp10, &sp1C);
|
||||||
sp28.x = sp1C.x;
|
sp28.x = sp1C.x;
|
||||||
sp28.z = sp1C.z;
|
sp28.z = sp1C.z;
|
||||||
BoardModelPosSetV(lbl_1_bss_30[6], &sp28);
|
BoardModelPosSetV(lbl_1_bss_30[6], &sp28);
|
||||||
if (sp34.y >= lbl_1_rodata_4A8 &&
|
if (sp34.y >= 292.5f &&
|
||||||
sp34.y < lbl_1_rodata_4AC) {
|
sp34.y < 315.0f) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < 0x3C; i++) {
|
for (i = 0; i < 0x3C; i++) {
|
||||||
var_f29 += lbl_1_rodata_420;
|
var_f29 += 0.375f;
|
||||||
fn_1_E310(var_f29);
|
fn_1_E310(var_f29);
|
||||||
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
BoardModelRotGet(lbl_1_bss_30[4], &sp34);
|
||||||
var_f31 = (lbl_1_rodata_494 * (f32) var_r30) + sp34.y; // TODO: Update rodata for asm change
|
var_f31 = (22.5f * (f32) var_r30) + sp34.y;
|
||||||
sp1C.x = (f32) cos((lbl_1_rodata_488 * (f64) var_f31) / lbl_1_rodata_480);
|
sp1C.x = cosd(var_f31);
|
||||||
sp1C.z = (f32) -sin((lbl_1_rodata_488 * (f64) var_f31) / lbl_1_rodata_480);
|
sp1C.z = -sind(var_f31);
|
||||||
PSVECScale(&sp1C, &sp1C, lbl_1_rodata_468);
|
PSVECScale(&sp1C, &sp1C, 429.0f);
|
||||||
PSVECAdd((Vec* ) &sp1C, &spC.point, (Vec* ) &sp1C);
|
PSVECAdd((Vec* ) &sp1C, &sp10, (Vec* ) &sp1C);
|
||||||
sp28.x = sp1C.x;
|
sp28.x = sp1C.x;
|
||||||
sp28.z = sp1C.z;
|
sp28.z = sp1C.z;
|
||||||
BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28);
|
BoardModelPosSetV(lbl_1_bss_30[6], (Vec* ) &sp28);
|
||||||
var_r28 = var_r28 + lbl_1_rodata_4B0; // TODO: Weird extra rodata
|
var_r28 += -136.51666f;
|
||||||
HuAudFXPitchSet(lbl_1_bss_384, var_r28);
|
HuAudFXPitchSet(lbl_1_bss_384, var_r28);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardModelRotYSet(lbl_1_bss_30[4], lbl_1_rodata_410);
|
BoardModelRotYSet(lbl_1_bss_30[4], 0.0f);
|
||||||
HuAudFXStop(lbl_1_bss_384);
|
HuAudFXStop(lbl_1_bss_384);
|
||||||
return lbl_1_data_4D0[var_r30];
|
return lbl_1_data_4D0[var_r30];
|
||||||
}
|
}
|
||||||
|
|
@ -482,25 +419,25 @@ void fn_1_CD04(s32 arg0) {
|
||||||
BoardModelAttrReset(lbl_1_bss_30[5], 0x40000002);
|
BoardModelAttrReset(lbl_1_bss_30[5], 0x40000002);
|
||||||
HuAudFXPlay(0x420);
|
HuAudFXPlay(0x420);
|
||||||
if (BoardPlayerSizeGet(lbl_1_bss_388) == 2) {
|
if (BoardPlayerSizeGet(lbl_1_bss_388) == 2) {
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < lbl_1_rodata_4C0) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 25.0f) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardPlayerScaleGet(lbl_1_bss_388, &spC);
|
BoardPlayerScaleGet(lbl_1_bss_388, &spC);
|
||||||
|
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < lbl_1_rodata_4C4) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 30.0f) {
|
||||||
spC.x -= lbl_1_rodata_448;
|
spC.x -= 0.25f;
|
||||||
spC.y -= lbl_1_rodata_448;
|
spC.y -= 0.25f;
|
||||||
//temp_f1 = spC.z;
|
//temp_f1 = spC.z;
|
||||||
spC.z = spC.z - lbl_1_rodata_448;
|
spC.z = spC.z - 0.25f;
|
||||||
BoardPlayerScaleSetV(lbl_1_bss_388, &spC);
|
BoardPlayerScaleSetV(lbl_1_bss_388, &spC);
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
|
|
||||||
spC.x = spC.y = spC.z = lbl_1_rodata_4C8;
|
spC.x = spC.y = spC.z = 1.25f;
|
||||||
BoardPlayerScaleSetV(lbl_1_bss_388, &spC);
|
BoardPlayerScaleSetV(lbl_1_bss_388, &spC);
|
||||||
}
|
}
|
||||||
|
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < lbl_1_rodata_4C4) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 30.0f) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
if (GWPlayer[lbl_1_bss_388].bowser_suit) {
|
if (GWPlayer[lbl_1_bss_388].bowser_suit) {
|
||||||
|
|
@ -512,18 +449,18 @@ void fn_1_CD04(s32 arg0) {
|
||||||
HuAudFXPlay(0x421);
|
HuAudFXPlay(0x421);
|
||||||
omVibrate(lbl_1_bss_388, 0xC, 4, 2);
|
omVibrate(lbl_1_bss_388, 0xC, 4, 2);
|
||||||
|
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < lbl_1_rodata_4CC) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 60.0f) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
|
|
||||||
BoardModelPosGet(lbl_1_bss_30[5], &sp18);
|
BoardModelPosGet(lbl_1_bss_30[5], &sp18);
|
||||||
temp_f30 = (f32) ((lbl_1_rodata_480 * (atan2(sp24.x - sp18.x, sp24.z - sp18.z) / lbl_1_rodata_488)) / lbl_1_rodata_4D0);
|
temp_f30 = atan2d(sp24.x - sp18.x, sp24.z - sp18.z)/30;
|
||||||
|
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < lbl_1_rodata_408) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < 90.0f) {
|
||||||
BoardModelRotYSet(lbl_1_bss_30[5], temp_f30 + BoardModelRotYGet(lbl_1_bss_30[5]));
|
BoardModelRotYSet(lbl_1_bss_30[5], temp_f30 + BoardModelRotYGet(lbl_1_bss_30[5]));
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
BoardModelRotYSet(lbl_1_bss_30[5], (f32) (lbl_1_rodata_480 * (atan2(sp24.x - sp18.x, sp24.z - sp18.z) / lbl_1_rodata_488)));
|
BoardModelRotYSet(lbl_1_bss_30[5], atan2d(sp24.x - sp18.x, sp24.z - sp18.z));
|
||||||
omVibrate(lbl_1_bss_388, 0xC, 4, 2);
|
omVibrate(lbl_1_bss_388, 0xC, 4, 2);
|
||||||
if (GWPlayer[lbl_1_bss_388].bowser_suit) {
|
if (GWPlayer[lbl_1_bss_388].bowser_suit) {
|
||||||
|
|
||||||
|
|
@ -544,15 +481,15 @@ void fn_1_CD04(s32 arg0) {
|
||||||
|
|
||||||
if (var_r30 != (s32) temp_r31->link_cnt) {
|
if (var_r30 != (s32) temp_r31->link_cnt) {
|
||||||
BoardSpacePosGet(0, temp_r31->link[var_r30], &sp18);
|
BoardSpacePosGet(0, temp_r31->link[var_r30], &sp18);
|
||||||
BoardPlayerRotYSet(lbl_1_bss_388, (f32) (lbl_1_rodata_480 * (atan2(sp18.x - sp24.x, sp18.z - sp24.z) / lbl_1_rodata_488)));
|
BoardPlayerRotYSet(lbl_1_bss_388, atan2d(sp18.x - sp24.x, sp18.z - sp24.z));
|
||||||
}
|
}
|
||||||
if (BoardPlayerSizeGet(lbl_1_bss_388) == 2) {
|
if (BoardPlayerSizeGet(lbl_1_bss_388) == 2) {
|
||||||
var_f31 = spC.x;
|
var_f31 = spC.x;
|
||||||
|
|
||||||
while (var_f31 < lbl_1_rodata_4DC) {
|
while (var_f31 < 2.5f) {
|
||||||
var_f31 += lbl_1_rodata_4D8;
|
var_f31 += 0.104166664f;
|
||||||
if (var_f31 > lbl_1_rodata_4DC) {
|
if (var_f31 > 2.5f) {
|
||||||
var_f31 = lbl_1_rodata_4DC;
|
var_f31 = 2.5f;
|
||||||
}
|
}
|
||||||
spC.z = var_f31;
|
spC.z = var_f31;
|
||||||
spC.y = var_f31;
|
spC.y = var_f31;
|
||||||
|
|
@ -565,20 +502,313 @@ void fn_1_CD04(s32 arg0) {
|
||||||
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < BoardModelMotionMaxTimeGet(lbl_1_bss_30[5])) {
|
while (BoardModelMotionTimeGet(lbl_1_bss_30[5]) < BoardModelMotionMaxTimeGet(lbl_1_bss_30[5])) {
|
||||||
HuPrcVSleep();
|
HuPrcVSleep();
|
||||||
}
|
}
|
||||||
HuPrcCreate(&fn_1_DF48, 0x2004, 0x1000, 0);
|
HuPrcCreate(fn_1_DF48, 0x2004, 0x1000, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void fn_1_D3AC(void)
|
||||||
|
{
|
||||||
|
float temp_f31;
|
||||||
|
float temp_f30;
|
||||||
|
s32 temp_r31;
|
||||||
|
s32 temp_r30;
|
||||||
|
s16 sp38[20];
|
||||||
|
Vec sp2C;
|
||||||
|
Vec sp20;
|
||||||
|
Vec sp14;
|
||||||
|
float sp8[3] = { 1.0f, 0.3f, 2.5f };
|
||||||
|
fn_1_121C(0x130008);
|
||||||
|
BoardStatusShowSetAll(1);
|
||||||
|
BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15);
|
||||||
|
BoardPlayerPosGet(lbl_1_bss_388, &sp14);
|
||||||
|
for(temp_r31=0; temp_r31<20; temp_r31++) {
|
||||||
|
sp38[temp_r31] = BoardModelCreate(0x7000A, NULL, 1);
|
||||||
|
sp2C.x = (sp14.x-25.0f)+((1.0f/255.0f)*(frand8()*50.0f));
|
||||||
|
sp2C.y = (sp14.y+1200.0f)+(temp_r31*130.0f)+((1.0f/255.0f)*(frand8()*60.0f));
|
||||||
|
sp2C.z = (sp14.z-25.0f)+((1.0f/255.0f)*(frand8()*50.0f));
|
||||||
|
BoardModelPosSetV(sp38[temp_r31], &sp2C);
|
||||||
|
sp20.x = sp20.z = 0;
|
||||||
|
sp20.y = (1.0f/255.0f)*(frand8()*360.0f);
|
||||||
|
BoardModelRotSetV(sp38[temp_r31], &sp20);
|
||||||
|
}
|
||||||
|
temp_f31 = -4;
|
||||||
|
temp_r30 = 0;
|
||||||
|
temp_f30 = sp8[BoardPlayerSizeGet(lbl_1_bss_388)];
|
||||||
|
while(1) {
|
||||||
|
for(temp_r31=0; temp_r31<20; temp_r31++) {
|
||||||
|
if(temp_r31 < temp_r30) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
BoardModelPosGet(sp38[temp_r31], &sp2C);
|
||||||
|
BoardModelRotGet(sp38[temp_r31], &sp20);
|
||||||
|
sp2C.y += temp_f31;
|
||||||
|
sp20.y += 45.0f;
|
||||||
|
BoardModelPosSetV(sp38[temp_r31], &sp2C);
|
||||||
|
BoardModelRotSetV(sp38[temp_r31], &sp20);
|
||||||
|
if(sp2C.y <= sp14.y+(180.0f*temp_f30)) {
|
||||||
|
CharModelCoinEffectCreate(1, &sp2C);
|
||||||
|
BoardModelVisibilitySet(sp38[temp_r31], 0);
|
||||||
|
temp_r30++;
|
||||||
|
BoardPlayerCoinsAdd(lbl_1_bss_388, 1);
|
||||||
|
HuAudFXPlay(7);
|
||||||
|
omVibrate(lbl_1_bss_388, 12, 6, 6);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
temp_f31 *= 1.05f;
|
||||||
|
if(temp_f31 < -40.0f) {
|
||||||
|
temp_f31 = -40.0f;
|
||||||
|
}
|
||||||
|
if(temp_r30 == 20) {
|
||||||
|
BoardPlayerMotionShiftSet(lbl_1_bss_388, 7, 0, 10, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
while(!BoardPlayerMotionEndCheck(lbl_1_bss_388)) {
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
for(temp_r31=0; temp_r31<20; temp_r31++) {
|
||||||
|
BoardModelKill(sp38[temp_r31]);
|
||||||
|
}
|
||||||
|
HuPrcSleep(60);
|
||||||
|
BoardPlayerMotBlendSet(lbl_1_bss_388, 180, 15);
|
||||||
|
BoardStatusShowSetAll(0);
|
||||||
|
while(!BoardPlayerMotBlendCheck(lbl_1_bss_388)) {
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 fn_1_D8C4(void)
|
||||||
|
{
|
||||||
|
Vec sp40;
|
||||||
|
Vec sp34;
|
||||||
|
Vec sp28;
|
||||||
|
Vec sp1C;
|
||||||
|
s16 sp14[4];
|
||||||
|
float spC[2];
|
||||||
|
s32 sp8;
|
||||||
|
|
||||||
|
float temp_f31;
|
||||||
|
float temp_f30;
|
||||||
|
|
||||||
|
s32 temp_r31;
|
||||||
|
s16 temp_r30;
|
||||||
|
BoardSpace *temp_r29;
|
||||||
|
s32 temp_r28;
|
||||||
|
s16 temp_r27;
|
||||||
|
s16 temp_r26;
|
||||||
|
s32 temp_r25;
|
||||||
|
s16 temp_r24;
|
||||||
|
s16 temp_r23;
|
||||||
|
s16 temp_r22;
|
||||||
|
|
||||||
|
u32 temp_r21;
|
||||||
|
fn_1_121C(0x130009);
|
||||||
|
temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800));
|
||||||
|
BoardModelPosGet(lbl_1_bss_30[3], &sp40);
|
||||||
|
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||||
|
sp14[temp_r31] = BoardModelCreate(0x70000, NULL, 1);
|
||||||
|
BoardModelLayerSet(sp14[temp_r31], 2);
|
||||||
|
for(temp_r28=0; temp_r28<temp_r29->link_cnt; temp_r28++) {
|
||||||
|
temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1;
|
||||||
|
if(temp_r21 == temp_r31+2) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sp8 = BoardSpacePosGet(0, temp_r29->link[temp_r28], &sp28);
|
||||||
|
VECSubtract(&sp28, &sp40, &sp34);
|
||||||
|
BoardModelRotYSet(sp14[temp_r31], atan2d(sp34.x, sp34.z));
|
||||||
|
VECNormalize(&sp34, &sp34);
|
||||||
|
VECScale(&sp34, &sp34, 400);
|
||||||
|
VECAdd(&sp34, &sp40, &sp34);
|
||||||
|
sp34.y += 300.0f;
|
||||||
|
BoardModelPosSetV(sp14[temp_r31], &sp34);
|
||||||
|
sp1C.x = sp1C.y = sp1C.z = 3;
|
||||||
|
BoardModelScaleSetV(sp14[temp_r31], &sp1C);
|
||||||
|
}
|
||||||
|
temp_r25 = fn_1_E2AC();
|
||||||
|
HuWinMesMaxSizeGet(1, spC, 0x13001E);
|
||||||
|
temp_r30 = HuWinCreate(-10000, 356, spC[0], spC[1], 0);
|
||||||
|
HuWinMesSet(temp_r30, 0x13001E);
|
||||||
|
HuWinBGTPLvlSet(temp_r30, 0);
|
||||||
|
HuWinMesSpeedSet(temp_r30, 0);
|
||||||
|
temp_r23 = GWPlayer[lbl_1_bss_388].port;
|
||||||
|
temp_f30 = 0;
|
||||||
|
temp_r22 = frandmod(20)+20;
|
||||||
|
restart:
|
||||||
|
while(1) {
|
||||||
|
if(GWPlayer[lbl_1_bss_388].com) {
|
||||||
|
temp_r27 = 0;
|
||||||
|
temp_r26 = 0;
|
||||||
|
if(temp_r22) {
|
||||||
|
temp_r22--;
|
||||||
|
temp_r24 = 0;
|
||||||
|
} else {
|
||||||
|
temp_r24 = PAD_BUTTON_A;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
temp_r24 = HuPadBtnDown[temp_r23];
|
||||||
|
temp_r27 = HuPadStkX[temp_r23];
|
||||||
|
temp_r26 = HuPadStkY[temp_r23];
|
||||||
|
if(!(temp_r24 & PAD_TRIGGER_Z)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
HuAudFXPlay(1);
|
||||||
|
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||||
|
BoardModelVisibilitySet(sp14[temp_r31], 0);
|
||||||
|
}
|
||||||
|
HuWinDispOff(temp_r30);
|
||||||
|
BoardViewMapExec(lbl_1_bss_388);
|
||||||
|
HuWinDispOn(temp_r30);
|
||||||
|
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||||
|
BoardModelVisibilitySet(sp14[temp_r31], 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!(temp_r24 & PAD_BUTTON_A)) {
|
||||||
|
if(abs(temp_r27) < 10) {
|
||||||
|
temp_r27 = 0;
|
||||||
|
}
|
||||||
|
if(abs(temp_r26) < 10) {
|
||||||
|
temp_r26 = 0;
|
||||||
|
}
|
||||||
|
if(temp_r27 != 0 || temp_r26 != 0) {
|
||||||
|
temp_f31 = atan2d(-temp_r27, -temp_r26);
|
||||||
|
if(temp_f31 < 0.0f) {
|
||||||
|
temp_f31 += 360.0f;
|
||||||
|
}
|
||||||
|
temp_r31 = temp_f31/90.0f;
|
||||||
|
temp_f31 = fmod(temp_f31, 90.0);
|
||||||
|
if(temp_r31 != temp_r25 && temp_f31 >= 20.0f && temp_f31 <= 70.0f){
|
||||||
|
temp_f30 = 0;
|
||||||
|
temp_r25 = temp_r31;
|
||||||
|
HuAudFXPlay(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||||
|
if(temp_r31 == temp_r25) {
|
||||||
|
sp1C.x = sp1C.y = sp1C.z = sind(temp_f30)+3.0;
|
||||||
|
temp_f30 += 8.0f;
|
||||||
|
if(temp_f30 > 180.0f) {
|
||||||
|
temp_f30 -= 180.0f;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
sp1C.x = sp1C.y = sp1C.z = 3.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BoardModelScaleSetV(sp14[temp_r31], &sp1C);
|
||||||
|
}
|
||||||
|
HuPrcVSleep();
|
||||||
|
goto restart;
|
||||||
|
} else {
|
||||||
|
HuAudFXPlay(2);
|
||||||
|
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||||
|
BoardModelKill(sp14[temp_r31]);
|
||||||
|
}
|
||||||
|
HuWinKill(temp_r30);
|
||||||
|
return temp_r25;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void fn_1_DF48(void)
|
||||||
|
{
|
||||||
|
Vec sp14;
|
||||||
|
Vec sp8;
|
||||||
|
s32 temp_r31;
|
||||||
|
float temp_f31;
|
||||||
|
float temp_f30;
|
||||||
|
float temp_f29;
|
||||||
|
float temp_f28;
|
||||||
|
BoardModelMotionTimeSet(lbl_1_bss_30[5], 0);
|
||||||
|
BoardModelAttrSet(lbl_1_bss_30[5], 0x40000002);
|
||||||
|
temp_f31 = BoardModelRotYGet(lbl_1_bss_30[5]);
|
||||||
|
temp_f29 = -temp_f31/20.0f;
|
||||||
|
temp_f30 = BoardModelRotYGet(lbl_1_bss_30[15]);
|
||||||
|
temp_f28 = -temp_f30/20.0f;
|
||||||
|
BoardModelScaleGet(lbl_1_bss_30[6], &sp14);
|
||||||
|
for(temp_r31=0; temp_r31<10; temp_r31++) {
|
||||||
|
sp14.x = sp14.y = sp14.z = 1.0f-(temp_r31*0.1f);
|
||||||
|
if(sp14.x < 0.0f) {
|
||||||
|
sp14.x = sp14.y = sp14.z = 0.0f;
|
||||||
|
}
|
||||||
|
BoardModelScaleSetV(lbl_1_bss_30[6], &sp14);
|
||||||
|
temp_f31 += temp_f29;
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[5], temp_f31);
|
||||||
|
temp_f30 += temp_f28;
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[15], temp_f30);
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
BoardModelPosGet(lbl_1_bss_30[15], &sp8);
|
||||||
|
sp8.z -= 90.0f;
|
||||||
|
sp8.y += 50.0f;
|
||||||
|
BoardModelPosSetV(lbl_1_bss_30[6], &sp8);
|
||||||
|
for(temp_r31=0; temp_r31<10; temp_r31++) {
|
||||||
|
sp14.x = sp14.y = sp14.z = temp_r31*0.1f;
|
||||||
|
if(sp14.x > 1.0f) {
|
||||||
|
sp14.x = sp14.y = sp14.z = 1.0f;
|
||||||
|
}
|
||||||
|
BoardModelScaleSetV(lbl_1_bss_30[6], &sp14);
|
||||||
|
temp_f31 += temp_f29;
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[5], temp_f31);
|
||||||
|
temp_f30 += temp_f28;
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[15], temp_f30);
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
sp14.x = sp14.y = sp14.z = 1.0f;
|
||||||
|
BoardModelScaleSetV(lbl_1_bss_30[6], &sp14);
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[5], 0);
|
||||||
|
BoardModelRotYSet(lbl_1_bss_30[15], 0);
|
||||||
|
HuPrcEnd();
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 fn_1_E2AC(void)
|
||||||
|
{
|
||||||
|
switch(GWSystem.star_pos) {
|
||||||
|
case 0:
|
||||||
|
return 3;
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
case 2:
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
case 4:
|
||||||
|
return 1;
|
||||||
|
|
||||||
|
case 5:
|
||||||
|
case 6:
|
||||||
|
case 7:
|
||||||
|
return 2;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Rotate (yaw) of model 4 */
|
/* Rotate (yaw) of model 4 */
|
||||||
void fn_1_E310(f32 degrees) {
|
void fn_1_E310(f32 degrees) {
|
||||||
Point3d spC;
|
Point3d spC;
|
||||||
lbl_1_bss_380 += degrees;
|
lbl_1_bss_380 += degrees;
|
||||||
if (lbl_1_bss_380 >= lbl_1_rodata_490) {
|
if (lbl_1_bss_380 >= 360.0f) {
|
||||||
lbl_1_bss_380 -= lbl_1_rodata_490;
|
lbl_1_bss_380 -= 360.0f;
|
||||||
}
|
}
|
||||||
if (lbl_1_bss_380 < lbl_1_rodata_410) {
|
if (lbl_1_bss_380 < 0.0f) {
|
||||||
lbl_1_bss_380 += lbl_1_rodata_490;
|
lbl_1_bss_380 += 360.0f;
|
||||||
}
|
}
|
||||||
BoardModelRotGet(lbl_1_bss_30[4], &spC);
|
BoardModelRotGet(lbl_1_bss_30[4], &spC);
|
||||||
spC.y = lbl_1_bss_380;
|
spC.y = lbl_1_bss_380;
|
||||||
BoardModelRotSetV(lbl_1_bss_30[4], &spC);
|
BoardModelRotSetV(lbl_1_bss_30[4], &spC);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void fn_1_E41C(void)
|
||||||
|
{
|
||||||
|
lbl_1_bss_388 = GWSystem.player_curr;
|
||||||
|
OSReport("Roulette Player %d\n", lbl_1_bss_388);
|
||||||
|
lbl_1_bss_38C = HuPrcChildCreate(fn_1_BCFC, 8195, 8192, 0, boardMainProc);
|
||||||
|
HuPrcDestructorSet2(lbl_1_bss_38C, (void *)fn_1_BE74); //fn_1_BE74 requires implicit return
|
||||||
|
while(lbl_1_bss_38C) {
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue