The first commit
This commit is contained in:
163
src/core2/code_9B180.c
Normal file
163
src/core2/code_9B180.c
Normal file
@@ -0,0 +1,163 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
typedef struct {
|
||||
u8 pad0[2];
|
||||
s16 unk2;
|
||||
}Struct_core2_9B180_1;
|
||||
|
||||
typedef struct struct_core2_9B180_s{
|
||||
s16 unk0;
|
||||
// u8 pad2[0x2];
|
||||
Struct_core2_9B180_1 *unk4;
|
||||
void (*unk8)(struct struct_core2_9B180_s *);
|
||||
void (*unkC)(struct struct_core2_9B180_s *);
|
||||
void (*unk10)(struct struct_core2_9B180_s *);
|
||||
}Struct_core2_9B180_0;
|
||||
|
||||
extern void func_8024FE44(u8, f32, f32);
|
||||
extern void func_8030EDAC(f32, f32);
|
||||
|
||||
/* .data */
|
||||
extern Struct_core2_9B180_0 D_8036DE00[6];
|
||||
extern u8 D_8036DE78;
|
||||
|
||||
/* .bss */
|
||||
extern u8 D_80383330;
|
||||
extern f32 D_80383334;
|
||||
|
||||
/* .code */
|
||||
void func_80322110(Struct_core2_9B180_0 *arg0) {
|
||||
D_80383334 = (f32) arg0->unk4->unk2;
|
||||
}
|
||||
|
||||
void func_80322130(Struct_core2_9B180_0 *arg0) {
|
||||
f32 sp1C[3];
|
||||
|
||||
player_getPosition(sp1C);
|
||||
if (sp1C[1] < D_80383334) {
|
||||
if (func_8028F66C(0x2C) == 2) {
|
||||
arg0->unk4 = 0;
|
||||
FUNC_8030E624(SFX_96_HOTSAND_EEL_HISS, 1.0f, 32000);
|
||||
FUNC_8030E624(SFX_A_BANJO_LANDING_05, 1.0f, 32000);
|
||||
return;
|
||||
}
|
||||
sp1C[1] = D_80383334;
|
||||
func_8028FAB0(sp1C);
|
||||
func_802BD0D8(6);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void func_803221C4(s32 arg0){
|
||||
func_8024FE44(0, 0.2f, 1.25f);
|
||||
}
|
||||
|
||||
void func_803221F4(s32 arg0){
|
||||
func_8030EDAC(0.50999999f, 1.0f);
|
||||
func_80244A98(0);
|
||||
}
|
||||
|
||||
void func_8032222C(s32 arg0) {
|
||||
s32 phi_s0;
|
||||
|
||||
for(phi_s0 = 1; phi_s0 < 5; phi_s0++){
|
||||
func_8024FE44(phi_s0, 0.2f, 1.25f);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80322298(Struct_core2_9B180_0 *arg0){
|
||||
if(D_8036DE78){
|
||||
D_8036DE78 = 0;
|
||||
arg0 ->unk4 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void func_803222BC(s32 ag0){
|
||||
if(func_8024E698(0) == 1){
|
||||
func_8031D06C(0,0);
|
||||
}
|
||||
}
|
||||
|
||||
void func_803222F4(Struct_core2_9B180_0 *arg0){
|
||||
if(D_8036DE78){
|
||||
D_8036DE78 = 0;
|
||||
arg0 ->unk4 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void func_80322318(s32 arg0){
|
||||
func_8031D0C0(0, 0);
|
||||
}
|
||||
|
||||
bool func_80322340(s32 arg0) {
|
||||
f32 sp1C[3];
|
||||
|
||||
if (func_80304E24(arg0, &sp1C)) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void func_8032236C(s32 arg0, s32 arg1, s32 *arg2) {
|
||||
if (func_80322340(arg0) && (*arg2 == 0)) {
|
||||
*arg2 = arg1;
|
||||
}
|
||||
}
|
||||
|
||||
void func_803223AC(void) {
|
||||
Struct_core2_9B180_0 *i_ptr;
|
||||
s32 sp28;
|
||||
|
||||
func_80244A98(1);
|
||||
for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){
|
||||
i_ptr->unk4 = func_803049CC(i_ptr->unk0, 0);
|
||||
if(i_ptr->unk4 != 0 && i_ptr->unk8 != NULL){
|
||||
i_ptr->unk8(i_ptr);
|
||||
}
|
||||
}
|
||||
|
||||
sp28 = 0;
|
||||
func_8032236C(0x19, 1, &sp28);
|
||||
func_8032236C(0x1A, 2, &sp28);
|
||||
func_8032236C(0x1B, 3, &sp28);
|
||||
func_8032236C(0x1C, 4, &sp28);
|
||||
func_8032236C(0x1D, 5, &sp28);
|
||||
sp28 = (sp28 == 0) ? 2 : sp28;
|
||||
func_8024BF94(sp28);
|
||||
}
|
||||
|
||||
void func_80322490(void) {
|
||||
Struct_core2_9B180_0 *i_ptr;
|
||||
|
||||
if (D_80383330 != 0) {
|
||||
for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){
|
||||
if(i_ptr->unk4 != 0 && i_ptr->unkC != NULL){
|
||||
i_ptr->unkC(i_ptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void func_803224FC(void) {
|
||||
s32 i;
|
||||
Struct_core2_9B180_0 *i_ptr;
|
||||
|
||||
for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){
|
||||
if(i_ptr->unk4 != 0 && i_ptr->unk10 != NULL){
|
||||
i_ptr->unk10(i_ptr);
|
||||
}
|
||||
}
|
||||
func_8030EDAC(0.0f, 1.0f);
|
||||
func_80244A98(1);
|
||||
for(i = 0; i < 5; i++){
|
||||
func_8024FE44(i, 0.0f, 1.0f);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void func_803225B0(s32 arg0, s32 arg1){
|
||||
D_80383330 =(arg1 == 2) ? TRUE : FALSE;
|
||||
}
|
Reference in New Issue
Block a user