Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_e_wb.cpp File Reference

Classes

class  daE_WB_HIO_c
 

Functions

 STATIC_ASSERT (sizeof(daE_WB_HIO_c)==0x5C)
 
static void anm_init (e_wb_class *i_actor, int i_anmId, f32 i_morf, u8 i_attr, f32 i_rate)
 
static int nodeCallBack (J3DJoint *i_joint, int param_1)
 
static void himo_control1 (e_wb_class *i_this, cXyz *i_pos, int i_idx, s8 param_3)
 
static void himo_control2 (e_wb_class *i_this, cXyz *i_pos, int i_idx, s8 param_3)
 
static int e_wb_lr_wall_check (e_wb_class *i_this)
 
static int daE_WB_Draw (e_wb_class *i_this)
 
static s16 e_wb_wall_check (e_wb_class *i_this)
 
static s8 gake_check (e_wb_class *i_this)
 
static BOOL e_wb_saku_jump_check (e_wb_class *i_this)
 
static int e_wb_saku_check_sub (e_wb_class *i_this, s16 param_1)
 
static int e_wb_saku_check (e_wb_class *i_this)
 
static void e_wb_wait (e_wb_class *i_this)
 
static void e_wb_ride (e_wb_class *i_this)
 
static void e_wb_pl_ride_now (e_wb_class *i_this)
 
static void e_wb_pl_ride (e_wb_class *i_this)
 
static void e_wb_f_wait (e_wb_class *i_this)
 
static int pl_pass_check (e_wb_class *i_this, f32 param_1)
 
static void e_wb_f_run (e_wb_class *i_this)
 
static void * s_wbstart_sub (void *i_actor, void *i_data)
 
static void e_wb_b_wait (e_wb_class *i_this)
 
static void e_wb_b_run2 (e_wb_class *i_this)
 
static void e_wb_b_wait2 (e_wb_class *i_this)
 
static void e_wb_b_run (e_wb_class *i_this)
 Handles the running action state for the Bullbo enemy.
 
static void arrow_rd_set (e_wb_class *i_this)
 
static void e_wb_b_ikki (e_wb_class *i_this)
 
static void e_wb_b_ikki_end (e_wb_class *i_this)
 
static void e_wb_b_ikki2 (e_wb_class *i_this)
 
static void e_wb_b_ikki2_end (e_wb_class *i_this)
 
static void e_wb_b_lv9_end (e_wb_class *i_this)
 
static void e_wb_a_run (e_wb_class *i_this)
 
static void e_wb_s_damage (e_wb_class *i_this)
 
static int e_wb_damage (e_wb_class *i_this)
 
static int e_wb_bg_damage (e_wb_class *i_this)
 
static int e_wb_lr_damage (e_wb_class *i_this)
 
static void e_wb_kiba_start (e_wb_class *i_this)
 
static void e_wb_kiba_end (e_wb_class *i_this)
 
static void damage_check (e_wb_class *i_this)
 
static void effect_set (e_wb_class *i_this)
 
static void wb_rd_reset (e_wb_class *i_this)
 
static void wb_c_rd_reset (e_wb_class *i_this)
 
static void * s_rddel_sub (void *param_0, void *param_1)
 
static void * s_rdcount_sub (void *i_actor, void *i_data)
 
static void * s_rddel2_sub (void *i_actor, void *i_data)
 
static void e_wb_crv_wait (e_wb_class *i_this)
 
static s8 e_wb_c_run (e_wb_class *i_this)
 
static void action (e_wb_class *i_this)
 
static void * s_wbZrevise_sub (void *i_actor, void *i_data)
 
static void * s_spd0_sub (void *i_actor, void *i_data)
 
static void * s_wbdel_sub (void *i_actor, void *i_data)
 
static void * s_rdArrowWait_sub (void *i_actor, void *i_data)
 
static void cam_3d_morf (e_wb_class *i_this, f32 i_scale)
 
static void demo_camera (e_wb_class *i_this)
 
static void anm_se_eff_set (e_wb_class *i_this)
 
static int daE_WB_Execute (e_wb_class *i_this)
 
static int daE_WB_IsDelete (e_wb_class *i_this)
 
static int daE_WB_Delete (e_wb_class *i_this)
 
static int useHeapInit (fopAc_ac_c *a_this)
 
static int daE_WB_Create (fopAc_ac_c *a_this)
 

Variables

static u8 const lit_3882 [12] = {0}
 
static s8 lbl_244_bss_45
 
static s8 lbl_244_bss_46
 
static s8 lbl_244_bss_47
 
static bool l_HIOInit
 
static daE_WB_HIO_c l_HIO
 
static cXyz b_path [8]
 
static cXyz b_path2 [8]
 
static cXyz saku_p (34800.0f, 0.0f, -14900.0f)
 
static cXyz saku_p2 (34800.0f, 0.0f, -37200.0f)
 
static int rd_count
 
static int c_start
 
