mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-05-23 06:34:18 -04:00
Work
This commit is contained in:
+1
-1
@@ -141,7 +141,7 @@ n.rule(
|
||||
|
||||
n.rule(
|
||||
"disasm_single",
|
||||
command = "$disassembler $in $out -j $addr -q $disasmflags",
|
||||
command = "$disassembler $in $out -f $addr -q -i $disasmflags",
|
||||
description = "ppcdis function disassembly $addr"
|
||||
)
|
||||
|
||||
|
||||
+34
-6
@@ -8,6 +8,7 @@
|
||||
#include "m_lights.h"
|
||||
#include "m_collision_bg.h"
|
||||
#include "m_collision_obj.h"
|
||||
#include "m_actor_dlftbls.h"
|
||||
#include "libforest/gbi_extensions.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
@@ -386,7 +387,7 @@ struct actor_s {
|
||||
/* 0x164 */ mActor_proc mv_proc; /* move */
|
||||
/* 0x168 */ mActor_proc dw_proc; /* draw */
|
||||
/* 0x16C */ mActor_proc sv_proc; /* save */
|
||||
/* 0x170 */ void* dlftbl; /* display list function table */
|
||||
/* 0x170 */ ACTOR_DLFTBL* dlftbl; /* display list function table */
|
||||
};
|
||||
|
||||
#define mActor_NONE_PROC1 ((mActor_proc)none_proc1)
|
||||
@@ -408,13 +409,40 @@ typedef struct actor_data_s {
|
||||
s16 arg;
|
||||
} Actor_data;
|
||||
|
||||
extern void Actor_delete(ACTOR* actor);
|
||||
extern ACTOR* Actor_info_fgName_search(Actor_info* actor_info, mActor_name_t fg_name, int part);
|
||||
extern void Actor_world_to_eye(ACTOR* actor, f32 eye_height);
|
||||
extern void Shape_Info_init(ACTOR* actor, f32 ofs_y, mActor_shadow_proc shadow_proc, f32 shadow_size_x, f32 shadow_size_z);
|
||||
extern void Actor_position_move(ACTOR* actor);
|
||||
extern void Actor_position_speed_set(ACTOR* actor);
|
||||
extern void Actor_position_moveF(ACTOR* actor);
|
||||
extern ACTOR* Actor_info_make_actor(Actor_info* actor_info, GAME* game, s16 profile, f32 x, f32 y, f32 z, short rot_x, short rot_y, short rot_z, s8 block_x, s8 block_z, s16 mvactor_list_no, mActor_name_t actor_name, s16 arg, s8 npc_idx, int data_bank);
|
||||
extern void Setpos_HiliteReflect_init(xyz_t* wpos, GAME_PLAY* play);
|
||||
extern int Actor_player_look_direction_check(ACTOR* actor, s16 angle, GAME_PLAY* play);
|
||||
extern void Shape_Info_init(ACTOR* actor, f32 ofs_y, mActor_shadow_proc shadow_proc, f32 shadow_size_x, f32 shadow_size_z);
|
||||
extern void Actor_delete(ACTOR* actor);
|
||||
extern int Actor_draw_actor_no_culling_check(ACTOR* actor);
|
||||
extern int Actor_draw_actor_no_culling_check2(ACTOR* actor, xyz_t* camera_pos, f32 camera_w);
|
||||
extern void Actor_info_ct(GAME* game, Actor_info* actor_info, Actor_data* player_data);
|
||||
extern void Actor_info_dt(Actor_info* actor_info, GAME_PLAY* play);
|
||||
extern void Actor_info_call_actor(GAME_PLAY* play, Actor_info* actor_info);
|
||||
extern void Actor_info_draw_actor(GAME_PLAY* play, Actor_info* actor_info);
|
||||
extern void Actor_free_overlay_area(ACTOR_DLFTBL* dlftbl);
|
||||
extern void Actor_get_overlay_area(ACTOR_DLFTBL* dlftbl, int unused, size_t alloc_size);
|
||||
extern void Actor_init_actor_class(ACTOR* actor, ACTOR_PROFILE* profile, ACTOR_DLFTBL* dlftbl, GAME_PLAY* play, int bank_idx, f32 x, f32 y, f32 z, s16 rot_x, s16 rot_y, s16 rot_z, s8 block_x, s8 block_z, s16 move_actor_list_idx, mActor_name_t name_id, s16 arg);
|
||||
#ifndef MUST_MATCH
|
||||
extern ACTOR* Actor_info_make_actor(Actor_info* actor_info, GAME* game, s16 profile_no, f32 x, f32 y, f32 z, s16 rot_x, s16 rot_y, s16 rot_z, s8 block_x, s8 block_z, s16 move_actor_list_idx, mActor_name_t name_id, s16 arg, s8 npc_info_idx, int data_bank_idx);
|
||||
#else
|
||||
extern asm ACTOR* Actor_info_make_actor(Actor_info* actor_info, GAME* game, s16 profile_no, f32 x, f32 y, f32 z, s16 rot_x, s16 rot_y, s16 rot_z, s8 block_x, s8 block_z, s16 move_actor_list_idx, mActor_name_t name_id, s16 arg, s8 npc_info_idx, int data_bank_idx);
|
||||
#endif
|
||||
extern ACTOR* Actor_info_make_child_actor(Actor_info* actor_info, ACTOR* parent_actor, GAME* game, s16 profile, f32 x, f32 y, f32 z, s16 rot_x, s16 rot_y, s16 rot_z, s16 move_actor_list_idx, mActor_name_t name_id, s16 arg, int data_bank_idx);
|
||||
extern void restore_fgdata_all(GAME_PLAY* play);
|
||||
extern void Actor_info_save_actor(GAME_PLAY* play);
|
||||
extern ACTOR* Actor_info_delete(Actor_info* actor_info, ACTOR* actor, GAME* game);
|
||||
extern ACTOR* Actor_info_name_search_sub(ACTOR* actor, s16 name);
|
||||
extern ACTOR* Actor_info_name_search(Actor_info* actor_info, s16 name, int part);
|
||||
extern ACTOR* Actor_info_fgName_search_sub(ACTOR* actor, mActor_name_t fgName);
|
||||
extern ACTOR* Actor_info_fgName_search(Actor_info* actor_info, mActor_name_t fgName, int part);
|
||||
extern Gfx* HiliteReflect_new(xyz_t* pos, xyz_t* eye, xyz_t* light_direction, GRAPH* graph, Gfx* gfx, Hilite** hilite);
|
||||
extern Hilite* HiliteReflect_init(xyz_t* pos, xyz_t* eye, xyz_t* light_direction, GRAPH* graph);
|
||||
extern Hilite* HiliteReflect_xlu_init(xyz_t* pos, xyz_t* eye, xyz_t* light_direction, GRAPH* graph);
|
||||
extern void Setpos_HiliteReflect_init(xyz_t* pos, GAME_PLAY* play);
|
||||
extern void Setpos_HiliteReflect_xlu_init(xyz_t* pos, GAME_PLAY* play);
|
||||
|
||||
extern void mAc_ActorShadowCircle(ACTOR* actor, LightsN* lightsN, GAME_PLAY* play);
|
||||
extern void mAc_ActorShadowEllipse(ACTOR* actor, LightsN* lightsN, GAME_PLAY* play);
|
||||
|
||||
@@ -19,6 +19,11 @@
|
||||
#include "m_malloc.h"
|
||||
#include "m_common_data.h"
|
||||
|
||||
#ifdef MUST_MATCH
|
||||
#include "../tools/ppcdis/include/ppcdis.h" // "ppcdis.h" produces the same error
|
||||
#include "orderstrings/8064d600_8064d604.inc"
|
||||
#endif
|
||||
|
||||
extern void Actor_world_to_eye(ACTOR* actor, f32 eye_height) {
|
||||
/* Update position */
|
||||
actor->eye.position.x = actor->world.position.x;
|
||||
|
||||
Reference in New Issue
Block a user