remove "done" folders, label "bs/droneenter, bs/dronelook, and bs/dronevanish files and functions"
This commit is contained in:
@@ -20,7 +20,7 @@ void func_802AAE80(void){
|
||||
void func_802AAEE0(void){
|
||||
enum bs_e state = bs_getNextState();
|
||||
|
||||
if(state != BS_3A_CARRY_IDLE && state != BS_CARRY_WALK)
|
||||
if(state != BS_3A_CARRY_IDLE && state != BS_3B_CARRY_WALK)
|
||||
func_8029B0C0();
|
||||
|
||||
func_80289F10(1);
|
||||
@@ -42,7 +42,7 @@ void bscarry_idle_update(void){
|
||||
enum bs_e sp1C = 0;
|
||||
|
||||
if(func_8029B300() > 0)
|
||||
sp1C = BS_CARRY_WALK;
|
||||
sp1C = BS_3B_CARRY_WALK;
|
||||
|
||||
if(carriedobj_getMarker() == NULL)
|
||||
sp1C = BS_1_IDLE;
|
||||
@@ -85,7 +85,7 @@ void bscarry_walk_end(void){
|
||||
|
||||
int bscarry_inSet(enum bs_e state){
|
||||
return state == BS_3A_CARRY_IDLE
|
||||
|| state == BS_CARRY_WALK;
|
||||
|| state == BS_3B_CARRY_WALK;
|
||||
}
|
||||
|
||||
void bscarry_interrupt(void){
|
||||
@@ -95,7 +95,7 @@ void bscarry_interrupt(void){
|
||||
break;
|
||||
case 8:
|
||||
func_8029A86C(2);
|
||||
bs_setState(BS_3C);
|
||||
bs_setState(BS_3C_TALK);
|
||||
break;
|
||||
case 0x12:
|
||||
func_8028DE6C(carriedObject_getActorID());
|
||||
|
@@ -10,10 +10,10 @@ typedef struct{
|
||||
|
||||
struct_drone D_80364B30[] = {
|
||||
{01, {func_802AEDE8, func_802AEE48, func_802AEE9C, NULL}},
|
||||
{02, {func_802AEEF4, func_802AEFB0, func_802AF164, func_80296608}},
|
||||
{02, {bsDroneLook_init, bsDroneLook_update, bsDroneLook_end, func_80296608}},
|
||||
{04, {bsdronexform_init, bsdronexform_update, bsdronexform_end, bsdronexform_interrupt}},
|
||||
{05, {func_802AE9C8, func_802AEA2C, func_802AEB24, NULL}},
|
||||
{06, {func_802AF604, bsdronevanish_update, func_802AF768, NULL}},
|
||||
{05, {bsDroneEnter_init, bsDroneEnter_update, bsDroneEnter_end, NULL}},
|
||||
{06, {bsDroneVanish_init, bsDroneVanish_update, bsDroneVanish_end, NULL}},
|
||||
{0}
|
||||
};
|
||||
|
||||
|
152
src/core2/bs/droneenter.c
Normal file
152
src/core2/bs/droneenter.c
Normal file
@@ -0,0 +1,152 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
enum bsdroneenter_state_e{
|
||||
BSDRONEENTER_SUBSTATE_0_UNINITIALIZED,
|
||||
BSDRONEENTER_SUBSTATE_1,
|
||||
BSDRONEENTER_SUBSTATE_2,
|
||||
BSDRONEENTER_SUBSTATE_3
|
||||
};
|
||||
|
||||
/* .bss */
|
||||
struct {
|
||||
ParticleEmitter *white_sparkle_emitter;
|
||||
ParticleEmitter *yellow_sparkle_emitter;
|
||||
f32 unk8;
|
||||
f32 unkC;
|
||||
f32 unk10;
|
||||
u8 pad14[4];
|
||||
}bsDroneEnter;
|
||||
u8 bsDroneEnterSubstate;
|
||||
|
||||
/* .code */
|
||||
void __bsDroneEnter_setSubstate(enum bsdroneenter_state_e arg0) {
|
||||
switch (arg0) {
|
||||
case 1:
|
||||
func_8029E3C0(0, 0.2f);
|
||||
break;
|
||||
case 2:
|
||||
func_8025A6CC(COMUSIC_43_ENTER_LEVEL_GLITTER, 32000);
|
||||
func_8025AABC(COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_8029E3C0(0, 0.4f);
|
||||
playerModel_setEnvAlpha(0);
|
||||
playerModel_updateModel();
|
||||
break;
|
||||
case 3:
|
||||
comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000);
|
||||
func_8029E3C0(0, 0.55f);
|
||||
break;
|
||||
}
|
||||
bsDroneEnterSubstate = arg0;
|
||||
}
|
||||
|
||||
void __bsDroneEnter_emitParticles(void) {
|
||||
f32 plyr_pos[3];
|
||||
|
||||
player_getPosition(plyr_pos);
|
||||
particleEmitter_setParticleAccelerationRange(bsDroneEnter.yellow_sparkle_emitter, 0.0f, 700.0f, 0.0f, 0.0f, 1200.0f, 0.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(bsDroneEnter.yellow_sparkle_emitter, -45.0f, -5.0f, -45.0f, 45.0f, 10.0f, 45.0f);
|
||||
particleEmitter_setPosition(bsDroneEnter.yellow_sparkle_emitter, plyr_pos);
|
||||
particleEmitter_emitN(bsDroneEnter.yellow_sparkle_emitter, 1);
|
||||
|
||||
particleEmitter_setParticleAccelerationRange(bsDroneEnter.white_sparkle_emitter, 0.0f, 700.0f, 0.0f, 0.0f, 1200.0f, 0.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(bsDroneEnter.yellow_sparkle_emitter, -45.0f, -5.0f, -45.0f, 45.0f, 10.0f, 45.0f);
|
||||
particleEmitter_setPosition(bsDroneEnter.white_sparkle_emitter, plyr_pos);
|
||||
particleEmitter_emitN(bsDroneEnter.white_sparkle_emitter, 1);
|
||||
|
||||
player_getPosition(plyr_pos);
|
||||
plyr_pos[1] += 130.0f;
|
||||
particleEmitter_setParticleAccelerationRange(bsDroneEnter.yellow_sparkle_emitter, 0.0f, -700.0f, 0.0f, 0.0f, -1200.0f, 0.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(bsDroneEnter.yellow_sparkle_emitter, -45.0f, -10.0f, -45.0f, 45.0f, 10.0f, 45.0f);
|
||||
particleEmitter_setPosition(bsDroneEnter.yellow_sparkle_emitter, plyr_pos);
|
||||
particleEmitter_emitN(bsDroneEnter.yellow_sparkle_emitter, 1);
|
||||
|
||||
particleEmitter_setParticleAccelerationRange(bsDroneEnter.white_sparkle_emitter, 0.0f, -700.0f, 0.0f, 0.0f, -1200.0f, 0.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(bsDroneEnter.yellow_sparkle_emitter, -45.0f, -10.0f, -45.0f, 45.0f, 10.0f, 45.0f);
|
||||
particleEmitter_setPosition(bsDroneEnter.white_sparkle_emitter, plyr_pos);
|
||||
particleEmitter_emitN(bsDroneEnter.white_sparkle_emitter, 1);
|
||||
}
|
||||
|
||||
void __bsDroneEnter_initParticleTypes(ParticleEmitter *p_ctrl, enum asset_e sprite_id) {
|
||||
func_802F0D54(p_ctrl);
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
func_802EFA5C(p_ctrl, 0.3f, 0.8f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
func_802EFE24(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
||||
void __bsDroneEnter_removeParticleTypes(void) {
|
||||
partEmitList_remove(bsDroneEnter.yellow_sparkle_emitter);
|
||||
partEmitList_remove(bsDroneEnter.white_sparkle_emitter);
|
||||
}
|
||||
|
||||
void __bsDroneEnter_init(void) {
|
||||
bsDroneEnter.unk10 = 0.0f;
|
||||
bsDroneEnter.unk8 = 0.0f;
|
||||
bsDroneEnter.unkC = 1.0f;
|
||||
bsDroneEnter.white_sparkle_emitter = partEmitList_pushNew(60);
|
||||
__bsDroneEnter_initParticleTypes(bsDroneEnter.white_sparkle_emitter, ASSET_716_SPRITE_SPARKLE_WHITE);
|
||||
bsDroneEnter.yellow_sparkle_emitter = partEmitList_pushNew(60);
|
||||
__bsDroneEnter_initParticleTypes(bsDroneEnter.yellow_sparkle_emitter, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
}
|
||||
|
||||
void func_802AE914(void) {
|
||||
bsDroneEnter.unk10 -= time_getDelta();
|
||||
while ( bsDroneEnter.unk10 < 0.0f) {
|
||||
__bsDroneEnter_emitParticles();
|
||||
bsDroneEnter.unk8 += 0.02 * (f64) bsDroneEnter.unkC;
|
||||
bsDroneEnter.unk10 += 0.02;
|
||||
}
|
||||
}
|
||||
|
||||
void bsDroneEnter_init(void) {
|
||||
f32 anim_duration;
|
||||
enum asset_e anim_id;
|
||||
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
func_8028A010(anim_id, anim_duration);
|
||||
func_8029C7F4(1, 1, 3, 7);
|
||||
func_80294378(6);
|
||||
__bsDroneEnter_init();
|
||||
bsDroneEnterSubstate = BSDRONEENTER_SUBSTATE_0_UNINITIALIZED;
|
||||
__bsDroneEnter_setSubstate(BSDRONEENTER_SUBSTATE_1);
|
||||
}
|
||||
|
||||
void bsDroneEnter_update(void) {
|
||||
s32 next_state;
|
||||
s32 sp20;
|
||||
u8 temp_v0;
|
||||
|
||||
next_state = 0;
|
||||
switch (bsDroneEnterSubstate) {
|
||||
case BSDRONEENTER_SUBSTATE_1:
|
||||
func_802AE914();
|
||||
if (func_8029E1A8(0)) {
|
||||
__bsDroneEnter_setSubstate(BSDRONEENTER_SUBSTATE_2);
|
||||
}
|
||||
break;
|
||||
case BSDRONEENTER_SUBSTATE_2:
|
||||
func_802AE914();
|
||||
sp20 = func_8029E1A8(0);
|
||||
playerModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 255.0f, 0.0f));
|
||||
if (sp20) {
|
||||
__bsDroneEnter_setSubstate(BSDRONEENTER_SUBSTATE_3);
|
||||
}
|
||||
break;
|
||||
case BSDRONEENTER_SUBSTATE_3:
|
||||
if (func_8029E1A8(0)) {
|
||||
next_state = bs_getIdleState();
|
||||
}
|
||||
break;
|
||||
}
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
void bsDroneEnter_end(void){
|
||||
__bsDroneEnter_removeParticleTypes();
|
||||
func_80294378(1);
|
||||
playerModel_updateModel();
|
||||
}
|
78
src/core2/bs/dronelook.c
Normal file
78
src/core2/bs/dronelook.c
Normal file
@@ -0,0 +1,78 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 func_8029B2D0(void);
|
||||
|
||||
/* .code */
|
||||
void __bsDroneLook_getEyePos(f32 arg0[3]) {
|
||||
func_8028E9C4(5, arg0);
|
||||
}
|
||||
|
||||
void bsDroneLook_init(void) {
|
||||
f32 anim_duration;
|
||||
f32 eye_position[3];
|
||||
f32 eye_rotation[3];
|
||||
enum asset_e anim_id;
|
||||
|
||||
func_80299D2C(SFX_12D_CAMERA_ZOOM_CLOSEST, 1.2f, 12000);
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
func_8028A010(anim_id, anim_duration);
|
||||
func_8029C7F4(1, 1, 3, 2);
|
||||
func_80297970(0.0f);
|
||||
func_80297A0C(0);
|
||||
func_802BE8D8();
|
||||
__bsDroneLook_getEyePos(eye_position);
|
||||
func_802C2A64(eye_position);
|
||||
player_getRotation(eye_rotation);
|
||||
eye_rotation[0] = 0.0f;
|
||||
eye_rotation[1] += 180.0f;
|
||||
eye_rotation[2] = 0.0f;
|
||||
func_802C2A8C(eye_rotation);
|
||||
miscflag_set(0x17);
|
||||
}
|
||||
|
||||
void bsDroneLook_update(void) {
|
||||
s32 next_state;
|
||||
f32 eye_rotation[3];
|
||||
f32 eye_position[3];
|
||||
f32 dt;
|
||||
s32 exit_first_person;
|
||||
|
||||
next_state = 0;
|
||||
dt = time_getDelta();
|
||||
if (func_802C2B00() == 2) {
|
||||
func_802C2ADC(eye_rotation);
|
||||
eye_rotation[0] -= func_8029B2DC() * 90.0f * dt;
|
||||
eye_rotation[1] -= func_8029B2D0() * 90.0f * dt;
|
||||
eye_rotation[2] = 0.0f;
|
||||
eye_rotation[0] = (eye_rotation[0] > 180.0f) ? max_f(305.0f, eye_rotation[0]) : min_f(70.0f, eye_rotation[0]);
|
||||
func_802C2A8C(eye_rotation);
|
||||
yaw_setIdeal(eye_rotation[1] + 180.0f);
|
||||
exit_first_person = FALSE;
|
||||
if (button_pressed(BUTTON_B) || button_pressed(BUTTON_A) || button_pressed(BUTTON_C_UP)) {
|
||||
exit_first_person = TRUE;
|
||||
}
|
||||
if (player_inWater()) {
|
||||
if (player_getTransformation() == TRANSFORM_1_BANJO && func_8028EE84() == BSWATERGROUP_0_NONE) {
|
||||
exit_first_person += TRUE;
|
||||
}
|
||||
} else if (func_8028B254(25) == 0) {
|
||||
exit_first_person += TRUE;
|
||||
}
|
||||
if (exit_first_person) {
|
||||
next_state = func_8029BDBC();
|
||||
}
|
||||
}
|
||||
__bsDroneLook_getEyePos(eye_position);
|
||||
func_802C2A64(eye_position);
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
void bsDroneLook_end(void) {
|
||||
if (func_80298850() == 0) {
|
||||
func_80299D2C(SFX_12E_CAMERA_ZOOM_MEDIUM, 1.2f, 12000);
|
||||
}
|
||||
func_802BE91C();
|
||||
miscflag_clear(0x17);
|
||||
}
|
136
src/core2/bs/dronevanish.c
Normal file
136
src/core2/bs/dronevanish.c
Normal file
@@ -0,0 +1,136 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
/* .bss */
|
||||
struct {
|
||||
ParticleEmitter *unk0;
|
||||
ParticleEmitter *unk4;
|
||||
f32 unk8;
|
||||
f32 unkC;
|
||||
f32 unk10;
|
||||
}D_8037D450;
|
||||
u8 D_8037D468;
|
||||
|
||||
/* .code */
|
||||
void __bsDroneVanish_setSubstate(s32 next_state) {
|
||||
switch (next_state) {
|
||||
case 1:
|
||||
func_8029E3C0(0, 0.3f);
|
||||
break;
|
||||
case 2:
|
||||
func_8025A6CC(COMUSIC_43_ENTER_LEVEL_GLITTER, 32000);
|
||||
func_8025AABC(COMUSIC_43_ENTER_LEVEL_GLITTER);
|
||||
func_8029E3C0(0, 0.4f);
|
||||
break;
|
||||
case 3:
|
||||
gcpausemenu_returnToLair();
|
||||
playerModel_setVisible(FALSE);
|
||||
comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000);
|
||||
func_8029E3C0(0, 2.0f);
|
||||
break;
|
||||
}
|
||||
D_8037D468 = next_state;
|
||||
}
|
||||
|
||||
void __bsDroneVanish_emitParticles(void) {
|
||||
f32 position[3];
|
||||
|
||||
player_getPosition(position);
|
||||
particleEmitter_setParticleAccelerationRange(D_8037D450.unk4, 0.0f, 700.0f, 0.0f, 0.0f, 1200.0f, 0.0f);
|
||||
particleEmitter_setPosition(D_8037D450.unk4, position);
|
||||
particleEmitter_emitN(D_8037D450.unk4, 1);
|
||||
particleEmitter_setParticleAccelerationRange(D_8037D450.unk0, 0.0f, 700.0f, 0.0f, 0.0f, 1200.0f, 0.0f);
|
||||
particleEmitter_setPosition(D_8037D450.unk0, position);
|
||||
particleEmitter_emitN(D_8037D450.unk0, 1);
|
||||
position[1] += 130.0f;
|
||||
particleEmitter_setParticleAccelerationRange(D_8037D450.unk4, 0.0f, -700.0f, 0.0f, 0.0f, -1200.0f, 0.0f);
|
||||
particleEmitter_setPosition(D_8037D450.unk4, position);
|
||||
particleEmitter_emitN(D_8037D450.unk4, 1);
|
||||
particleEmitter_setParticleAccelerationRange(D_8037D450.unk0, 0.0f, -700.0f, 0.0f, 0.0f, -1200.0f, 0.0f);
|
||||
particleEmitter_setPosition(D_8037D450.unk0, position);
|
||||
particleEmitter_emitN(D_8037D450.unk0, 1);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_particleEmitInit(ParticleEmitter *p_ctrl, enum asset_e sprite_id) {
|
||||
func_802F0D54();
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
func_802EFA5C(p_ctrl, 0.3f, 0.8f);
|
||||
particleEmitter_setParticleSpawnPositionRange(p_ctrl, -45.0f, 0.0f, -45.0f, 45.0f, 0.0f, 45.0f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
func_802EFE24(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
func_802EFEC0(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_end(void) {
|
||||
partEmitList_remove(D_8037D450.unk4);
|
||||
partEmitList_remove(D_8037D450.unk0);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_init(void) {
|
||||
D_8037D450.unk10 = 0.0f;
|
||||
D_8037D450.unk8 = 0.0f;
|
||||
D_8037D450.unkC = 1.0f;
|
||||
D_8037D450.unk0 = partEmitList_pushNew(60);
|
||||
__bsDroneVanish_particleEmitInit(D_8037D450.unk0, ASSET_716_SPRITE_SPARKLE_WHITE);
|
||||
D_8037D450.unk4 = partEmitList_pushNew(60);
|
||||
__bsDroneVanish_particleEmitInit(D_8037D450.unk4, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
}
|
||||
|
||||
void __bsDroneVanish_update(void) {
|
||||
D_8037D450.unk10 -= time_getDelta();
|
||||
while ( D_8037D450.unk10 < 0.0f) {
|
||||
__bsDroneVanish_emitParticles();
|
||||
D_8037D450.unk8 += 0.02 * (f64) D_8037D450.unkC;
|
||||
D_8037D450.unk10 += 0.02;
|
||||
}
|
||||
}
|
||||
|
||||
void bsDroneVanish_init(void){
|
||||
f32 anim_duration;
|
||||
enum asset_e anim_id;
|
||||
|
||||
func_8029BCF8(&anim_id, &anim_duration);
|
||||
func_8028A010(anim_id, anim_duration);
|
||||
func_8029C7F4(1,1,3,7);
|
||||
func_80294378(6);
|
||||
__bsDroneVanish_init();
|
||||
D_8037D468 = 0;
|
||||
__bsDroneVanish_setSubstate(1);
|
||||
}
|
||||
|
||||
void bsDroneVanish_update(void) {
|
||||
s32 next_state;
|
||||
bool sp20;
|
||||
|
||||
next_state = 0;
|
||||
switch (D_8037D468) {
|
||||
case 1:
|
||||
__bsDroneVanish_update();
|
||||
if (func_8029E1A8(0)) {
|
||||
__bsDroneVanish_setSubstate(2);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
__bsDroneVanish_update();
|
||||
sp20 = func_8029E1A8(0);
|
||||
playerModel_setEnvAlpha((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 0.0f, 255.0f));
|
||||
if (sp20) {
|
||||
__bsDroneVanish_setSubstate(3);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (func_8029E1A8(0)) {
|
||||
next_state = bs_getIdleState();
|
||||
}
|
||||
break;
|
||||
}
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
void bsDroneVanish_end(void){
|
||||
__bsDroneVanish_end();
|
||||
func_80294378(1);
|
||||
playerModel_updateModel();
|
||||
}
|
@@ -82,8 +82,8 @@ void func_802AF900(void){
|
||||
}
|
||||
|
||||
void func_802AFADC(void){
|
||||
func_802F0C78(D_8037D470.unk4);
|
||||
func_802F0C78(D_8037D470.unk0);
|
||||
partEmitList_remove(D_8037D470.unk4);
|
||||
partEmitList_remove(D_8037D470.unk0);
|
||||
}
|
||||
|
||||
void func_802AFB0C(void){
|
||||
|
@@ -328,7 +328,7 @@ void func_802B5350(void){
|
||||
}
|
||||
else if(sp1C == 0x8){//L802B5438
|
||||
func_8029A86C(2);
|
||||
bs_setState(BS_3C);
|
||||
bs_setState(BS_3C_TALK);
|
||||
}else{
|
||||
func_802948E0();
|
||||
func_80296608();
|
||||
|
51
src/core2/bs/talk.c
Normal file
51
src/core2/bs/talk.c
Normal file
@@ -0,0 +1,51 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
/* .bss */
|
||||
bool bsTalkStayInState;
|
||||
|
||||
/* .code */
|
||||
void bstalk_init(void){
|
||||
AnimCtrl *player_anim_ctrl;
|
||||
f32 yaw;
|
||||
f32 plyr_pos[3];
|
||||
f32 target_pos[3];
|
||||
|
||||
player_anim_ctrl = _player_getAnimCtrlPtr();
|
||||
animctrl_reset(player_anim_ctrl);
|
||||
func_8029C848(player_anim_ctrl);
|
||||
animctrl_setPlaybackType(player_anim_ctrl, ANIMCTRL_LOOP);
|
||||
func_802875AC(player_anim_ctrl, "bstalk.c", 0x38);
|
||||
_player_getPosition(plyr_pos);
|
||||
func_802949F8(target_pos);
|
||||
func_80257F18(plyr_pos, target_pos, &yaw);
|
||||
yaw_setIdeal(yaw);
|
||||
func_80289F10(1);
|
||||
func_802991A8(1);
|
||||
func_8029957C(3);
|
||||
func_802978DC(2);
|
||||
func_80297970(0.0f);
|
||||
bsTalkStayInState = TRUE;
|
||||
}
|
||||
|
||||
void bstalk_update(void){
|
||||
enum bs_e next_state = BS_0_NONE;
|
||||
|
||||
if (!bsTalkStayInState)
|
||||
next_state = BS_1_IDLE;
|
||||
bsTalkStayInState = FALSE;
|
||||
bs_setState(next_state);
|
||||
}
|
||||
|
||||
void bstalk_end(void){}
|
||||
|
||||
void bstalk_interrupt(void){
|
||||
if(bs_getInterruptType() == BS_INTR_8){
|
||||
bsTalkStayInState = TRUE;
|
||||
func_8029A86C(2);
|
||||
}
|
||||
else{
|
||||
func_80296608();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user