static actor_method_class l_daE_WB_Method
 
actor_process_profile_definition g_profile_E_WB
 
 AUDIO_INSTANCES
 

Function Documentation

◆ action()

static void action ( e_wb_class * i_this)
static

◆ anm_init()

static void anm_init ( e_wb_class * i_actor,
int i_anmId,
f32 i_morf,
u8 i_attr,
f32 i_rate )
static

◆ anm_se_eff_set()

static void anm_se_eff_set ( e_wb_class * i_this)
static

◆ arrow_rd_set()

static void arrow_rd_set ( e_wb_class * i_this)
static

◆ cam_3d_morf()

static void cam_3d_morf ( e_wb_class * i_this,
f32 i_scale )
static

◆ daE_WB_Create()

static int daE_WB_Create ( fopAc_ac_c * a_this)
static

◆ daE_WB_Delete()

static int daE_WB_Delete ( e_wb_class * i_this)
static

◆ daE_WB_Draw()

static int daE_WB_Draw ( e_wb_class * i_this)
static

◆ daE_WB_Execute()

static int daE_WB_Execute ( e_wb_class * i_this)
static

◆ daE_WB_IsDelete()

static int daE_WB_IsDelete ( e_wb_class * i_this)
static

◆ damage_check()

static void damage_check ( e_wb_class * i_this)
static

◆ demo_camera()

static void demo_camera ( e_wb_class * i_this)
static

◆ e_wb_a_run()

static void e_wb_a_run ( e_wb_class * i_this)
static

◆ e_wb_b_ikki()

static void e_wb_b_ikki ( e_wb_class * i_this)
static

◆ e_wb_b_ikki2()

static void e_wb_b_ikki2 ( e_wb_class * i_this)
static

◆ e_wb_b_ikki2_end()

static void e_wb_b_ikki2_end ( e_wb_class * i_this)
static

◆ e_wb_b_ikki_end()

static void e_wb_b_ikki_end ( e_wb_class * i_this)
static

◆ e_wb_b_lv9_end()

static void e_wb_b_lv9_end ( e_wb_class * i_this)
static

◆ e_wb_b_run()

static void e_wb_b_run ( e_wb_class * i_this)
static

Handles the running action state for the Bullbo enemy.

This function controls the Bullbo's behavior while running, including path initialization, following a generated path, adjusting speed based on the player's horse, handling jumps over fences or walls, and transitioning to other states like waiting or catching up.

The path is an octagonal loop with randomized radii, regenerated when the Bullbo reaches a waypoint or periodically. Speed and animation are adjusted dynamically to match or exceed the player's pace during chases.

Parameters
i_thisPointer to the Bullbo instance (e_wb_class).

◆ e_wb_b_run2()

static void e_wb_b_run2 ( e_wb_class * i_this)
static

◆ e_wb_b_wait()

static void e_wb_b_wait ( e_wb_class * i_this)
static

◆ e_wb_b_wait2()

static void e_wb_b_wait2 ( e_wb_class * i_this)
static

◆ e_wb_bg_damage()

static int e_wb_bg_damage ( e_wb_class * i_this)
static

◆ e_wb_c_run()

static s8 e_wb_c_run ( e_wb_class * i_this)
static

◆ e_wb_crv_wait()

static void e_wb_crv_wait ( e_wb_class * i_this)
static

◆ e_wb_damage()

static int e_wb_damage ( e_wb_class * i_this)
static

◆ e_wb_f_run()

static void e_wb_f_run ( e_wb_class * i_this)
static

◆ e_wb_f_wait()

static void e_wb_f_wait ( e_wb_class * i_this)
static

◆ e_wb_kiba_end()

static void e_wb_kiba_end ( e_wb_class * i_this)
static

◆ e_wb_kiba_start()

static void e_wb_kiba_start ( e_wb_class * i_this)
static

◆ e_wb_lr_damage()

static int e_wb_lr_damage ( e_wb_class * i_this)
static

◆ e_wb_lr_wall_check()

static int e_wb_lr_wall_check ( e_wb_class * i_this)
static

◆ e_wb_pl_ride()

static void e_wb_pl_ride ( e_wb_class * i_this)
static

◆ e_wb_pl_ride_now()

static void e_wb_pl_ride_now ( e_wb_class * i_this)
static

◆ e_wb_ride()

static void e_wb_ride ( e_wb_class * i_this)
static

◆ e_wb_s_damage()

static void e_wb_s_damage ( e_wb_class * i_this)
static

◆ e_wb_saku_check()

static int e_wb_saku_check ( e_wb_class * i_this)
static

◆ e_wb_saku_check_sub()

static int e_wb_saku_check_sub ( e_wb_class * i_this,
s16 param_1 )
static

◆ e_wb_saku_jump_check()

static BOOL e_wb_saku_jump_check ( e_wb_class * i_this)
static

◆ e_wb_wait()

static void e_wb_wait ( e_wb_class * i_this)
static

