The first commit
This commit is contained in:
172
src/core2/bs/rest.c
Normal file
172
src/core2/bs/rest.c
Normal file
@@ -0,0 +1,172 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
|
||||
void func_802B3A50(void) {
|
||||
f32 sp34;
|
||||
f32 plyr_pos[3];
|
||||
f32 sp1C[3];
|
||||
|
||||
if (func_80298850()) {
|
||||
_player_getPosition(plyr_pos);
|
||||
if (func_80298800(sp1C) && func_80257F18(plyr_pos, sp1C, &sp34)) {
|
||||
yaw_setIdeal(sp34);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_802B3AAC(enum asset_e anim_id, f32 anim_duration) {
|
||||
AnimCtrl *anim_ctrl;
|
||||
|
||||
anim_ctrl = _player_getAnimCtrlPtr();
|
||||
if (anim_id == 0x14A) {
|
||||
func_8029E070(1);
|
||||
switch (animctrl_getIndex(_player_getAnimCtrlPtr())) {
|
||||
case 0x14A:
|
||||
func_8028A010(anim_id, anim_duration);
|
||||
break;
|
||||
case 0x167:
|
||||
animctrl_reset(anim_ctrl);
|
||||
animctrl_setIndex(anim_ctrl, 0x167);
|
||||
animctrl_setDuration(anim_ctrl, 0.4f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE);
|
||||
break;
|
||||
default:
|
||||
func_8028A180(0x167, 0.5f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
func_8028A010(anim_id, anim_duration);
|
||||
}
|
||||
func_8029C7F4(1, 1, 3, 2);
|
||||
func_80297970(0.0f);
|
||||
func_802B3A50();
|
||||
}
|
||||
|
||||
|
||||
bool func_802B3BB0(void) {
|
||||
AnimCtrl *anim_ctrl;
|
||||
bool sp20;
|
||||
|
||||
anim_ctrl = _player_getAnimCtrlPtr();
|
||||
func_802B3A50();
|
||||
sp20 = FALSE;
|
||||
switch(animctrl_getIndex(anim_ctrl)){
|
||||
case 0x167:
|
||||
if (baanim_isStopped() != 0) {
|
||||
if (animctrl_isPlayedForwards(anim_ctrl) != 0) {
|
||||
func_8028A010(0x14A, 11.4f);
|
||||
} else if (func_80298850() == 0) {
|
||||
sp20 = TRUE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0x14A:
|
||||
if (func_80298850() == 0) {
|
||||
animctrl_reset(anim_ctrl);
|
||||
animctrl_setDirection(anim_ctrl, 0);
|
||||
animctrl_setIndex(anim_ctrl, 0x167);
|
||||
func_8028774C(anim_ctrl, 1.0f);
|
||||
animctrl_setDuration(anim_ctrl, 0.5f);
|
||||
animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE);
|
||||
_func_802875AC(anim_ctrl, "bsrest.c", 0xA3);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (func_80298850() == 0) {
|
||||
sp20 = TRUE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return sp20;
|
||||
}
|
||||
|
||||
void func_802B3CCC(void){
|
||||
func_8029E070(0);
|
||||
}
|
||||
|
||||
void func_802B3CEC(void){
|
||||
enum asset_e anim_id;
|
||||
f32 anim_duration;
|
||||
|
||||
func_8029BE10(&anim_id, &anim_duration);
|
||||
func_802B3AAC(anim_id, anim_duration);
|
||||
}
|
||||
|
||||
void func_802B3D1C(void) {
|
||||
enum bs_e next_state;
|
||||
|
||||
next_state = 0;
|
||||
if (player_inWater() != 0) {
|
||||
next_state = BS_77;
|
||||
}
|
||||
if (func_802B3BB0() != 0) {
|
||||
next_state = bs_getIdleState();
|
||||
}
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
void func_802B3D6C(void){
|
||||
func_802B3CCC();
|
||||
}
|
||||
|
||||
void func_802B3D8C(void){
|
||||
enum asset_e anim_id;
|
||||
f32 anim_duration;
|
||||
|
||||
func_8029BF00(&anim_id, &anim_duration);
|
||||
func_802B3AAC(anim_id, anim_duration);
|
||||
}
|
||||
|
||||
|
||||
void func_802B3DBC(void) {
|
||||
enum bs_e next_state;
|
||||
|
||||
next_state = 0;
|
||||
if (player_inWater() != 0) {
|
||||
next_state = BS_77;
|
||||
}
|
||||
if (func_802B3BB0() != 0) {
|
||||
next_state = bs_getIdleState();
|
||||
}
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
|
||||
void func_802B3E0C(void){
|
||||
func_802B3CCC();
|
||||
}
|
||||
|
||||
void func_802B3E2C(void){
|
||||
enum asset_e anim_id;
|
||||
f32 anim_duration;
|
||||
|
||||
func_8029BE88(&anim_id, &anim_duration);
|
||||
func_802B3AAC(anim_id, anim_duration);
|
||||
func_8029C674();
|
||||
}
|
||||
|
||||
void func_802B3E64(void) {
|
||||
s32 next_state;
|
||||
|
||||
next_state = 0;
|
||||
func_8029C6D0();
|
||||
if (player_inWater()) {
|
||||
next_state = BS_77;
|
||||
}
|
||||
if (func_802B3BB0()) {
|
||||
next_state = bs_getIdleState();
|
||||
}
|
||||
if (map_get() == MAP_27_FP_FREEZEEZY_PEAK && miscflag_isTrue(0x14)) {
|
||||
next_state = func_8029CA94(next_state);
|
||||
}
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
|
||||
void func_802B3EF4(void){
|
||||
func_802B3CCC();
|
||||
func_8029C748();
|
||||
}
|
Reference in New Issue
Block a user