◆ e_wb_wall_check()

static s16 e_wb_wall_check ( e_wb_class * i_this)
static

◆ effect_set()

static void effect_set ( e_wb_class * i_this)
static

◆ gake_check()

static s8 gake_check ( e_wb_class * i_this)
static

◆ himo_control1()

static void himo_control1 ( e_wb_class * i_this,
cXyz * i_pos,
int i_idx,
s8 param_3 )
static

◆ himo_control2()

static void himo_control2 ( e_wb_class * i_this,
cXyz * i_pos,
int i_idx,
s8 param_3 )
static

◆ nodeCallBack()

static int nodeCallBack ( J3DJoint * i_joint,
int param_1 )
static

◆ pl_pass_check()

static int pl_pass_check ( e_wb_class * i_this,
f32 param_1 )
static

◆ s_rdArrowWait_sub()

static void * s_rdArrowWait_sub ( void * i_actor,
void * i_data )
static

◆ s_rdcount_sub()

static void * s_rdcount_sub ( void * i_actor,
void * i_data )
static

◆ s_rddel2_sub()

static void * s_rddel2_sub ( void * i_actor,
void * i_data )
static

◆ s_rddel_sub()

static void * s_rddel_sub ( void * param_0,
void * param_1 )
static

◆ s_spd0_sub()

static void * s_spd0_sub ( void * i_actor,
void * i_data )
static

◆ s_wbdel_sub()

static void * s_wbdel_sub ( void * i_actor,
void * i_data )
static

◆ s_wbstart_sub()

static void * s_wbstart_sub ( void * i_actor,
void * i_data )
static

◆ s_wbZrevise_sub()

static void * s_wbZrevise_sub ( void * i_actor,
void * i_data )
static

◆ STATIC_ASSERT()

STATIC_ASSERT ( sizeof(daE_WB_HIO_c) = =0x5C)

◆ useHeapInit()

static int useHeapInit ( fopAc_ac_c * a_this)
static

◆ wb_c_rd_reset()

static void wb_c_rd_reset ( e_wb_class * i_this)
static

◆ wb_rd_reset()

static void wb_rd_reset ( e_wb_class * i_this)
static

Variable Documentation

◆ AUDIO_INSTANCES

AUDIO_INSTANCES

◆ b_path

cXyz b_path[8]
static

◆ b_path2

cXyz b_path2[8]
static

◆ c_start

int c_start
static

◆ g_profile_E_WB

actor_process_profile_definition g_profile_E_WB
extern
Initial value:
= {
4,
sizeof(e_wb_class),
0,
0,
152,
0x00044100,
}
Bullbo (Wild Boar)
Definition d_a_e_wb.h:72
static actor_method_class l_daE_WB_Method
Definition d_a_e_wb.cpp:5827
@ PROC_E_WB
Definition d_procname.h:248
actor_method_class g_fopAc_Method
@ fopAc_CULLBOX_CUSTOM_e
Definition f_op_actor.h:70
@ fopAc_ENEMY_e
Definition f_op_actor.h:40
@ fpcLy_CURRENT_e
Definition f_pc_layer_tag.h:9
leafdraw_method_class g_fpcLf_Method
Definition f_pc_leaf.cpp:63
@ fpcPi_CURRENT_e
Definition f_pc_priority.h:8
leafdraw_method_class base
Definition f_op_actor.h:9
process_method_class base
Definition f_pc_leaf.h:12

◆ l_daE_WB_Method

actor_method_class l_daE_WB_Method
static
Initial value:
= {
}
static int daE_WB_Draw(e_wb_class *i_this)
Definition d_a_e_wb.cpp:368
static int daE_WB_Delete(e_wb_class *i_this)
Definition d_a_e_wb.cpp:5473
static int daE_WB_Execute(e_wb_class *i_this)
Definition d_a_e_wb.cpp:5132
static int daE_WB_IsDelete(e_wb_class *i_this)
Definition d_a_e_wb.cpp:5469
static int daE_WB_Create(fopAc_ac_c *a_this)
Definition d_a_e_wb.cpp:5565
int(* process_method_func)(void *)
Definition f_pc_method.h:7

◆ l_HIO

daE_WB_HIO_c l_HIO
static

◆ l_HIOInit

bool l_HIOInit
static

◆ lbl_244_bss_45

s8 lbl_244_bss_45
static

◆ lbl_244_bss_46

s8 lbl_244_bss_46
static

◆ lbl_244_bss_47

s8 lbl_244_bss_47
static

◆ lit_3882

u8 const lit_3882[12] = {0}
static

◆ rd_count

int rd_count
static

◆ saku_p

cXyz saku_p(34800.0f, 0.0f, -14900.0f) ( 34800. 0f,
0. 0f,
-14900. 0f )
static

◆ saku_p2

cXyz saku_p2(34800.0f, 0.0f, -37200.0f) ( 34800. 0f,
0. 0f,
-37200. 0f )
static