From f3db5c187f4ad8d2d740c06e4dd29a7b65cf7509 Mon Sep 17 00:00:00 2001 From: Pheenoh Date: Wed, 5 Jun 2024 09:54:15 -0600 Subject: [PATCH] Setup d_a_npc actors (#2165) --- include/rel/d/a/b/d_a_b_yo/d_a_b_yo.h | 18 +- .../d/a/door/d_a_door_boss/d_a_door_boss.h | 3 +- .../a/door/d_a_door_bossL1/d_a_door_bossL1.h | 14 +- .../a/door/d_a_door_bossL5/d_a_door_bossL5.h | 14 +- .../d_a_door_dbdoor00/d_a_door_dbdoor00.h | 11 + .../a/door/d_a_door_knob00/d_a_door_knob00.h | 31 +- .../door/d_a_door_mbossL1/d_a_door_mbossL1.h | 17 +- .../d/a/door/d_a_door_push/d_a_door_push.h | 13 +- .../door/d_a_door_shutter/d_a_door_shutter.h | 17 +- .../rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h | 7 +- .../rel/d/a/kytag/d_a_kytag01/d_a_kytag01.h | 10 + .../rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h | 10 + .../rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h | 10 + .../rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h | 10 + .../rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h | 12 +- .../rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h | 10 + .../rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h | 10 + .../rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h | 10 + .../rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h | 10 + .../rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h | 10 + .../rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h | 10 + .../rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h | 22 + .../rel/d/a/kytag/d_a_kytag13/d_a_kytag13.h | 22 + .../rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h | 10 + .../rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h | 10 + .../rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h | 10 + .../rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h | 10 + include/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h | 89 +- include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h | 5 +- .../rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h | 57 +- .../rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h | 76 +- .../rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h | 94 ++- .../d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h | 83 ++ include/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h | 80 +- .../rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h | 63 +- .../rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h | 138 +++- .../rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h | 74 +- .../rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h | 95 ++- .../d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h | 69 +- .../d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h | 73 +- .../d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h | 67 +- .../rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h | 58 +- include/rel/d/a/npc/d_a_npc_df/d_a_npc_df.h | 23 +- include/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h | 71 +- .../d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h | 53 +- .../a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h | 47 +- include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h | 22 + .../rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h | 140 +++- .../d_a_npc_fairy_seirei.h | 56 +- .../d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h | 11 +- .../rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h | 18 +- include/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h | 68 +- include/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h | 109 ++- include/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h | 72 +- include/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h | 68 +- include/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h | 72 +- .../rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h | 70 +- include/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h | 71 +- include/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h | 68 +- include/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h | 69 +- include/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h | 86 +- .../rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h | 49 +- .../rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h | 22 +- .../rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h | 95 ++- .../rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h | 23 +- .../d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h | 17 +- include/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h | 9 + .../rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h | 57 +- .../rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h | 17 +- include/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h | 67 +- .../rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h | 80 +- .../d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h | 69 +- .../npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h | 113 ++- .../a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h | 80 +- .../npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h | 80 +- include/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h | 17 +- .../rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h | 72 +- include/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h | 217 ++++- include/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h | 59 +- .../rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h | 88 +- .../d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h | 71 +- include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h | 22 + .../rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h | 69 +- include/rel/d/a/npc/d_a_npc_len/d_a_npc_len.h | 75 +- include/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h | 28 +- include/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h | 78 +- .../rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h | 97 ++- .../rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h | 69 +- include/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h | 2 +- include/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h | 95 ++- .../rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h | 65 +- .../rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h | 66 +- include/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h | 15 + include/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h | 2 +- .../d_a_npc_pachi_besu/d_a_npc_pachi_besu.h | 102 ++- .../d_a_npc_pachi_maro/d_a_npc_pachi_maro.h | 104 ++- .../d_a_npc_pachi_taro/d_a_npc_pachi_taro.h | 120 ++- .../d/a/npc/d_a_npc_passer/d_a_npc_passer.h | 103 ++- .../d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h | 32 +- .../rel/d/a/npc/d_a_npc_post/d_a_npc_post.h | 77 +- .../rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h | 72 +- .../d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h | 60 +- .../rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h | 71 +- .../d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h | 63 +- .../rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h | 70 +- .../rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h | 59 +- .../rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h | 59 +- .../rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h | 59 +- .../rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h | 88 +- .../d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h | 80 +- .../d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h | 62 +- .../rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h | 73 +- .../d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h | 85 +- .../rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h | 52 +- .../rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h | 51 +- .../npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h | 22 +- .../rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h | 64 +- .../a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h | 63 +- .../a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h | 62 +- include/rel/d/a/npc/d_a_npc_sq/d_a_npc_sq.h | 8 + .../rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h | 96 ++- include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h | 8 + .../rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h | 111 +-- include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h | 21 +- include/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h | 64 +- include/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h | 66 +- .../rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h | 22 + include/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h | 71 +- .../rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h | 82 ++ include/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h | 8 + include/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h | 85 +- .../rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h | 17 +- .../a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h | 47 +- .../rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h | 72 +- .../rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h | 72 +- .../rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h | 74 +- .../rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h | 73 +- include/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h | 93 ++- include/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h | 88 +- .../rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h | 68 +- .../rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h | 62 +- .../rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h | 69 +- .../rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h | 70 +- .../rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h | 69 +- include/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h | 8 + include/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h | 72 +- include/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h | 85 +- rel/d/a/b/d_a_b_yo/d_a_b_yo.cpp | 2 +- rel/d/a/d_a_peru/d_a_peru.cpp | 34 +- .../d_a_door_mbossL1/d_a_door_mbossL1.cpp | 45 +- rel/d/a/kytag/d_a_kytag12/d_a_kytag12.cpp | 59 +- rel/d/a/kytag/d_a_kytag13/d_a_kytag13.cpp | 50 +- rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.cpp | 642 +++------------ rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.cpp | 478 ++--------- rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.cpp | 681 +++------------- rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.cpp | 599 +++----------- .../a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.cpp | 373 ++------- rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.cpp | 607 +++----------- rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.cpp | 493 ++--------- rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.cpp | 440 ++-------- rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.cpp | 450 ++-------- rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.cpp | 563 ++----------- rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.cpp | 604 +++----------- rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.cpp | 623 +++----------- rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.cpp | 600 +++----------- rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.cpp | 480 ++--------- rel/d/a/npc/d_a_npc_df/d_a_npc_df.cpp | 139 +--- rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.cpp | 567 +++---------- .../a/npc/d_a_npc_doorboy/d_a_npc_doorboy.cpp | 410 ++-------- .../npc/d_a_npc_drainSol/d_a_npc_drainSol.cpp | 362 ++------ rel/d/a/npc/d_a_npc_du/d_a_npc_du.cpp | 203 +---- rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.cpp | 696 +++------------- .../d_a_npc_fairy_seirei.cpp | 440 +++------- rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp | 5 - rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.cpp | 548 +++---------- rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.cpp | 563 ++----------- rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.cpp | 418 ++-------- rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.cpp | 475 ++--------- rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.cpp | 530 +++--------- rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.cpp | 518 +++--------- rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.cpp | 499 ++---------- rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.cpp | 473 ++--------- rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.cpp | 512 ++---------- rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.cpp | 627 +++----------- rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.cpp | 340 ++------ rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.cpp | 567 ++----------- rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.cpp | 701 +++------------- rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.cpp | 410 +++------- rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.cpp | 41 +- rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.cpp | 98 +-- rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.cpp | 505 ++---------- rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.cpp | 146 +--- rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.cpp | 516 ++---------- rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.cpp | 600 +++----------- .../a/npc/d_a_npc_kakashi/d_a_npc_kakashi.cpp | 538 +++--------- .../d_a_npc_kasi_hana/d_a_npc_kasi_hana.cpp | 499 ++---------- .../npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.cpp | 438 ++-------- .../d_a_npc_kasi_mich/d_a_npc_kasi_mich.cpp | 438 ++-------- rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.cpp | 44 +- rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.cpp | 577 +++---------- rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.cpp | 770 ++---------------- rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.cpp | 422 ++-------- rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.cpp | 638 +++------------ rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.cpp | 479 +++-------- rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.cpp | 410 ++-------- rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.cpp | 572 +++---------- rel/d/a/npc/d_a_npc_len/d_a_npc_len.cpp | 586 +++---------- rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.cpp | 117 +-- rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.cpp | 595 +++----------- rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.cpp | 696 +++------------- rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.cpp | 548 +++---------- rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.cpp | 48 +- rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.cpp | 658 +++------------ rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.cpp | 503 ++---------- rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.cpp | 404 ++------- rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp | 4 - rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.cpp | 48 +- .../d_a_npc_pachi_besu/d_a_npc_pachi_besu.cpp | 588 +++---------- .../d_a_npc_pachi_maro/d_a_npc_pachi_maro.cpp | 580 +++---------- .../d_a_npc_pachi_taro/d_a_npc_pachi_taro.cpp | 624 +++----------- rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.cpp | 344 ++------ .../a/npc/d_a_npc_passer2/d_a_npc_passer2.cpp | 240 +----- rel/d/a/npc/d_a_npc_post/d_a_npc_post.cpp | 618 +++----------- rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.cpp | 610 +++----------- rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.cpp | 402 ++------- rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.cpp | 582 +++---------- rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.cpp | 519 ++---------- rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.cpp | 524 +++--------- rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.cpp | 423 ++-------- rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.cpp | 422 ++-------- rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.cpp | 422 ++-------- rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.cpp | 622 +++----------- rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.cpp | 628 +++----------- rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.cpp | 465 ++--------- rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.cpp | 553 ++----------- rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.cpp | 590 +++----------- rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.cpp | 403 ++------- rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.cpp | 288 +------ .../d_a_npc_shop_maro/d_a_npc_shop_maro.cpp | 326 +++----- rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.cpp | 469 +++-------- .../npc/d_a_npc_soldierA/d_a_npc_soldierA.cpp | 413 ++-------- .../npc/d_a_npc_soldierB/d_a_npc_soldierB.cpp | 408 ++-------- rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.cpp | 650 +++------------ rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp | 6 +- rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.cpp | 83 +- rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp | 349 +------- rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.cpp | 476 ++--------- rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.cpp | 550 +++---------- rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.cpp | 232 +----- rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.cpp | 575 ++----------- rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.cpp | 643 +++------------ rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.cpp | 619 +++----------- rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.cpp | 148 +--- .../npc/d_a_npc_wrestler/d_a_npc_wrestler.cpp | 627 +++----------- rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.cpp | 576 +++---------- rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.cpp | 576 +++---------- rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.cpp | 581 +++---------- rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.cpp | 604 +++----------- rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.cpp | 751 +++-------------- rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.cpp | 717 +++------------- rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.cpp | 554 +++---------- rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.cpp | 478 +++-------- rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.cpp | 554 +++---------- rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.cpp | 554 +++---------- rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.cpp | 546 +++---------- rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.cpp | 3 +- rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.cpp | 508 ++---------- rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.cpp | 601 ++------------ .../a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.cpp | 31 +- src/d/a/d_a_npc.cpp | 18 +- tools/add_class_comments.py | 4 +- tools/setup_actor.py | 76 +- 272 files changed, 18090 insertions(+), 44502 deletions(-) diff --git a/include/rel/d/a/b/d_a_b_yo/d_a_b_yo.h b/include/rel/d/a/b/d_a_b_yo/d_a_b_yo.h index a41e6fe5bc..6666341784 100644 --- a/include/rel/d/a/b/d_a_b_yo/d_a_b_yo.h +++ b/include/rel/d/a/b/d_a_b_yo/d_a_b_yo.h @@ -61,22 +61,30 @@ public: /* 806389C0 */ void create(); u8 getModelNo() { return mModelNo;} - s16 getFrizadRollAngle() { return mRollAngle;} + s16 getFrizadRollAngle() { return mFrizadRollAngle;} f32 getModeRarius() { return mModeRarius;} u8 getFrizadAttack() { return mFrizadAttack;} private: - /* 0x5AC */ u8 field_0x5ac[0xF54 - 0x5AC]; + /* 0x5AC */ u8 field_0x5ac[0x5D8 - 0x5AC]; + /* 0x5D8 */ mDoExt_btkAnm* mBtk; + /* 0x5DC */ mDoExt_btpAnm* mBtp; + /* 0x5E0 */ mDoExt_brkAnm* mBrk; + /* 0x5E4 */ mDoExt_bckAnm* mBck; + /* 0x5E8 */ mDoExt_McaMorfSO* mpMorf; + /* 0x5EC */ u8 field_0x5f8[0xF54 - 0x5EC]; /* 0xF54 */ f32 mModeRarius; /* 0xF58 */ u8 field_0xf58[0xF5C - 0xF58]; - /* 0xF5C */ s16 mRollAngle; + /* 0xF5C */ s16 mFrizadRollAngle; /* 0xF5E */ u8 field_0xf5e[0xF6E - 0xF5E]; - /* 0xF6E */ u16 field_0xf6e; + /* 0xF6E */ u16 mIceBreak; /* 0xF70 */ u8 field_0xf70[0xFA8 - 0xF70]; /* 0xFA8 */ u8 mModelNo; /* 0xFA9 */ u8 field_0xfa9[0xFAD - 0xFA9]; /* 0xFAD */ u8 mFrizadAttack; - /* 0xFAE */ u8 field_0xfae[0x1B88 - 0xFAE]; + /* 0xFAE */ u8 field_0xfae[0xFCC - 0xFAE]; + /* 0xFCC */ u8 field_0xfcc; + /* 0xFCD */ u8 field_0xfcd[0x1B88 - 0xFCD]; }; STATIC_ASSERT(sizeof(daB_YO_c) == 0x1B88); diff --git a/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h b/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h index f4cbfa8939..3bf7a16835 100644 --- a/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h +++ b/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h @@ -9,7 +9,7 @@ /** * @ingroup actors-doors * @class daBdoor_c - * @brief Boss Door + * @brief Boss Door (Unused?) * * @details The door that leads to the boss room. * @@ -50,6 +50,7 @@ public: void setAction(u8 i_action) { mAction = i_action; } +private: /* 0x568 */ request_of_phase_process_class mPhaseReq; /* 0x570 */ J3DModel* mpDoorModel; /* 0x574 */ J3DModel* mpLockModel; diff --git a/include/rel/d/a/door/d_a_door_bossL1/d_a_door_bossL1.h b/include/rel/d/a/door/d_a_door_bossL1/d_a_door_bossL1.h index 13f4aaa275..3d4346f7f2 100644 --- a/include/rel/d/a/door/d_a_door_bossL1/d_a_door_bossL1.h +++ b/include/rel/d/a/door/d_a_door_bossL1/d_a_door_bossL1.h @@ -9,7 +9,16 @@ class JPABaseEmitter; -struct daBdoorL1_c : public fopAc_ac_c { +/** + * @ingroup actors-doors + * @class daBdoorL1_c + * @brief Boss Door + * + * @details Multi-purpose door actor. This actor is used for boss doors in the game. + * + */ +class daBdoorL1_c : public fopAc_ac_c { +public: enum DoorType { DOOR_TYPE_0, DOOR_TYPE_1, @@ -67,6 +76,7 @@ struct daBdoorL1_c : public fopAc_ac_c { void setAction(u8 action) { mAction = action; } +private: /* 0x568 */ request_of_phase_process_class mPhase1; /* 0x570 */ request_of_phase_process_class mPhase2; /* 0x578 */ request_of_phase_process_class mPhase3; @@ -94,4 +104,6 @@ struct daBdoorL1_c : public fopAc_ac_c { /* 0x7EC */ Mtx field_0x7ec; }; +STATIC_ASSERT(sizeof(daBdoorL1_c) == 0x81C); + #endif /* D_A_DOOR_BOSSL1_H */ diff --git a/include/rel/d/a/door/d_a_door_bossL5/d_a_door_bossL5.h b/include/rel/d/a/door/d_a_door_bossL5/d_a_door_bossL5.h index 9b3aced785..950ef7a0b5 100644 --- a/include/rel/d/a/door/d_a_door_bossL5/d_a_door_bossL5.h +++ b/include/rel/d/a/door/d_a_door_bossL5/d_a_door_bossL5.h @@ -9,7 +9,16 @@ #include "f_pc/f_pc_manager.h" #include "f_op/f_op_actor_mng.h" -struct daBdoorL5_c : public fopAc_ac_c { +/** + * @ingroup actors-doors + * @class daBdoorL5_c + * @brief Snowpeak Ruins Boss Door + * + * @details + * + */ +class daBdoorL5_c : public fopAc_ac_c { +public: enum ActionType { ACTION_WAIT, ACTION_CLOSE_WAIT, @@ -63,6 +72,7 @@ struct daBdoorL5_c : public fopAc_ac_c { return 1; } +private: /* 0x568 */ request_of_phase_process_class mPhase1; /* 0x570 */ request_of_phase_process_class mPhase2; /* 0x578 */ request_of_phase_process_class mPhase3; @@ -87,4 +97,6 @@ struct daBdoorL5_c : public fopAc_ac_c { /* 0x790 */ dBgS_AcchCir field_0x790; }; +STATIC_ASSERT(sizeof(daBdoorL5_c) == 0x7D0); + #endif /* D_A_DOOR_BOSSL5_H */ diff --git a/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h b/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h index 5fd7fc7f97..d57e883f53 100644 --- a/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h +++ b/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h @@ -4,6 +4,14 @@ #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" +/** + * @ingroup actors-doors + * @class daDbDoor00_c + * @brief Double Door + * + * @details + * + */ class daDbDoor00_c : public fopAc_ac_c { public: /* 8045D470 */ char* getAlwaysArcName(); @@ -33,6 +41,7 @@ public: void setAction(u8 i_action) { mAction = i_action; } +// private: /* 0x568 */ request_of_phase_process_class mPhaseReq; /* 0x570 */ request_of_phase_process_class mPhaseReq2; /* 0x578 */ J3DModel* mpModel; @@ -56,4 +65,6 @@ public: /* 0x5C2 */ s16 field_0x5c2; }; +STATIC_ASSERT(sizeof(daDbDoor00_c) == 0x5C4); + #endif /* D_A_DOOR_DBDOOR00_H */ diff --git a/include/rel/d/a/door/d_a_door_knob00/d_a_door_knob00.h b/include/rel/d/a/door/d_a_door_knob00/d_a_door_knob00.h index 4683c8b6fb..021d4c7364 100644 --- a/include/rel/d/a/door/d_a_door_knob00/d_a_door_knob00.h +++ b/include/rel/d/a/door/d_a_door_knob00/d_a_door_knob00.h @@ -1,19 +1,21 @@ #ifndef D_A_DOOR_KNOB00_H #define D_A_DOOR_KNOB00_H -#include "dolphin/types.h" #include "f_op/f_op_actor.h" #include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_w.h" #include "d/msg/d_msg_flow.h" -struct knob_param_c { - /* 8045E858 */ static u32 getDoorModel(fopAc_ac_c*); - /* 8045E864 */ static u32 getDoorLightInf(fopAc_ac_c*); - /* 8045E870 */ static u16 getMsgNo(fopAc_ac_c*); - /* 8045E87C */ static u8 getExitNo(fopAc_ac_c*); -}; -struct daKnob20_c : public fopAc_ac_c { +/** + * @ingroup actors-doors + * @class daKnob20_c + * @brief Knob Door + * + * @details + * + */ +class daKnob20_c : public fopAc_ac_c { +public: enum { ACTION_INIT, ACTION_WAIT, @@ -71,6 +73,7 @@ struct daKnob20_c : public fopAc_ac_c { void onFlag(u16 flag) { field_0x60c |= flag; } int checkFlag(u16 flag) { return field_0x60c & flag; } +private: /* 0x568 */ request_of_phase_process_class mPhase1; /* 0x570 */ request_of_phase_process_class mPhase2; /* 0x578 */ J3DModel* mModel1; @@ -89,7 +92,17 @@ struct daKnob20_c : public fopAc_ac_c { /* 0x60F */ u8 field_0x60f; /* 0x610 */ s16 field_0x610; /* 0x612 */ s16 field_0x612; - /* 0x612 */ s16 field_0x614; + /* 0x614 */ s16 field_0x614; +}; + +STATIC_ASSERT(sizeof(daKnob20_c) == 0x618); + +class knob_param_c { +public: + /* 8045E858 */ static u32 getDoorModel(fopAc_ac_c*); + /* 8045E864 */ static u32 getDoorLightInf(fopAc_ac_c*); + /* 8045E870 */ static u16 getMsgNo(fopAc_ac_c*); + /* 8045E87C */ static u8 getExitNo(fopAc_ac_c*); }; #endif /* D_A_DOOR_KNOB00_H */ diff --git a/include/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.h b/include/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.h index 04313f4375..ea983e16c0 100644 --- a/include/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.h +++ b/include/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.h @@ -7,7 +7,8 @@ #include "d/bg/d_bg_w.h" #include "d/bg/d_bg_s_acch.h" -struct dDoor_stop2_c { +class dDoor_stop2_c { +public: /* 806728B4 */ void calcMtx(fopAc_ac_c*); /* 80672970 */ void closeInit(fopAc_ac_c*, u8); /* 80672AE4 */ int closeProc(fopAc_ac_c*); @@ -25,7 +26,16 @@ struct dDoor_stop2_c { /* 0xB */ u8 field_0xb; }; -struct daMBdoorL1_c : public fopAc_ac_c { +/** + * @ingroup actors-doors + * @class daMBdoorL1_c + * @brief Mini Boss Door + * + * @details Multi-purpose door actor. This actor is used for mini boss doors in the game. + * + */ +class daMBdoorL1_c : public fopAc_ac_c { +public: enum DoorType { DOOR_TYPE_0, DOOR_TYPE_1, @@ -111,6 +121,7 @@ struct daMBdoorL1_c : public fopAc_ac_c { mAction = action; } +private: /* 0x568 */ request_of_phase_process_class mPhase1; /* 0x570 */ request_of_phase_process_class mPhase2; /* 0x578 */ request_of_phase_process_class mPhase3; @@ -144,4 +155,6 @@ struct daMBdoorL1_c : public fopAc_ac_c { /* 0x828 */ cXyz field_0x828; }; +STATIC_ASSERT(sizeof(daMBdoorL1_c) == 0x834); + #endif /* D_A_DOOR_MBOSSL1_H */ diff --git a/include/rel/d/a/door/d_a_door_push/d_a_door_push.h b/include/rel/d/a/door/d_a_door_push/d_a_door_push.h index e931f6912f..d85b573cb3 100644 --- a/include/rel/d/a/door/d_a_door_push/d_a_door_push.h +++ b/include/rel/d/a/door/d_a_door_push/d_a_door_push.h @@ -5,6 +5,14 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" +/** + * @ingroup actors-doors + * @class daDoorPush_c + * @brief Push Door + * + * @details + * + */ class daDoorPush_c : public dBgS_MoveBgActor { public: enum act_e { @@ -41,6 +49,7 @@ public: void setAction(u8 i_action) { mAction = i_action; } u32 getSceneNo() { return fopAcM_GetParamBit(this, 4, 6); } +// private: /* 0x5A0 */ request_of_phase_process_class mPhaseReq; /* 0x5A8 */ J3DModel* mpModel[2]; /* 0x5B0 */ dBgW* mpDoorBgW; @@ -64,6 +73,8 @@ public: /* 0x64C */ s16 field_0x64c; /* 0x64E */ s16 field_0x64e[2]; /* 0x654 */ cXyz mPosition; -}; // Size: 0x660 +}; + +STATIC_ASSERT(sizeof(daDoorPush_c) == 0x660); #endif /* D_A_DOOR_PUSH_H */ diff --git a/include/rel/d/a/door/d_a_door_shutter/d_a_door_shutter.h b/include/rel/d/a/door/d_a_door_shutter/d_a_door_shutter.h index dd6cbf3359..26a1c901f6 100644 --- a/include/rel/d/a/door/d_a_door_shutter/d_a_door_shutter.h +++ b/include/rel/d/a/door/d_a_door_shutter/d_a_door_shutter.h @@ -10,7 +10,8 @@ struct daDoor20_c; -struct dDoor_stop_c { +class dDoor_stop_c { +public: /* 804660F4 */ void calcMtx(daDoor20_c*); /* 804661B0 */ void closeInit(daDoor20_c*); /* 804662C0 */ int closeProc(daDoor20_c*); @@ -27,7 +28,16 @@ struct dDoor_stop_c { u8 field_0xb; }; -struct daDoor20_c : public fopAc_ac_c { +/** + * @ingroup actors-doors + * @class daDoor20_c + * @brief Sliding Door + * + * @details Multi-purpose door actor. This actor is used for vertical sliding doors in the game. + * + */ +class daDoor20_c : public fopAc_ac_c { +public: enum ActionType { ACTION_INIT, ACTION_WAIT, @@ -113,6 +123,7 @@ struct daDoor20_c : public fopAc_ac_c { bool checkFlag(u16 flag) { return field_0x68e & flag; } void setAction(u8 action) { mAction = action; } +private: /* 0x56C */ request_of_phase_process_class mPhase1; /* 0x574 */ request_of_phase_process_class mPhase2; /* 0x57C */ J3DModel* mModel1; @@ -158,4 +169,6 @@ struct daDoor20_c : public fopAc_ac_c { /* 0x8F8 */ u32 field_0x8f8; }; +STATIC_ASSERT(sizeof(daDoor20_c) == 0x8FC); + #endif /* D_A_DOOR_SHUTTER_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h b/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h index 6a1bfae31f..dbb7325068 100644 --- a/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h +++ b/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h @@ -5,8 +5,11 @@ /** * @ingroup actors-tags + * @class kytag00_class * @brief Twilight Tag 0 - * + * + * @details + * */ class kytag00_class : public fopAc_ac_c { public: @@ -26,4 +29,6 @@ public: /* 0x588 */ f32 field_0x588; }; +STATIC_ASSERT(sizeof(kytag00_class) == 0x58C); + #endif /* D_A_KYTAG00_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag01/d_a_kytag01.h b/include/rel/d/a/kytag/d_a_kytag01/d_a_kytag01.h index 2305ade918..9a1feac664 100644 --- a/include/rel/d/a/kytag/d_a_kytag01/d_a_kytag01.h +++ b/include/rel/d/a/kytag/d_a_kytag01/d_a_kytag01.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag01_class + * @brief Twilight Tag 1 + * + * @details + * + */ class kytag01_class : public fopAc_ac_c { public: /* 0x568 */ u8 field_0x568[0x588 - 0x568]; @@ -19,4 +27,6 @@ public: /* 0x59F */ u8 mStartPoint; }; +STATIC_ASSERT(sizeof(kytag01_class) == 0x5A0); + #endif /* D_A_KYTAG01_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h b/include/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h index 1691592414..587c43fff3 100644 --- a/include/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h +++ b/include/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h @@ -3,6 +3,14 @@ #include "d/com/d_com_inf_game.h" +/** + * @ingroup actors-tags + * @class kytag02_class + * @brief Twilight Tag 2 + * + * @details + * + */ class kytag02_class : public fopAc_ac_c { public: /* 0x568 */ cXyz field_0x568; @@ -12,4 +20,6 @@ public: /* 0x578 */ u8 field_0x578; }; +STATIC_ASSERT(sizeof(kytag02_class) == 0x57C); + #endif /* D_A_KYTAG02_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h b/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h index c3822aec00..ac08619fef 100644 --- a/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h +++ b/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h @@ -4,6 +4,14 @@ #include "f_op/f_op_actor_mng.h" #include "d/d_path.h" +/** + * @ingroup actors-tags + * @class kytag03_class + * @brief Smell Effect Generation Tag + * + * @details + * + */ class kytag03_class : public fopAc_ac_c { public: /* 0x568 */ dPath* mpPath; @@ -24,4 +32,6 @@ public: /* 0x58E */ u8 field_0x58e; }; +STATIC_ASSERT(sizeof(kytag03_class) == 0x590); + #endif /* D_A_KYTAG03_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h b/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h index 0ca0e0ba2a..ed010b3e7b 100644 --- a/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h +++ b/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag04_class + * @brief Twilight Portal Tag + * + * @details + * + */ class kytag04_class : public fopAc_ac_c { public: /* 0x568 */ J3DModel* mpModel; @@ -30,4 +38,6 @@ public: /* 0x5D1 */ u8 field_0x5d1; }; +STATIC_ASSERT(sizeof(kytag04_class) == 0x5D4); + #endif /* D_A_KYTAG04_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h b/include/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h index fe06d9bb13..e731fe33af 100644 --- a/include/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h +++ b/include/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor.h" +/** + * @ingroup actors-tags + * @class kytag05_class + * @brief Peep Hole Tag + * + * @details + * + */ class kytag05_class : public fopAc_ac_c { public: u8 getSceneListID() const { return mSceneListID; } @@ -10,6 +18,8 @@ public: /* 0x568 */ f32 field_0x568; /* 0x56C */ u8 field_0x56c; /* 0x56D */ u8 mSceneListID; -}; // Size: 0x570 +}; + +STATIC_ASSERT(sizeof(kytag05_class) == 0x570); #endif /* D_A_KYTAG05_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h b/include/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h index cc30b2b861..acd2c8ad91 100644 --- a/include/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h +++ b/include/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h @@ -4,6 +4,14 @@ #include "f_op/f_op_actor_mng.h" #include "d/d_path.h" +/** + * @ingroup actors-tags + * @class kytag06_class + * @brief Weather Handler Tag + * + * @details + * + */ class kytag06_class : public fopAc_ac_c { public: /* 0x568 */ dPath* mpPath; @@ -24,4 +32,6 @@ public: /* 0x598 */ u8 field_0x598; }; +STATIC_ASSERT(sizeof(kytag06_class) == 0x59C); + #endif /* D_A_KYTAG06_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h b/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h index 62545b30c4..e06ab2d299 100644 --- a/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h +++ b/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag07_class + * @brief Plight Setter Tag + * + * @details + * + */ class kytag07_class : public fopAc_ac_c { public: /* 0x568 */ LIGHT_INFLUENCE mLightInfluence; @@ -10,4 +18,6 @@ public: /* 0x58C */ u8 field_0x58c; }; +STATIC_ASSERT(sizeof(kytag07_class) == 0x590); + #endif /* D_A_KYTAG07_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h b/include/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h index a5a3f59639..ef4c6f3f5c 100644 --- a/include/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h +++ b/include/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag08_class + * @brief Fog Avoid Tag + * + * @details + * + */ class kytag08_class : public fopAc_ac_c { public: /* 0x568 */ J3DModel* mpModel; @@ -19,4 +27,6 @@ public: /* 0x5D8 */ u8 field_0x5d8; }; +STATIC_ASSERT(sizeof(kytag08_class) == 0x5DC); + #endif /* D_A_KYTAG08_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h b/include/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h index 51c6195893..228fb91427 100644 --- a/include/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h +++ b/include/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag09_class + * @brief Twilight Film Tag + * + * @details + * + */ class kytag09_class : public fopAc_ac_c { public: /* 0x568 */ J3DModel* mpModel; @@ -16,4 +24,6 @@ public: /* 0x5C5 */ u8 mType; }; +STATIC_ASSERT(sizeof(kytag09_class) == 0x5C8); + #endif /* D_A_KYTAG09_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h b/include/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h index 8ac6b3cf82..38741bdfc7 100644 --- a/include/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h +++ b/include/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h @@ -5,6 +5,14 @@ struct dPath; +/** + * @ingroup actors-tags + * @class kytag10_class + * @brief Lava Particles Tag + * + * @details + * + */ class kytag10_class : public fopAc_ac_c { public: /* 0x568 */ dPath* mpPath; @@ -19,4 +27,6 @@ public: /* 0x598 */ int mPathPoint; }; +STATIC_ASSERT(sizeof(kytag10_class) == 0x59C); + #endif /* D_A_KYTAG10_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h b/include/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h index 87c7fd25b0..b1bad2857b 100644 --- a/include/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h +++ b/include/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag11_class + * @brief Time Control Tag + * + * @details + * + */ class kytag11_class : public fopAc_ac_c { public: /* 0x568 */ u8 mNewTime; @@ -16,4 +24,6 @@ public: /* 0x573 */ u8 mOffSwitchNo; }; +STATIC_ASSERT(sizeof(kytag11_class) == 0x574); + #endif /* D_A_KYTAG11_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h b/include/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h index c820dd9126..fdfe133898 100644 --- a/include/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h +++ b/include/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h @@ -2,5 +2,27 @@ #define D_A_KYTAG12_H #include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +/** + * @ingroup actors-tags + * @class kytag12_class + * @brief Palace of Twilight - Dark Fog Tag + * + * @details + * + */ +class kytag12_class : public fopAc_ac_c { +public: + /* 0x568 */ u8 field_0x568[0x574 - 0x568]; + /* 0x574 */ u8 field_0x574; + /* 0x575 */ u8 field_0x575; + /* 0x576 */ u16 field_0x576; + /* 0x578 */ s16 field_0x578; + /* 0x57C */ cXyz field_0x57c[5]; +}; + +STATIC_ASSERT(sizeof(kytag12_class) == 0x5B8); + #endif /* D_A_KYTAG12_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.h b/include/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.h index 47f5de227e..b77b406d61 100644 --- a/include/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.h +++ b/include/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.h @@ -2,5 +2,27 @@ #define D_A_KYTAG13_H #include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +/** + * @ingroup actors-tags + * @class kytag13_class + * @brief Blowing Snow Tag + * + * @details + * + */ +class kytag13_class : public fopAc_ac_c { +public: + /* 0x568 */ u8 field_0x568[0x574 - 0x568]; + /* 0x574 */ f32 mSpeed; + /* 0x578 */ u16 mMax; + /* 0x57A */ u8 field_0x57a; + /* 0x57C */ u16 field_0x57c; + /* 0x57E */ u16 field_0x57e; +}; + +STATIC_ASSERT(sizeof(kytag13_class) == 0x580); + #endif /* D_A_KYTAG13_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h b/include/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h index 84b6ffaa30..6c1363137b 100644 --- a/include/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h +++ b/include/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor.h" +/** + * @ingroup actors-tags + * @class kytag14_class + * @brief Save Memory to File Tag + * + * @details + * + */ class kytag14_class : public fopAc_ac_c { public: /* 0x568 */ s8 mSaveRoomNo; @@ -13,5 +21,7 @@ public: /* 0x56F */ u8 mSwitchNo2; }; +STATIC_ASSERT(sizeof(kytag14_class) == 0x570); + #endif /* D_A_KYTAG14_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h b/include/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h index 345f2d2000..033e8e321e 100644 --- a/include/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h +++ b/include/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag15_class + * @brief Z Shake Tag + * + * @details + * + */ class kytag15_class : public fopAc_ac_c { public: /* 0x568 */ J3DModel* mpModel; @@ -13,4 +21,6 @@ public: /* 0x590 */ f32 field_0x590; }; +STATIC_ASSERT(sizeof(kytag15_class) == 0x594); + #endif /* D_A_KYTAG15_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h b/include/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h index 16336db8f3..f3355aa04d 100644 --- a/include/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h +++ b/include/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h @@ -3,6 +3,14 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag16_class + * @brief Pikari Tag + * + * @details + * + */ class kytag16_class : public fopAc_ac_c { public: /* 0x568 */ f32 field_0x568; @@ -22,4 +30,6 @@ public: /* 0x58D */ u8 field_0x58d; }; +STATIC_ASSERT(sizeof(kytag16_class) == 0x590); + #endif /* D_A_KYTAG16_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h b/include/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h index 0cabf926a1..3f81423ccf 100644 --- a/include/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h +++ b/include/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h @@ -4,9 +4,19 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @class kytag17_class + * @brief Light Mask Tag + * + * @details + * + */ class kytag17_class : public fopAc_ac_c { public: /* 0x568 */ u8 mParameters; }; +STATIC_ASSERT(sizeof(kytag17_class) == 0x56C); + #endif /* D_A_KYTAG17_H */ diff --git a/include/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h b/include/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h index 673e35f0d2..b6fe3920c6 100644 --- a/include/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h +++ b/include/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h @@ -1,6 +1,93 @@ #ifndef D_A_NPC_ARU_H #define D_A_NPC_ARU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Aru_c + * @brief Fado + * + * @details + * + */ +class daNpc_Aru_c : public fopAc_ac_c { +public: + /* 8095178C */ ~daNpc_Aru_c(); + /* 809518C4 */ void create(); + /* 80951BB0 */ void CreateHeap(); + /* 80951FDC */ void Delete(); + /* 80952010 */ void Execute(); + /* 80952030 */ void Draw(); + /* 809520C4 */ void createHeapCallBack(fopAc_ac_c*); + /* 809520E4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8095213C */ void srchCow(void*, void*); + /* 809521E4 */ void srchUDoor(void*, void*); + /* 80952280 */ void chkThrust(fopAc_ac_c*); + /* 80952400 */ void getCowP(int); + /* 8095253C */ void getUDoor_l_P(); + /* 8095260C */ void getUDoor_r_P(); + /* 809526DC */ void getType(); + /* 80952740 */ void isDelete(); + /* 809527CC */ void reset(); + /* 80952B00 */ void afterJntAnm(int); + /* 80952B84 */ void setParam(); + /* 80952CE8 */ void checkChangeEvt(); + /* 80952D9C */ void setAfterTalkMotion(); + /* 80952E64 */ void srchActors(); + /* 809530DC */ void evtTalk(); + /* 8095317C */ void evtCutProc(); + /* 80953244 */ void action(); + /* 809533D8 */ void beforeMove(); + /* 8095349C */ void setAttnPos(); + /* 80953798 */ void setCollision(); + /* 809538F0 */ bool drawDbgInfo(); + /* 809538F8 */ void selectAction(); + /* 80953AB8 */ void chkAction(int (daNpc_Aru_c::*)(void*)); + /* 80953AE4 */ void setAction(int (daNpc_Aru_c::*)(void*)); + /* 80953B8C */ void chkBullRunningStage(); + /* 80953C08 */ void chkSkipFenceStage(); + /* 80953C84 */ void srchActorDirection(fopAc_ac_c*); + /* 80953D58 */ void adjustMoveDir(); + /* 809543F8 */ void duck(int); + /* 80954744 */ void lookround(s16); + /* 80954894 */ void cutRideOnHorse(int); + /* 80954A5C */ void cutGotoBullRunningStage(int); + /* 80954C0C */ void cutEndBullRunning(int); + /* 80954F4C */ void cutGotoSkipFenceStage(int); + /* 80955080 */ void cutSpeakTo(int); + /* 8095533C */ void cutNoEntrance(int); + /* 80955608 */ void wait(void*); + /* 80955B48 */ void bullRunning(void*); + /* 80955DE8 */ void skipFence(void*); + /* 80955F98 */ void talk(void*); + /* 809574E8 */ daNpc_Aru_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809575B4 */ s32 getEyeballMaterialNo(); + /* 809575BC */ s32 getHeadJointNo(); + /* 809575C4 */ s32 getNeckJointNo(); + /* 809575CC */ bool getBackboneJointNo(); + /* 809575D4 */ void checkChangeJoint(int); + /* 809575E4 */ void checkRemoveJoint(int); + /* 809575F4 */ s32 getFootLJointNo(); + /* 809575FC */ s32 getFootRJointNo(); + + static void* mCutNameList[7]; + static u8 mCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0xfd8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Aru_c) == 0xfd8); + +class daNpc_Aru_Param_c { +public: + /* 80957604 */ ~daNpc_Aru_Param_c(); + + static u8 const m[160]; +}; + #endif /* D_A_NPC_ARU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h b/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h index be2bc7bb44..51ded262ea 100644 --- a/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h +++ b/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h @@ -5,8 +5,11 @@ /** * @ingroup actors-npcs + * @class daNpcAsh_c * @brief Ashei - * + * + * @details + * */ class daNpcAsh_c : public daNpcF_c { public: diff --git a/include/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h b/include/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h index f77a6df217..020e95198b 100644 --- a/include/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h +++ b/include/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h @@ -1,6 +1,61 @@ #ifndef D_A_NPC_ASHB_H #define D_A_NPC_ASHB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcAshB_c + * @brief Ashei (Yeti Garb) + * + * @details + * + */ +class daNpcAshB_c : public fopAc_ac_c { +public: + /* 8095DE4C */ daNpcAshB_c(); + /* 8095E060 */ ~daNpcAshB_c(); + /* 8095E224 */ void Create(); + /* 8095E4A0 */ void CreateHeap(); + /* 8095E914 */ void Delete(); + /* 8095E948 */ void Execute(); + /* 8095E96C */ void Draw(); + /* 8095E9C8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 8095EB94 */ void createHeapCallBack(fopAc_ac_c*); + /* 8095EBB4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8095EC00 */ void setExpressionAnm(int, bool); + /* 8095EE00 */ void setExpressionBtp(int); + /* 8095EEE0 */ void setMotionAnm(int, f32); + /* 8095F0A4 */ void reset(); + /* 8095F21C */ void setAction(bool (daNpcAshB_c::*)(void*)); + /* 8095F2C4 */ void wait(void*); + /* 8095FC70 */ void setMotion(int, f32, int); + /* 8095FD34 */ void setExpression(int, f32); + /* 8095FD9C */ void talk(void*); + /* 809602E0 */ void demo(void*); + /* 809604C8 */ void EvCut_Appear(int); + /* 80960A60 */ void setParam(); + /* 80960AE8 */ void main(); + /* 80960D64 */ void playMotion(); + /* 80961188 */ void ctrlBtk(); + /* 80961264 */ void setAttnPos(); + /* 80961574 */ void lookat(); + /* 80961770 */ void drawOtherMdls(); + /* 809617F8 */ bool drawDbgInfo(); + + static u8 mEvtSeqList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xdf0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcAshB_c) == 0xdf0); + +class daNpcAshB_Param_c { +public: + /* 80962078 */ ~daNpcAshB_Param_c(); + + static u8 const m[112]; +}; + #endif /* D_A_NPC_ASHB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h b/include/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h index cb901b354b..8c7d3fa6d5 100644 --- a/include/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h +++ b/include/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h @@ -1,6 +1,80 @@ #ifndef D_A_NPC_BANS_H #define D_A_NPC_BANS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Bans_c + * @brief Barnes + * + * @details + * + */ +class daNpc_Bans_c : public fopAc_ac_c { +public: + /* 809628CC */ ~daNpc_Bans_c(); + /* 80962AA0 */ void create(); + /* 80962D6C */ void CreateHeap(); + /* 80963338 */ void Delete(); + /* 8096336C */ void Execute(); + /* 80963444 */ void Draw(); + /* 809634E0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80963500 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80963558 */ void getType(); + /* 809635BC */ void isDelete(); + /* 809636C0 */ void reset(); + /* 80963840 */ void afterJntAnm(int); + /* 809638CC */ void setParam(); + /* 80963A7C */ void checkChangeEvt(); + /* 80963B30 */ void setAfterTalkMotion(); + /* 80963BA8 */ void srchActors(); + /* 80963DB0 */ void evtTalk(); + /* 80963EDC */ void evtCutProc(); + /* 80963FA4 */ void action(); + /* 80964148 */ void beforeMove(); + /* 80964228 */ void setAttnPos(); + /* 809646E0 */ void setCollision(); + /* 80964994 */ bool drawDbgInfo(); + /* 8096499C */ void drawOtherMdl(); + /* 80964AD8 */ void setScoopAnm(int, int, f32); + /* 80964B9C */ void afterSetMotionAnm(int, int, f32, int); + /* 80964BD0 */ void selectAction(); + /* 80964C4C */ void chkAction(int (daNpc_Bans_c::*)(void*)); + /* 80964C78 */ void setAction(int (daNpc_Bans_c::*)(void*)); + /* 80964D20 */ void checkPlayerIn2ndFloorOfBombShop(); + /* 80964DD0 */ void orderAngerEvt(); + /* 80964EB0 */ void getKMsgTagP(); + /* 80964F48 */ void setPrtcls(); + /* 80964FEC */ void cutAnger(int); + /* 809658F8 */ void cutPurchase(int); + /* 80965CCC */ void wait(void*); + /* 809661F0 */ void tend(void*); + /* 80966888 */ void talk(void*); + /* 80966B24 */ void shop(void*); + /* 80967AC4 */ daNpc_Bans_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80967BE4 */ s32 getEyeballMaterialNo(); + /* 80967BEC */ s32 getHeadJointNo(); + /* 80967BF4 */ s32 getNeckJointNo(); + /* 80967BFC */ bool getBackboneJointNo(); + /* 80967C04 */ void checkChangeJoint(int); + /* 80967C14 */ void checkRemoveJoint(int); + + static void* mCutNameList[4]; + static u8 mCutList[48]; +private: + /* 0x568 */ u8 field_0x568[0x1270 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Bans_c) == 0x1270); + +class daNpc_Bans_Param_c { +public: + /* 80967C24 */ ~daNpc_Bans_Param_c(); + + static u8 const m[144]; +}; #endif /* D_A_NPC_BANS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h b/include/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h index 0865e72b41..8203b54ee7 100644 --- a/include/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h +++ b/include/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h @@ -1,6 +1,98 @@ #ifndef D_A_NPC_BESU_H #define D_A_NPC_BESU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Besu_c + * @brief Beth + * + * @details + * + */ +class daNpc_Besu_c : public fopAc_ac_c { +public: + /* 80536E4C */ ~daNpc_Besu_c(); + /* 8053701C */ void create(); + /* 805372FC */ void CreateHeap(); + /* 80537914 */ void Delete(); + /* 80537948 */ void Execute(); + /* 80537968 */ void Draw(); + /* 805379FC */ void createHeapCallBack(fopAc_ac_c*); + /* 80537A1C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80537A74 */ void getType(); + /* 80537B34 */ void isDelete(); + /* 80537DE4 */ void reset(); + /* 80537FD0 */ void chkNurse(); + /* 80537FFC */ void chkBesu3(); + /* 80538028 */ void afterJntAnm(int); + /* 805380A4 */ void setParam(); + /* 805382D0 */ void checkChangeEvt(); + /* 80538490 */ void setAfterTalkMotion(); + /* 8053853C */ void srchActors(); + /* 805387D0 */ void evtTalk(); + /* 80538870 */ void evtCutProc(); + /* 80538938 */ void action(); + /* 80538B54 */ void beforeMove(); + /* 80538C18 */ void setAttnPos(); + /* 805391B8 */ void setCollision(); + /* 80539494 */ bool drawDbgInfo(); + /* 8053949C */ void drawOtherMdl(); + /* 805395F4 */ void setCupAnm(int, int, f32); + /* 805396C4 */ void afterSetMotionAnm(int, int, f32, int); + /* 805396F8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); + /* 805397B0 */ void changeAnm(int*, int*); + /* 80539840 */ void changeBck(int*, int*); + /* 805398DC */ void changeBtp(int*, int*); + /* 80539968 */ void changeBtk(int*, int*); + /* 80539994 */ void selectAction(); + /* 80539ACC */ void chkAction(int (daNpc_Besu_c::*)(void*)); + /* 80539AF8 */ void setAction(int (daNpc_Besu_c::*)(void*)); + /* 80539BA0 */ void mop(int, int); + /* 80539CF4 */ void cutConversationAboutSaru(int); + /* 80539E48 */ void cutConversationAboutPachinko(int); + /* 8053A45C */ void cutConversationAboutWoodSwd(int); + /* 8053A7A0 */ void cutSwdTutorial(int); + /* 8053AA6C */ void cutFindMonkey(int); + /* 8053AF5C */ void cutGetWoodSwd(int); + /* 8053B058 */ void cutCacaricoConversation(int); + /* 8053B250 */ void cutSurprise(int); + /* 8053B530 */ void cutConversationInHotel(int); + /* 8053B820 */ void cutConversationAboutDeathMt(int); + /* 8053BA60 */ void cutConversationAboutGoron(int); + /* 8053BD18 */ void cutNurse(int); + /* 8053BE84 */ void cutClothTry(int); + /* 8053BF60 */ void cutThankYou(int); + /* 8053C08C */ void wait(void*); + /* 8053CAA0 */ void swdTutorial(void*); + /* 8053CBB8 */ void nurse(void*); + /* 8053CF78 */ void giveHotWater(void*); + /* 8053D078 */ void talk(void*); + /* 8053E588 */ daNpc_Besu_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 8053E6A8 */ s32 getEyeballMaterialNo(); + /* 8053E6B0 */ s32 getHeadJointNo(); + /* 8053E6B8 */ s32 getNeckJointNo(); + /* 8053E6C0 */ bool getBackboneJointNo(); + /* 8053E6C8 */ void checkChangeJoint(int); + /* 8053E6D8 */ void checkRemoveJoint(int); + + static void* mCutNameList[15]; + static u8 mCutList[180]; + +private: + /* 0x568 */ u8 field_0x568[0x1138 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Besu_c) == 0x1138); + +class daNpc_Besu_Param_c { +public: + /* 8053E6E8 */ ~daNpc_Besu_Param_c(); + + static u8 const m[144]; +}; #endif /* D_A_NPC_BESU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h b/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h index ccb6708548..0f4cdeaf0e 100644 --- a/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h +++ b/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h @@ -1,5 +1,88 @@ #ifndef D_A_NPC_BLUE_NS_H #define D_A_NPC_BLUE_NS_H +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcBlueNS_c + * @brief Shadow Beast (Twili) + * + * @details + * + */ +class daNpcBlueNS_c : public fopAc_ac_c { +public: + /* 8096896C */ daNpcBlueNS_c(); + /* 80968B80 */ ~daNpcBlueNS_c(); + /* 80968D44 */ void Create(); + /* 80968FE4 */ void CreateHeap(); + /* 80969138 */ void isDelete(); + /* 809691A8 */ void Delete(); + /* 809691DC */ void Execute(); + /* 80969200 */ void _Execute(); + /* 80969468 */ void callEvt_changeYami(); + /* 80969504 */ void create_Yamijin(int); + /* 809695F0 */ void col_check(); + /* 80969698 */ void holyball_check_main(fopAc_ac_c*); + /* 80969870 */ void Draw(); + /* 809699D0 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80969B68 */ void createHeapCallBack(fopAc_ac_c*); + /* 80969B88 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80969BD4 */ void setParam(); + /* 80969C48 */ void srchActor(); + /* 80969C90 */ void srchHollyBall(); + /* 80969CF8 */ void srchTagYami(); + /* 80969D60 */ void _search_Tag(void*, void*); + /* 80969DE4 */ void _search_HollyBall_Y(void*, void*); + /* 80969E9C */ void _search_HollyBall_G(void*, void*); + /* 80969F54 */ void main(); + /* 8096A090 */ void setAttnPos(); + /* 8096A238 */ void setMotionAnm(int, f32); + /* 8096A308 */ void setMotion(int, f32, int); + /* 8096A350 */ bool drawDbgInfo(); + /* 8096A358 */ void reset(); + /* 8096A518 */ void playMotion(); + /* 8096A750 */ void setAction(int (daNpcBlueNS_c::*)(int)); + /* 8096A7F8 */ void setLookMode(int); + /* 8096A81C */ void lookat(); + /* 8096A9FC */ void step(s16, int); + /* 8096AAF0 */ void chkFindPlayer(); + /* 8096ABD4 */ void wait(int); + /* 8096AD70 */ void down(int); + /* 8096AE5C */ void talk(int); + /* 8096AFC8 */ void demo(int); + /* 8096B204 */ void ChgPtclDisp(); + /* 8096B320 */ void downSE(); + /* 8096B3D8 */ void lightsowrdSE(); + /* 8096B490 */ void appearSE(); + /* 8096B548 */ void _Evt_ChgYami_Chibi(int); + /* 8096B5F0 */ void _Evt_ChgYami_Chibi_CutInit(int const&); + /* 8096B688 */ void _Evt_ChgYami_Chibi_CutMain(int const&); + /* 8096B7B8 */ void _Evt_ChgYami_Debu(int); + /* 8096B860 */ void _Evt_ChgYami_Debu_CutInit(int const&); + /* 8096B8F8 */ void _Evt_ChgYami_Debu_CutMain(int const&); + /* 8096BA28 */ void _Evt_ChgYami_Noppo(int); + /* 8096BAD0 */ void _Evt_ChgYami_Noppo_CutInit(int const&); + /* 8096BB68 */ void _Evt_ChgYami_Noppo_CutMain(int const&); + /* 8096BC98 */ void _Evt_ChgYami_STNoppo(int); + /* 8096BD40 */ void _Evt_ChgYami_STNoppo_CutInit(int const&); + /* 8096BDD8 */ void _Evt_ChgYami_STNoppo_CutMain(int const&); + /* 8096C8B0 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[84]; + +private: + /* 0x568 */ u8 field_0x568[0xe14 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcBlueNS_c) == 0xe14); + +class daNpcBlueNS_Param_c { +public: + /* 8096C8B4 */ ~daNpcBlueNS_Param_c(); + + static u8 const m[112]; +}; + #endif /* D_A_NPC_BLUE_NS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h b/include/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h index a2bb2d7b90..4d6608b4e3 100644 --- a/include/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h +++ b/include/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h @@ -1,6 +1,84 @@ #ifndef D_A_NPC_BOU_H #define D_A_NPC_BOU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Bou_c + * @brief Mayor Bo + * + * @details + * + */ +class daNpc_Bou_c : public fopAc_ac_c { +public: + /* 8096CF8C */ ~daNpc_Bou_c(); + /* 8096D0D8 */ void create(); + /* 8096D38C */ void CreateHeap(); + /* 8096D7B8 */ void Delete(); + /* 8096D7EC */ void Execute(); + /* 8096D80C */ void Draw(); + /* 8096D8A0 */ void createHeapCallBack(fopAc_ac_c*); + /* 8096D8C0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8096D918 */ void srchCow(void*, void*); + /* 8096D9B4 */ void getCowP(); + /* 8096DA78 */ void getType(); + /* 8096DADC */ void isDelete(); + /* 8096DBBC */ void reset(); + /* 8096DD44 */ void afterJntAnm(int); + /* 8096DDC8 */ void setParam(); + /* 8096DF9C */ void checkChangeEvt(); + /* 8096E0EC */ void setAfterTalkMotion(); + /* 8096E18C */ void srchActors(); + /* 8096E27C */ void evtTalk(); + /* 8096E31C */ bool evtEndProc(); + /* 8096E324 */ void evtCutProc(); + /* 8096E3EC */ void action(); + /* 8096E7E0 */ void beforeMove(); + /* 8096E8A4 */ void setAttnPos(); + /* 8096EB14 */ void setCollision(); + /* 8096EC6C */ bool drawDbgInfo(); + /* 8096EC74 */ void changeAnm(int*, int*); + /* 8096ECC0 */ void selectAction(); + /* 8096ED3C */ void chkAction(int (daNpc_Bou_c::*)(void*)); + /* 8096ED68 */ void setAction(int (daNpc_Bou_c::*)(void*)); + /* 8096EE10 */ void cutWildGoat(int); + /* 8096F2E4 */ void cutWildGoatSuccess(int); + /* 8096F510 */ void cutWildGoatFailure(int); + /* 8096F758 */ void cutSpeakTo(int); + /* 8096F9A4 */ void cutConversationWithBou(int); + /* 8096FB78 */ void cutConfidentialConversation(int); + /* 8096FE40 */ void cutFindWolf(int); + /* 80970278 */ void cutMeetingAgain(int); + /* 809709EC */ void wait(void*); + /* 80970DFC */ void talkwithJagar(void*); + /* 80970F9C */ void talk(void*); + /* 809726D4 */ daNpc_Bou_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809727B4 */ bool getEyeballMaterialNo(); + /* 809727BC */ s32 getHeadJointNo(); + /* 809727C4 */ s32 getNeckJointNo(); + /* 809727CC */ bool getBackboneJointNo(); + /* 809727D4 */ void checkChangeJoint(int); + /* 809727E4 */ void checkRemoveJoint(int); + + static void* mCutNameList[9]; + static u8 mCutList[108]; + +private: + /* 0x568 */ u8 field_0x568[0xffc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Bou_c) == 0xffc); + +class daNpc_Bou_Param_c { +public: + /* 809727F4 */ ~daNpc_Bou_Param_c(); + + static u8 const m[156]; +}; + #endif /* D_A_NPC_BOU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h b/include/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h index bebdcad26c..32c7b269fe 100644 --- a/include/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h +++ b/include/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h @@ -1,6 +1,67 @@ #ifndef D_A_NPC_BOUS_H #define D_A_NPC_BOUS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcBouS_c + * @brief Mayor Bo (inside house) + * + * @details + * + */ +class daNpcBouS_c : public fopAc_ac_c { +public: + /* 8097354C */ daNpcBouS_c(); + /* 80973760 */ ~daNpcBouS_c(); + /* 80973948 */ void Create(); + /* 80973B9C */ void CreateHeap(); + /* 80973FC8 */ void Delete(); + /* 80973FFC */ void Execute(); + /* 80974020 */ void Draw(); + /* 80974090 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809742BC */ void createHeapCallBack(fopAc_ac_c*); + /* 809742DC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80974328 */ void setExpressionAnm(int, bool); + /* 80974514 */ void setExpressionBtp(int); + /* 809745F4 */ void setMotionAnm(int, f32); + /* 80974730 */ void reset(); + /* 809748F0 */ void setAction(bool (daNpcBouS_c::*)(void*)); + /* 80974A04 */ void checkInstructionTag(fopAc_ac_c*); + /* 80974A28 */ void wait(void*); + /* 809750BC */ void setMotion(int, f32, int); + /* 80975104 */ void setExpression(int, f32); + /* 80975130 */ void talk(void*); + /* 80975748 */ void demo(void*); + /* 80975930 */ void instruction(void*); + /* 80975ED8 */ void checkIntroDemoStart(); + /* 80975FDC */ void EvCut_BousIntroSumo1(int); + /* 80976284 */ void EvCut_BousIntroSumo2(int); + /* 80976654 */ void EvCut_BousIntroSumo3(int); + /* 80976C00 */ void setParam(); + /* 80976C9C */ void main(); + /* 80976EEC */ void playMotion(); + /* 80977368 */ void ctrlBtk(); + /* 80977444 */ void setAttnPos(); + /* 809778D8 */ void lookat(); + /* 80977AB8 */ bool drawDbgInfo(); + /* 80977AC0 */ void drawOtherMdls(); + /* 809783A0 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xe00 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcBouS_c) == 0xe00); + +class daNpcBouS_Param_c { +public: + /* 809783A4 */ ~daNpcBouS_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_BOUS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h b/include/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h index c50f776776..adec512b35 100644 --- a/include/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h +++ b/include/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h @@ -1,6 +1,142 @@ #ifndef D_A_NPC_CDN3_H #define D_A_NPC_CDN3_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" +#include "rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h" + +/** + * @ingroup actors-npcs + * @class daNpcCdn3_c + * @brief Hylian Adult + * + * @details + * + */ +class daNpcCdn3_c : public fopAc_ac_c { +public: + + struct Mode_e {}; + + /* 80978DD4 */ void setAction(daNpcCdn3_c::Mode_e); + /* 80978E18 */ void callInit(); + /* 80978E40 */ void callExecute(); + /* 80978E6C */ void initWait(); + /* 80978ED0 */ void executeWait(); + /* 80979080 */ void initPath(); + /* 80979144 */ void executePath(); + /* 80979A34 */ void initTalk(); + /* 80979B2C */ void executeTalk(); + /* 80979F08 */ void initEscape(); + /* 8097A028 */ void executeEscape(); + /* 8097A398 */ void initFear(); + /* 8097A518 */ void executeFear(); + /* 8097A60C */ void initFear2(); + /* 8097A6AC */ void executeFear2(); + /* 8097A724 */ void initFight(); + /* 8097A7E0 */ void executeFight(); + /* 8097A960 */ void initRelief(); + /* 8097A9E4 */ void executeRelief(); + /* 8097ABDC */ void setAngle(); + /* 8097ABE8 */ void pathMoveF(); + /* 8097AF14 */ void ctrlMsgAnm(); + /* 8097B04C */ void searchNextScheduleTagSub(fopAc_ac_c*); + /* 8097B194 */ void searchFirstScheduleTagSub(fopAc_ac_c*); + /* 8097B288 */ void checkSchedule(); + /* 8097B38C */ void setSchedule(daTagSchedule_c*); + /* 8097B5A8 */ void isInShop(); + /* 8097B60C */ void isChairStyle(); + /* 8097B684 */ void isNoTurnTalk(); + /* 8097B6D0 */ void waita(void*); + /* 8097B754 */ void talka(void*); + /* 8097B7D8 */ void waitwall(void*); + /* 8097B85C */ void talkwall(void*); + /* 8097B8E0 */ void talkbwall(void*); + /* 8097B964 */ void talkb(void*); + /* 8097B9E8 */ void talkc(void*); + /* 8097BA6C */ void waitb(void*); + /* 8097BAF0 */ void sitwaita(void*); + /* 8097BB74 */ void sittalka(void*); + /* 8097BBF8 */ void sittalkab(void*); + /* 8097BC7C */ void sitwaitb(void*); + /* 8097BD00 */ void sittalkb(void*); + /* 8097BD84 */ void sittalkbb(void*); + /* 8097BE08 */ void looka(void*); + /* 8097BE8C */ void lookb(void*); + /* 8097BF10 */ void playm(void*); + /* 8097C070 */ void turnr(void*); + /* 8097C12C */ void turnl(void*); + /* 8097C1E8 */ void walka(void*); + /* 8097C250 */ void walkb(void*); + /* 8097C2B8 */ void runa(void*); + /* 8097C320 */ void runb(void*); + /* 8097C388 */ void browsea(void*); + /* 8097C40C */ void browseb(void*); + /* 8097C490 */ void dance(void*); + /* 8097C5B0 */ void ladytalka(void*); + /* 8097C634 */ void ladytalkb(void*); + /* 8097C6B8 */ void normtalka(void*); + /* 8097C73C */ void normtalkb(void*); + /* 8097C7C0 */ void sellme(void*); + /* 8097C844 */ void sing(void*); + /* 8097C910 */ void create(); + /* 8097CC58 */ void create_init(); + /* 8097D078 */ void setMtx(); + /* 8097D120 */ void lookat(); + /* 8097D684 */ ~daNpcCdn3_c(); + /* 8097D748 */ void execute(); + /* 8097DABC */ void checkTimeSchedule(); + + static u8 ActionTable[192]; + static void* m_funcTbl[44]; + static u8 m_seq00_funcTbl[24]; + static u8 m_seq01_funcTbl[24]; + static u8 m_seq02_funcTbl[24]; + static u8 m_seq03_funcTbl[24]; + static u8 m_seq04_funcTbl[24]; + static u8 m_seq05_funcTbl[48]; + static u8 m_seq06_funcTbl[48]; + static u8 m_seq07_funcTbl[24]; + static u8 m_seq08_funcTbl[84]; + static u8 m_seq09_funcTbl[24]; + static u8 m_seq10_funcTbl[24]; + static u8 m_seq11_funcTbl[72]; + static u8 m_seq12_funcTbl[24]; + static u8 m_seq13_funcTbl[72]; + static u8 m_seq14_funcTbl[24]; + static u8 m_seq15_funcTbl[24]; + static u8 m_seq16_funcTbl[84]; + static u8 m_seq17_funcTbl[24]; + static u8 m_seq18_funcTbl[24]; + static u8 m_seq19_funcTbl[84]; + static u8 m_seq20_funcTbl[24]; + static u8 m_seq21_funcTbl[24]; + static u8 m_seq22_funcTbl[48]; + static u8 m_seq23_funcTbl[84]; + static u8 m_seq24_funcTbl[60]; + static u8 m_seq25_funcTbl[84]; + static u8 m_seq26_funcTbl[36]; + static u8 m_seq27_funcTbl[24]; + static u8 m_seq28_funcTbl[36]; + static u8 m_seq29_funcTbl[36]; + static u8 m_seq30_funcTbl[72]; + static u8 m_seq31_funcTbl[72]; + static u8 m_seq32_funcTbl[84]; + static u8 m_seq33_funcTbl[84]; + static u8 m_seq34_funcTbl[108]; + static u8 m_seq35_funcTbl[24]; + static u8 m_seq36_funcTbl[48]; + static u8 m_seq37_funcTbl[24]; + static u8 m_seq38_funcTbl[24]; + static u8 m_seq39_funcTbl[24]; + static u8 m_seq40_funcTbl[36]; + static u8 m_seq41_funcTbl[24]; + static u8 m_seq42_funcTbl[24]; + static u8 m_seq43_funcTbl[36]; + +private: + /* 0x568 */ u8 field_0x568[0xb9c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcCdn3_c) == 0xb9c); + #endif /* D_A_NPC_CDN3_H */ diff --git a/include/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h b/include/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h index 4d382e0df8..22d06f0dd9 100644 --- a/include/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h +++ b/include/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h @@ -1,6 +1,78 @@ #ifndef D_A_NPC_CHAT_H #define D_A_NPC_CHAT_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcChat_c + * @brief NPC Chat + * + * @details + * + */ +class daNpcChat_c : public fopAc_ac_c { +public: + /* 8098084C */ daNpcChat_c(); + /* 80980A60 */ ~daNpcChat_c(); + /* 80980C1C */ void NpcCreate(int); + /* 80980E20 */ void getObjNum(); + /* 80980F88 */ void ObjCreate(int); + /* 80980FC8 */ void ChairCreate(f32); + /* 80981108 */ void isM_(); + /* 80981140 */ void loadResrc(int, int); + /* 80981280 */ void getNpcMdlDataP(int); + /* 809812FC */ void getObjMdlDataP(int); + /* 80981374 */ void getTexAnmP(int); + /* 809813E8 */ void removeResrc(int, int); + /* 809814DC */ void setAttention(int); + /* 80981E90 */ void Create(); + /* 809822A0 */ void CreateHeap(); + /* 809823B4 */ void Delete(); + /* 809823E8 */ void Execute(); + /* 809824CC */ void Draw(); + /* 8098250C */ void draw(int, int, f32, _GXColorS10*, int); + /* 80982780 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80982A98 */ void createHeapCallBack(fopAc_ac_c*); + /* 80982AB8 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80982B60 */ void searchGroup(); + /* 80982C10 */ void appearTimeCheck(); + /* 80982D20 */ void appearCheck(); + /* 80982EB4 */ void setParam(); + /* 80982F4C */ void main(); + /* 80982FA4 */ void setAttnPos(); + /* 809830EC */ void setExpressionBtp(int); + /* 80983168 */ void setMotionAnm(int, f32); + /* 80983584 */ void setMotion(int, f32, int); + /* 809835C8 */ bool drawDbgInfo(); + /* 809835D0 */ void drawOtherMdls(); + /* 809837A4 */ void getTalkMotionNo(); + /* 809837C0 */ void getLookPlayerCheck(); + /* 809837EC */ void reset(); + /* 809839E0 */ void playMotion(); + /* 80984DD0 */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); + /* 80984F34 */ void setAction(bool (daNpcChat_c::*)(void*)); + /* 80984FDC */ void step(s16, int); + /* 809850D0 */ void setTalkMember(daNpcChat_c*); + /* 80985104 */ void wait(void*); + /* 8098552C */ void fear(void*); + /* 809856C8 */ void talk(void*); + /* 80985A84 */ void demo(void*); + /* 8098692C */ void adjustShapeAngle(); + + static u8 mEvtSeqList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe54 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcChat_c) == 0xe54); + +class daNpcChat_Param_c { +public: + /* 80986930 */ ~daNpcChat_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_CHAT_H */ diff --git a/include/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h b/include/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h index a8473a61c2..7e6179bc2e 100644 --- a/include/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h +++ b/include/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h @@ -1,6 +1,99 @@ #ifndef D_A_NPC_CHIN_H #define D_A_NPC_CHIN_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcChin_c + * @brief Purlo + * + * @details + * + */ +class daNpcChin_c : public fopAc_ac_c { +public: + class _SpotLight_c { + public: + /* 8098BF0C */ void loadModel(); + /* 8098C000 */ void setMtx(); + /* 8098C060 */ void draw(dKy_tevstr_c*); + }; + + /* 8098C104 */ daNpcChin_c(); + /* 8098C2D8 */ ~daNpcChin_c(); + /* 8098C510 */ void Create(); + /* 8098C858 */ void CreateHeap(); + /* 8098CCE4 */ void Delete(); + /* 8098CD18 */ void Execute(); + /* 8098CD74 */ void Draw(); + /* 8098CDE8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 8098CFB8 */ void createHeapCallBack(fopAc_ac_c*); + /* 8098CFD8 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8098D024 */ void setParam(); + /* 8098D0F8 */ void main(); + /* 8098D198 */ void ctrlBtk(); + /* 8098D26C */ void setAttnPos(); + /* 8098D58C */ void setExpressionAnm(int, bool); + /* 8098D848 */ void setExpressionBtp(int); + /* 8098D938 */ void setMotionAnm(int, f32); + /* 8098DB44 */ void setExpression(int, f32); + /* 8098DB70 */ void setMotion(int, f32, int); + /* 8098DBB4 */ bool drawDbgInfo(); + /* 8098DBBC */ void reset(); + /* 8098DCD0 */ void playExpression(); + /* 8098E04C */ void playMotion(); + /* 8098E5C4 */ void setAction(bool (daNpcChin_c::*)(void*)); + /* 8098E66C */ void setLookMode(int); + /* 8098E690 */ void lookat(); + /* 8098E870 */ void step(s16, int, int); + /* 8098EA00 */ void chkFindPlayer(); + /* 8098EACC */ void setExpressionTalkAfter(); + /* 8098EBE8 */ void wait(void*); + /* 8098EFE4 */ void talk(void*); + /* 8098F208 */ void _talk_motion(); + /* 8098F2BC */ void demo(void*); + /* 8098F414 */ void watch_game(void*); + /* 8098F758 */ void Event_DT(); + /* 8098FB3C */ void isGameEnd(int&); + /* 8098FD38 */ void _chkGameClear(); + /* 8098FD5C */ void SphereReset(); + /* 8098FD80 */ void _Evt_GameStart(int); + /* 8098FE28 */ void _Evt_GameStart_CutInit(int const&); + /* 8098FF30 */ void _Evt_GameStart_CutMain(int const&); + /* 8098FFD0 */ void _Evt_GameFailed(int); + /* 80990078 */ void _Evt_GameFailed_CutInit(int const&); + /* 80990174 */ void _Evt_GameFailed_CutMain(int const&); + /* 80990218 */ void _Evt_GameSucceed(int); + /* 809902C0 */ void _Evt_GameSucceed_CutInit(int const&); + /* 8099041C */ void _Evt_GameSucceed_CutMain(int const&); + /* 809905C4 */ void _Evt_SelectGiveUp(int); + /* 8099066C */ void _Evt_SelectGiveUp_CutInit(int const&); + /* 8099071C */ void _Evt_SelectGiveUp_CutMain(int const&); + /* 809907AC */ void _Evt_GameGiveUp(int); + /* 80990854 */ void _Evt_GameGiveUp_CutInit(int const&); + /* 80990950 */ void _Evt_GameGiveUp_CutMain(int const&); + /* 809909F4 */ void _Evt_Appear(int); + /* 80990A9C */ void _Evt_Appear_CutInit(int const&); + /* 80990BD8 */ void _Evt_Appear_CutMain(int const&); + /* 80990C9C */ void _Evt_SpotLight_Off(int); + /* 80990D44 */ void _Evt_SpotLight_Off_CutInit(int const&); + /* 80990DDC */ void _Evt_SpotLight_Off_CutMain(int const&); + /* 80991858 */ void setMtx(); + + static u8 mEvtSeqList[96]; + +private: + /* 0x568 */ u8 field_0x568[0xe78 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcChin_c) == 0xe78); + +class daNpcChin_Param_c { +public: + /* 8099188C */ ~daNpcChin_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_CHIN_H */ diff --git a/include/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h b/include/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h index 72aa583037..cb21017f8b 100644 --- a/include/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h +++ b/include/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_CLERKA_H #define D_A_NPC_CLERKA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_clerkA_c + * @brief Chudley + * + * @details + * + */ +class daNpc_clerkA_c : public fopAc_ac_c { +public: + /* 8099252C */ ~daNpc_clerkA_c(); + /* 8099266C */ void create(); + /* 80992914 */ void CreateHeap(); + /* 80992D50 */ void Delete(); + /* 80992D84 */ void Execute(); + /* 80992E5C */ void Draw(); + /* 80992EF0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80992F10 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80992F68 */ void getType(); + /* 80992F88 */ void isDelete(); + /* 80992FB8 */ void reset(); + /* 809930EC */ void afterJntAnm(int); + /* 80993170 */ void setParam(); + /* 809932A4 */ void setAfterTalkMotion(); + /* 80993330 */ void srchActors(); + /* 8099338C */ void evtTalk(); + /* 80993568 */ void evtCutProc(); + /* 80993630 */ void action(); + /* 8099371C */ void beforeMove(); + /* 80993794 */ void setAttnPos(); + /* 80993A40 */ void setCollision(); + /* 80993B74 */ bool drawDbgInfo(); + /* 80993B7C */ void drawOtherMdl(); + /* 80993BDC */ void selectAction(); + /* 80993C58 */ void chkAction(int (daNpc_clerkA_c::*)(void*)); + /* 80993C84 */ void setAction(int (daNpc_clerkA_c::*)(void*)); + /* 80993D2C */ void wait(void*); + /* 80993F84 */ void tend(void*); + /* 809941B8 */ void talk(void*); + /* 809943B0 */ void shop(void*); + /* 809955C8 */ daNpc_clerkA_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80995694 */ s32 getEyeballMaterialNo(); + /* 8099569C */ s32 getHeadJointNo(); + /* 809956A4 */ s32 getNeckJointNo(); + /* 809956AC */ bool getBackboneJointNo(); + /* 809956B4 */ void checkChangeJoint(int); + /* 809956C4 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0x10f4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_clerkA_c) == 0x10f4); + +class daNpc_clerkA_Param_c { +public: + /* 809956D4 */ ~daNpc_clerkA_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_CLERKA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h b/include/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h index 771512f183..ef2cf238b5 100644 --- a/include/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h +++ b/include/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h @@ -1,6 +1,77 @@ #ifndef D_A_NPC_CLERKB_H #define D_A_NPC_CLERKB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_clerkB_c + * @brief Malver + * + * @details + * + */ +class daNpc_clerkB_c : public fopAc_ac_c { +public: + /* 80995F2C */ ~daNpc_clerkB_c(); + /* 80996090 */ void create(); + /* 80996338 */ void CreateHeap(); + /* 809967C4 */ void Delete(); + /* 809967F8 */ void Execute(); + /* 809968D0 */ void Draw(); + /* 80996964 */ void createHeapCallBack(fopAc_ac_c*); + /* 80996984 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809969DC */ void getType(); + /* 809969FC */ void beforeStartSeqAction(dMsgFlow_c*, int); + /* 80996CCC */ void beforeSelectSeqAction(dMsgFlow_c*, int); + /* 80996F7C */ void isDelete(); + /* 80996FAC */ void reset(); + /* 809970E0 */ void afterJntAnm(int); + /* 80997188 */ void setParam(); + /* 809972BC */ void setAfterTalkMotion(); + /* 80997360 */ void srchActors(); + /* 809973BC */ void evtTalk(); + /* 80997598 */ void evtCutProc(); + /* 80997660 */ void action(); + /* 8099774C */ void beforeMove(); + /* 809977C4 */ void setAttnPos(); + /* 80997A1C */ void setCollision(); + /* 80997B50 */ bool drawDbgInfo(); + /* 80997B58 */ void drawOtherMdl(); + /* 80997BB8 */ void drawGhost(); + /* 80997C44 */ void selectAction(); + /* 80997CC0 */ void chkAction(int (daNpc_clerkB_c::*)(void*)); + /* 80997CEC */ void setAction(int (daNpc_clerkB_c::*)(void*)); + /* 80997D94 */ void setSe(); + /* 80997E54 */ void wait(void*); + /* 809980AC */ void tend(void*); + /* 80998328 */ void talk(void*); + /* 80998520 */ void shop(void*); + /* 80999680 */ daNpc_clerkB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809997AC */ s32 getEyeballMaterialNo(); + /* 809997B4 */ s32 getHeadJointNo(); + /* 809997BC */ s32 getNeckJointNo(); + /* 809997C4 */ bool getBackboneJointNo(); + /* 809997CC */ void checkChangeJoint(int); + /* 809997DC */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0x1118 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_clerkB_c) == 0x1118); + +class daNpc_clerkB_Param_c { +public: + /* 809997EC */ ~daNpc_clerkB_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_CLERKB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h b/include/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h index a5c740135a..ef77c9e7f0 100644 --- a/include/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h +++ b/include/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h @@ -1,6 +1,71 @@ #ifndef D_A_NPC_CLERKT_H #define D_A_NPC_CLERKT_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcClerkT_c + * @brief Ooccaa (City in the Sky Shop) + * + * @details + * + */ +class daNpcClerkT_c : public fopAc_ac_c { +public: + /* 8099A14C */ ~daNpcClerkT_c(); + /* 8099A28C */ void create(); + /* 8099A530 */ void CreateHeap(); + /* 8099A96C */ void Delete(); + /* 8099A9A0 */ void Execute(); + /* 8099AA80 */ void Draw(); + /* 8099AB14 */ void createHeapCallBack(fopAc_ac_c*); + /* 8099AB34 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8099AB8C */ void isDelete(); + /* 8099ABBC */ void reset(); + /* 8099ACF0 */ void afterJntAnm(int); + /* 8099AD74 */ void evtTalk(); + /* 8099AF18 */ void evtCutProc(); + /* 8099AFE0 */ void action(); + /* 8099B0CC */ bool drawDbgInfo(); + /* 8099B0D4 */ void drawOtherMdl(); + /* 8099B134 */ void selectAction(); + /* 8099B1B0 */ void chkAction(int (daNpcClerkT_c::*)(void*)); + /* 8099B1DC */ void setAction(int (daNpcClerkT_c::*)(void*)); + /* 8099B284 */ void wait(void*); + /* 8099B4DC */ void tend(void*); + /* 8099B60C */ void talk(void*); + /* 8099B804 */ void shop(void*); + /* 8099BCE8 */ void setParam(); + /* 8099BE48 */ void setAfterTalkMotion(); + /* 8099BEA8 */ void beforeMove(); + /* 8099BF20 */ void setAttnPos(); + /* 8099C1A0 */ void setCollision(); + /* 8099CF9C */ daNpcClerkT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 8099D068 */ s32 getEyeballMaterialNo(); + /* 8099D070 */ void checkChangeJoint(int); + /* 8099D080 */ void checkRemoveJoint(int); + /* 8099D090 */ s32 getBackboneJointNo(); + /* 8099D098 */ s32 getNeckJointNo(); + /* 8099D0A0 */ s32 getHeadJointNo(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0x10f0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcClerkT_c) == 0x10f0); + +class daNpcClerkt_Param_c { +public: + /* 8099D0A8 */ ~daNpcClerkt_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_CLERKT_H */ diff --git a/include/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h b/include/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h index a4279ab3fe..d8b08f60bd 100644 --- a/include/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h +++ b/include/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h @@ -1,6 +1,62 @@ #ifndef D_A_NPC_COACH_H #define D_A_NPC_COACH_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcCoach_c + * @brief Coach + * + * @details + * + */ +class daNpcCoach_c : public fopAc_ac_c { +public: + /* 8099DA60 */ void hitFireArrow(cXyz); + /* 8099DBA4 */ void deleteFireArrow(unsigned int); + /* 8099DCE8 */ void deleteFireArrowFromList(unsigned int); + /* 8099DD28 */ void setPosAngle(cXyz&, csXyz&); + /* 8099DD7C */ void ctrlJointHorse(J3DJoint*, J3DModel*); + /* 8099DE18 */ void initCoachPosition(Vec&, SVec&); + /* 8099E138 */ void changeAtherPath(s8, cXyz&, csXyz&); + /* 8099E4C0 */ void createHeap(); + /* 8099EB40 */ void execute(); + /* 8099EEA0 */ void checkCoachDamage(); + /* 8099F1B8 */ void setCoachBlazing(u8); + /* 8099F4BC */ void reinsExecute(); + /* 8099F988 */ void reinsInit(); + /* 8099FCF4 */ void calcCoachMotion(); + /* 809A0728 */ void calcRearWheelRotate(); + /* 809A0E00 */ void calcHarnessMotion(); + /* 809A1180 */ void calcFrontWheelRotate(); + /* 809A1810 */ void calcHorseMotion(); + /* 809A1BE0 */ void calcHorseAnm(); + /* 809A2740 */ void calcHorsePath(); + /* 809A2EB8 */ void draw(); + /* 809A3330 */ ~daNpcCoach_c(); + /* 809A3884 */ void create(); + /* 809A3928 */ void create_init(); + /* 809A4078 */ void initCollision(); + /* 809A43A0 */ void initBaseMtx(); + /* 809A43DC */ void setBaseMtx(); + /* 809A46C4 */ void initCoachBlazing(); + /* 809A48A8 */ daNpcCoach_c(); + + static u8 const M_attr[160]; +private: + /* 0x568 */ u8 field_0x568[0x2570 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcCoach_c) == 0x2570); + +class daNpcChHarness_c { +public: + /* 809A3570 */ ~daNpcChHarness_c(); +}; + +class daNpcChCoach_c { +public: + /* 809A3674 */ ~daNpcChCoach_c(); +}; #endif /* D_A_NPC_COACH_H */ diff --git a/include/rel/d/a/npc/d_a_npc_df/d_a_npc_df.h b/include/rel/d/a/npc/d_a_npc_df/d_a_npc_df.h index d788de42c7..3114bc7664 100644 --- a/include/rel/d/a/npc/d_a_npc_df/d_a_npc_df.h +++ b/include/rel/d/a/npc/d_a_npc_df/d_a_npc_df.h @@ -1,6 +1,27 @@ #ifndef D_A_NPC_DF_H #define D_A_NPC_DF_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_df_class + * @brief ??? + * + * @details + * + */ +class npc_df_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0xd44 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_df_class) == 0xd44); + +struct df_s { +public: + /* 809A6728 */ ~df_s(); + /* 809A6764 */ df_s(); +}; + #endif /* D_A_NPC_DF_H */ diff --git a/include/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h b/include/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h index e8f8031e53..c78fdb1dbd 100644 --- a/include/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h +++ b/include/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h @@ -1,6 +1,75 @@ #ifndef D_A_NPC_DOC_H #define D_A_NPC_DOC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Doc_c + * @brief Dr. Borville + * + * @details + * + */ +class daNpc_Doc_c : public fopAc_ac_c { +public: + /* 809A6C8C */ ~daNpc_Doc_c(); + /* 809A6DC0 */ void create(); + /* 809A7088 */ void CreateHeap(); + /* 809A74C8 */ void Delete(); + /* 809A74FC */ void Execute(); + /* 809A751C */ void Draw(); + /* 809A75B0 */ void createHeapCallBack(fopAc_ac_c*); + /* 809A75D0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809A7628 */ void getType(); + /* 809A7660 */ void isDelete(); + /* 809A7694 */ void reset(); + /* 809A7918 */ void afterJntAnm(int); + /* 809A79A4 */ void setParam(); + /* 809A7ABC */ void checkChangeEvt(); + /* 809A7BC4 */ void setAfterTalkMotion(); + /* 809A7C3C */ void srchActors(); + /* 809A7C40 */ void evtTalk(); + /* 809A7CE0 */ void evtCutProc(); + /* 809A7DA8 */ void action(); + /* 809A7F3C */ void beforeMove(); + /* 809A80B8 */ void setAttnPos(); + /* 809A83A8 */ void setCollision(); + /* 809A8530 */ bool drawDbgInfo(); + /* 809A8538 */ void selectAction(); + /* 809A8620 */ void chkAction(int (daNpc_Doc_c::*)(void*)); + /* 809A864C */ void setAction(int (daNpc_Doc_c::*)(void*)); + /* 809A86F4 */ void wait(void*); + /* 809A8A9C */ void walk(void*); + /* 809A8C78 */ void talk(void*); + /* 809AA18C */ daNpc_Doc_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809AA24C */ s32 getEyeballMaterialNo(); + /* 809AA254 */ s32 getHeadJointNo(); + /* 809AA25C */ s32 getNeckJointNo(); + /* 809AA264 */ bool getBackboneJointNo(); + /* 809AA26C */ void checkChangeJoint(int); + /* 809AA27C */ void checkRemoveJoint(int); + /* 809AA28C */ s32 getFootLJointNo(); + /* 809AA294 */ s32 getFootRJointNo(); + /* 809AA29C */ void chkXYItems(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Doc_c) == 0xfcc); + +class daNpc_Doc_Param_c { +public: + /* 809AA2B0 */ ~daNpc_Doc_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_DOC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h b/include/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h index 8d5ef09146..5df7e03a65 100644 --- a/include/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h +++ b/include/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h @@ -1,6 +1,57 @@ #ifndef D_A_NPC_DOORBOY_H #define D_A_NPC_DOORBOY_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcDoorBoy_c + * @brief Door Boy (This isn't Soal?) + * + * @details + * + */ +class daNpcDoorBoy_c : public fopAc_ac_c { +public: + /* 809AAC8C */ daNpcDoorBoy_c(); + /* 809AAEA0 */ ~daNpcDoorBoy_c(); + /* 809AB088 */ void Create(); + /* 809AB320 */ void CreateHeap(); + /* 809AB4A4 */ void Delete(); + /* 809AB4D8 */ void Execute(); + /* 809AB4FC */ void Draw(); + /* 809AB578 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809AB704 */ void createHeapCallBack(fopAc_ac_c*); + /* 809AB724 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809AB770 */ void setMotion(int, f32, int); + /* 809AB7B8 */ void reset(); + /* 809AB984 */ void setAction(bool (daNpcDoorBoy_c::*)(void*)); + /* 809ABA2C */ void wait(void*); + /* 809AC064 */ void fear(void*); + /* 809AC114 */ void talk(void*); + /* 809AC528 */ void demo(void*); + /* 809AC6F4 */ void dummyTalk(void*); + /* 809AC994 */ void setParam(); + /* 809ACA58 */ void main(); + /* 809ACC5C */ void setAttnPos(); + /* 809ACE18 */ void lookat(); + /* 809ACFF8 */ void setMotionAnm(int, f32); + /* 809AD0C8 */ bool drawDbgInfo(); + /* 809AD938 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe08 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcDoorBoy_c) == 0xe08); + +class daNpcDoorBoy_Param_c { +public: + /* 809AD93C */ ~daNpcDoorBoy_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_DOORBOY_H */ diff --git a/include/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h b/include/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h index 16c73f87fe..2ab5f20cf0 100644 --- a/include/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h +++ b/include/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h @@ -1,6 +1,51 @@ #ifndef D_A_NPC_DRAINSOL_H #define D_A_NPC_DRAINSOL_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcDrSol_c + * @brief Drain Soldier (Hyrule Castle Sewer Soldier?) + * + * @details + * + */ +class daNpcDrSol_c : public fopAc_ac_c { +public: + /* 809ADE6C */ daNpcDrSol_c(); + /* 809ADFE4 */ ~daNpcDrSol_c(); + /* 809AE10C */ void Create(); + /* 809AE354 */ void CreateHeap(); + /* 809AE51C */ void Delete(); + /* 809AE550 */ void Execute(); + /* 809AE5CC */ void Draw(); + /* 809AE60C */ void drawOtherMdls(); + /* 809AE69C */ void createHeapCallBack(fopAc_ac_c*); + /* 809AE6BC */ void reset(); + /* 809AE844 */ void setAction(bool (daNpcDrSol_c::*)(void*)); + /* 809AE8EC */ void chkFindPlayer(); + /* 809AE994 */ void wait(void*); + /* 809AEB18 */ void setMotion(int, f32, int); + /* 809AEB94 */ void talk(void*); + /* 809AEDA8 */ void setParam(); + /* 809AEE24 */ void main(); + /* 809AEFDC */ void setAttnPos(); + /* 809AF12C */ void setMotionAnm(int, f32); + /* 809AF1FC */ bool drawDbgInfo(); + /* 809AF934 */ void adjustShapeAngle(); + +private: + /* 0x568 */ u8 field_0x568[0xd3c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcDrSol_c) == 0xd3c); + +class daNpcDrSol_Param_c { +public: + /* 809AF938 */ ~daNpcDrSol_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_DRAINSOL_H */ diff --git a/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h b/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h index c4db5fdeaa..1da29924f9 100644 --- a/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h +++ b/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h @@ -1,5 +1,27 @@ #ifndef D_A_NPC_DU_H #define D_A_NPC_DU_H +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_du_class + * @brief Duck + * + * @details + * + */ +class npc_du_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0xa00 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_du_class) == 0xa00); + +class daNpc_Du_HIO_c { +public: + /* 809AFD4C */ daNpc_Du_HIO_c(); + /* 809B17A0 */ ~daNpc_Du_HIO_c(); +}; + #endif /* D_A_NPC_DU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h b/include/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h index cf595abcb4..7b551566fa 100644 --- a/include/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h +++ b/include/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h @@ -1,6 +1,144 @@ #ifndef D_A_NPC_FAIRY_H #define D_A_NPC_FAIRY_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Fairy_c + * @brief Great Fairy + * + * @details + * + */ +class daNpc_Fairy_c : public fopAc_ac_c { +public: + /* 809B228C */ ~daNpc_Fairy_c(); + /* 809B2430 */ void Create(); + /* 809B26E8 */ void CreateHeap(); + /* 809B2B44 */ void setAnmData(); + /* 809B2C20 */ void setMotionAnm(int, f32, int); + /* 809B2E78 */ void afterSetMotionAnm(int, int, f32, int); + /* 809B2EFC */ void Delete(); + /* 809B2F30 */ void Execute(); + /* 809B2F8C */ void Draw(); + /* 809B3034 */ void drawOtherMdl(); + /* 809B3074 */ void createHeapCallBack(fopAc_ac_c*); + /* 809B3094 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809B30EC */ bool isDelete(); + /* 809B30F4 */ void reset(); + /* 809B32C4 */ void initStatus(); + /* 809B32D0 */ void afterJntAnm(int); + /* 809B335C */ void setParam(); + /* 809B349C */ bool checkChangeEvt(); + /* 809B34A4 */ void setAfterTalkMotion(); + /* 809B3520 */ void srchActors(); + /* 809B3524 */ void evtTalk(); + /* 809B3630 */ void evtCutProc(); + /* 809B36F8 */ void evtEndProc(); + /* 809B379C */ void action(); + /* 809B384C */ void ptcl_water(); + /* 809B38E8 */ void ptcl_sprit(); + /* 809B39FC */ void _to_FairyField(); + /* 809B3AB0 */ void chk_tempbit(); + /* 809B3B20 */ void beforeMove(); + /* 809B3B98 */ void afterMoved(); + /* 809B3C64 */ void setAttnPos(); + /* 809B3EA0 */ void setCollision(); + /* 809B3FD8 */ bool drawDbgInfo(); + /* 809B3FE0 */ void setAction(int (daNpc_Fairy_c::*)(int), int); + /* 809B4090 */ void wait(int); + /* 809B4360 */ void talk(int); + /* 809B4450 */ void AppearDemoCall(); + /* 809B4588 */ void ReturnDemoCall(); + /* 809B45BC */ void PresentDemoCall(); + /* 809B464C */ void cutAppear_10F_01(int); + /* 809B46E0 */ void _cutAppear_10F_01_Init(int const&); + /* 809B48C4 */ void _cutAppear_10F_01_Main(int const&); + /* 809B4A44 */ void cutAppear_10F_02(int); + /* 809B4AD8 */ void _cutAppear_10F_02_Init(int const&); + /* 809B4BF8 */ void _cutAppear_10F_02_Main(int const&); + /* 809B4CC0 */ void cutAppear_20F_01(int); + /* 809B4D54 */ void _cutAppear_20F_01_Init(int const&); + /* 809B4EB4 */ void _cutAppear_20F_01_Main(int const&); + /* 809B5000 */ void cutAppear_20F_02(int); + /* 809B5094 */ void _cutAppear_20F_02_Init(int const&); + /* 809B51F4 */ void _cutAppear_20F_02_Main(int const&); + /* 809B5340 */ void cutAppear_30F_01(int); + /* 809B53D4 */ void _cutAppear_30F_01_Init(int const&); + /* 809B54F4 */ void _cutAppear_30F_01_Main(int const&); + /* 809B55BC */ void cutAppear_30F_02(int); + /* 809B5650 */ void _cutAppear_30F_02_Init(int const&); + /* 809B5770 */ void _cutAppear_30F_02_Main(int const&); + /* 809B5838 */ void cutAppear_40F_01(int); + /* 809B58CC */ void _cutAppear_40F_01_Init(int const&); + /* 809B59EC */ void _cutAppear_40F_01_Main(int const&); + /* 809B5AB4 */ void cutAppear_40F_02(int); + /* 809B5B48 */ void _cutAppear_40F_02_Init(int const&); + /* 809B5C68 */ void _cutAppear_40F_02_Main(int const&); + /* 809B5D30 */ void cutAppear_50F_01(int); + /* 809B5E00 */ void _cutAppear_50F_01_Init(int const&, int const&); + /* 809B6084 */ void _cutAppear_50F_01_Main(int const&, int const&); + /* 809B631C */ void cutAppear_50F_02(int); + /* 809B63EC */ void _cutAppear_50F_02_Init(int const&, int const&); + /* 809B662C */ void _cutAppear_50F_02_Main(int const&, int const&); + /* 809B6830 */ void cutAppear_50F_03(int); + /* 809B6900 */ void _cutAppear_50F_03_Init(int const&, int const&); + /* 809B6ADC */ void _cutAppear_50F_03_Main(int const&, int const&); + /* 809B6C30 */ void cutAppear_50F_04(int); + /* 809B6D00 */ void _cutAppear_50F_04_Init(int const&, int const&); + /* 809B6F40 */ void _cutAppear_50F_04_Main(int const&, int const&); + /* 809B7168 */ void cutAppear_50F_05(int); + /* 809B7238 */ void _cutAppear_50F_05_Init(int const&, int const&); + /* 809B74AC */ void _cutAppear_50F_05_Main(int const&, int const&); + /* 809B7718 */ void cutSelect_Return1(int); + /* 809B77AC */ void _cutSelect_Return1_Init(int const&); + /* 809B78F0 */ void _cutSelect_Return1_Main(int const&); + /* 809B79A4 */ void cutSelect_Return2(int); + /* 809B7A38 */ void _cutSelect_Return2_Init(int const&); + /* 809B7A9C */ void _cutSelect_Return2_Main(int const&); + /* 809B7BA4 */ void cutSelect_Return3(int); + /* 809B7C38 */ void _cutSelect_Return3_Init(int const&); + /* 809B7D7C */ void _cutSelect_Return3_Main(int const&); + /* 809B7E30 */ void cutReturnCancel(int); + /* 809B7EC4 */ bool _cutReturnCancel_Init(int const&); + /* 809B7ECC */ bool _cutReturnCancel_Main(int const&); + /* 809B9054 */ daNpc_Fairy_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809B9238 */ bool getEyeballMaterialNo(); + /* 809B9240 */ s32 getHeadJointNo(); + /* 809B9248 */ s32 getNeckJointNo(); + /* 809B9250 */ bool getBackboneJointNo(); + /* 809B9258 */ void checkChangeJoint(int); + /* 809B9268 */ void checkRemoveJoint(int); + + static void* mCutNameList[18]; + static u8 mCutList[216]; +private: + /* 0x568 */ u8 field_0x568[0x10c8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Fairy_c) == 0x10c8); + +class daNpc_Fairy_Param_c { +public: + /* 809B9278 */ ~daNpc_Fairy_Param_c(); + + static u8 const m[148]; +}; + +class _Fairy_Feather_c : public fopAc_ac_c { +public: + /* 809B1B0C */ void create(); + /* 809B1BC0 */ void loadModel(); + /* 809B1CE4 */ void setAnm(int); + /* 809B1DEC */ void setBrk(int); + /* 809B1EA8 */ void setBtk(int); + /* 809B1F64 */ bool ctrlJointCallBack(J3DJoint*, int); + /* 809B1F6C */ void connect(daNpc_Fairy_c*); + /* 809B1FD4 */ void draw(daNpc_Fairy_c*); +}; + #endif /* D_A_NPC_FAIRY_H */ diff --git a/include/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.h b/include/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.h index 6907bfdca4..a2995b7774 100644 --- a/include/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.h +++ b/include/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.h @@ -1,6 +1,60 @@ #ifndef D_A_NPC_FAIRY_SEIREI_H #define D_A_NPC_FAIRY_SEIREI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_FairySeirei_c + * @brief Fairy Spirit + * + * @details + * + */ +class daNpc_FairySeirei_c : public fopAc_ac_c { +public: + /* 8053FF6C */ ~daNpc_FairySeirei_c(); + /* 8054006C */ void create(); + /* 80540298 */ void Delete(); + /* 805402CC */ void Execute(); + /* 805402EC */ bool Draw(); + /* 805402F4 */ void isDelete(); + /* 80540334 */ void reset(); + /* 8054048C */ void setParam(); + /* 805405B0 */ void srchActors(); + /* 805405B4 */ void evtTalk(); + /* 805406BC */ void evtCutProc(); + /* 80540784 */ void action(); + /* 8054080C */ void beforeMove(); + /* 80540884 */ void setCollision(); + /* 80540988 */ void setAttnPos(); + /* 80540A30 */ bool drawDbgInfo(); + /* 80540A38 */ void selectAction(); + /* 80540A80 */ void setAction(int (daNpc_FairySeirei_c::*)(int)); + /* 80540B28 */ void setPrtcls(); + /* 80540C54 */ void wait(int); + /* 80540CC0 */ void talk(int); + /* 80540E10 */ void _to_FairyCave(); + /* 80541BE4 */ daNpc_FairySeirei_c(daNpcT_faceMotionAnmData_c const*, + daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfb0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_FairySeirei_c) == 0xfb0); + +class daNpc_FairySeirei_Param_c { +public: + /* 80541D20 */ ~daNpc_FairySeirei_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_FAIRY_SEIREI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h b/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h index 26ee01d778..83c7b0e6e0 100644 --- a/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h +++ b/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h @@ -4,7 +4,16 @@ #include "d/a/d_a_npc_cd2.h" #include "SSystem/SComponent/c_math.h" -struct daNpcFgd_c : public daNpcCd2_c { +/** + * @ingroup actors-npcs + * @class daNpcFgd_c + * @brief ??? + * + * @details + * + */ +class daNpcFgd_c : public daNpcCd2_c { +public: /* 809BA53C */ void initPosAngle(Vec&, s16); /* 809BA584 */ void create(); /* 809BA730 */ void create_init(); diff --git a/include/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h b/include/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h index 16c0f088ac..3df0fda31b 100644 --- a/include/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h +++ b/include/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h @@ -1,8 +1,16 @@ #ifndef D_A_NPC_FISH_H #define D_A_NPC_FISH_H -#include "f_op/f_op_actor_mng.h" +#include "d/a/d_a_npc.h" +/** + * @ingroup actors-npcs + * @class npc_fish_class + * @brief Fish + * + * @details Multi-purpose fish actor. Used for various fish types. + * + */ class npc_fish_class : public fopAc_ac_c { /* 0x568 */ u8 field_0x568[0x5b4 - 0x568]; // unused in TU, unsure of type }; @@ -13,4 +21,12 @@ struct fish_data_s { /* 0x10 */ u8 field_0x10; }; +struct fish_pos { +public: + u8 param; + f32 pos_x; + f32 pos_z; +}; + + #endif /* D_A_NPC_FISH_H */ diff --git a/include/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h b/include/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h index 52b07b77a6..b089f468e2 100644 --- a/include/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h +++ b/include/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h @@ -1,6 +1,72 @@ #ifndef D_A_NPC_GND_H #define D_A_NPC_GND_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Gnd_c + * @brief Ganondorf + * + * @details + * + */ +class daNpc_Gnd_c : public fopAc_ac_c { +public: + /* 809BB60C */ ~daNpc_Gnd_c(); + /* 809BB730 */ void create(); + /* 809BB9D4 */ void CreateHeap(); + /* 809BBE2C */ void Delete(); + /* 809BBE60 */ void Execute(); + /* 809BBE80 */ void Draw(); + /* 809BBF44 */ void createHeapCallBack(fopAc_ac_c*); + /* 809BBF64 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809BBFBC */ void getType(); + /* 809BBFDC */ void getFlowNodeNo(); + /* 809BBFF8 */ void isDelete(); + /* 809BC028 */ void reset(); + /* 809BC168 */ void afterJntAnm(int); + /* 809BC1F4 */ void ctrlBtk(); + /* 809BC328 */ void setParam(); + /* 809BC448 */ void setAfterTalkMotion(); + /* 809BC4A8 */ void srchActors(); + /* 809BC4AC */ void evtTalk(); + /* 809BC5AC */ void evtCutProc(); + /* 809BC674 */ void action(); + /* 809BC760 */ void beforeMove(); + /* 809BC7D8 */ void setAttnPos(); + /* 809BCA14 */ void setCollision(); + /* 809BCB48 */ bool drawDbgInfo(); + /* 809BCB50 */ void afterSetMotionAnm(int, int, f32, int); + /* 809BCCE8 */ void selectAction(); + /* 809BCD30 */ void chkAction(int (daNpc_Gnd_c::*)(void*)); + /* 809BCD5C */ void setAction(int (daNpc_Gnd_c::*)(void*)); + /* 809BCE04 */ void wait(void*); + /* 809BD050 */ void talk(void*); + /* 809BE2D0 */ daNpc_Gnd_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809BE40C */ s32 getEyeballRMaterialNo(); + /* 809BE414 */ s32 getEyeballLMaterialNo(); + /* 809BE41C */ s32 getHeadJointNo(); + /* 809BE424 */ s32 getNeckJointNo(); + /* 809BE42C */ bool getBackboneJointNo(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Gnd_c) == 0xfa0); + +class daNpc_Gnd_Param_c { +public: + /* 809BE434 */ ~daNpc_Gnd_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_GND_H */ diff --git a/include/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h b/include/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h index 289bf9848a..ca6e1ccef0 100644 --- a/include/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h +++ b/include/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h @@ -1,6 +1,113 @@ #ifndef D_A_NPC_GRA_H #define D_A_NPC_GRA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grA_c + * @brief Goron (Adult) + * + * @details + * + */ +class daNpc_grA_c : public fopAc_ac_c { +public: + class daNpc_GrA_prtclMngr_c { + public: + /* 809BEB24 */ ~daNpc_GrA_prtclMngr_c(); + /* 809BEB60 */ daNpc_GrA_prtclMngr_c(); + }; + + /* 809BE94C */ daNpc_grA_c(); + /* 809BEB64 */ ~daNpc_grA_c(); + /* 809BEDA4 */ void create(); + /* 809BF0A8 */ void CreateHeap(); + /* 809BF418 */ void Delete(); + /* 809BF44C */ void Execute(); + /* 809BF490 */ void Draw(); + /* 809BF504 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809BF738 */ void createHeapCallBack(fopAc_ac_c*); + /* 809BF758 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809BF7A4 */ void setTagJump(); + /* 809BF8A0 */ void setTagJump2(); + /* 809BF99C */ void setHomeJump(); + /* 809BFAF4 */ void checkTagGraSub(fopAc_ac_c*); + /* 809BFBC0 */ void checkTagGraSub2(fopAc_ac_c*); + /* 809BFDCC */ void checkTagGraSubCrashed(fopAc_ac_c*); + /* 809BFDFC */ void setParam(); + /* 809C0038 */ void main(); + /* 809C0298 */ bool ctrlBtk(); + /* 809C02A0 */ void setAttnPos(); + /* 809C0948 */ void setExpressionAnm(int, bool); + /* 809C0CE4 */ void setExpressionBtp(int); + /* 809C0E18 */ void setExpression(int, f32); + /* 809C0E44 */ void setMotionAnm(int, f32); + /* 809C1018 */ void setMotion(int, f32, int); + /* 809C105C */ bool drawDbgInfo(); + /* 809C1064 */ void drawOtherMdls(); + /* 809C1154 */ void getMode(); + /* 809C1160 */ void getMode1(); + /* 809C116C */ void getTypeFromParam(); + /* 809C1238 */ void getSwBit(); + /* 809C1244 */ void isDelete(); + /* 809C13D8 */ void reset(); + /* 809C1990 */ void playExpression(); + /* 809C2080 */ void playMotion(); + /* 809C28BC */ void chkAction(int (daNpc_grA_c::*)(void*)); + /* 809C28E8 */ void setAction(int (daNpc_grA_c::*)(void*)); + /* 809C2990 */ void selectAction(); + /* 809C2C3C */ void doEvent(); + /* 809C3070 */ void setLookMode(int); + /* 809C3094 */ void lookat(); + /* 809C3424 */ void chkFindPlayer(); + /* 809C35D0 */ void setExpressionTalkAfter(); + /* 809C36AC */ void setPrtcl(); + /* 809C389C */ void setRollPrtcl(cXyz const&, f32); + /* 809C3A54 */ void setOtherObjMtx(); + /* 809C3B28 */ void ECut_talkSpa(int); + /* 809C3D78 */ void ECut_grDSRoll(int); + /* 809C45B0 */ void ECut_grDSGate(int); + /* 809C47EC */ void ECut_teachElevator(int); + /* 809C4BE4 */ void ECut_kickOut(int); + /* 809C4EB4 */ void ECut_noneLook(int); + /* 809C5088 */ void ECut_rescueRock(int); + /* 809C5430 */ void ECut_carrySpaWater(int); + /* 809C5D44 */ void ECut_carrySpaWaterFailure(int); + /* 809C5F90 */ void ECut_rollRockCrash(int); + /* 809C6608 */ void ECut_talkSpaWater(int); + /* 809C681C */ void wait(void*); + /* 809C69B8 */ void waitTW(void*); + /* 809C6AAC */ void waitCheer(void*); + /* 809C6D48 */ void waitGate(void*); + /* 809C73FC */ void waitKickOut(void*); + /* 809C770C */ void moveRock(void*); + /* 809C77E0 */ void spaWarm(void*); + /* 809C7ACC */ void waitSpaWater(void*); + /* 809C7F24 */ void waitSpaBuyer(void*); + /* 809C8138 */ void waitSpaBuyerTW(void*); + /* 809C82A8 */ void beforeCrashWait(void*); + /* 809C8514 */ void crashRoll(void*); + /* 809C8694 */ void crashRollWait(void*); + /* 809C884C */ void crashedWait(void*); + /* 809C8A2C */ void waitBuyer(void*); + /* 809C8BD4 */ void talk(void*); + /* 809C9044 */ void test(void*); + /* 809C9D28 */ void adjustShapeAngle(); + + static void* mEvtCutNameList[12]; + static u8 mEvtCutList[144]; + +private: + /* 0x568 */ u8 field_0x568[0x1698 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grA_c) == 0x1698); + +class daNpc_grA_Param_c { +public: + /* 809C9D2C */ ~daNpc_grA_Param_c(); + + static u8 const m[132]; +}; #endif /* D_A_NPC_GRA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h b/include/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h index bddfb431ca..8afbee2846 100644 --- a/include/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h +++ b/include/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_GRC_H #define D_A_NPC_GRC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grC_c + * @brief Goron (Child) + * + * @details + * + */ +class daNpc_grC_c : public fopAc_ac_c { +public: + /* 809CB4CC */ daNpc_grC_c(); + /* 809CB6E0 */ ~daNpc_grC_c(); + /* 809CB8E0 */ void create(); + /* 809CBBD4 */ void CreateHeap(); + /* 809CBDC4 */ void Delete(); + /* 809CBDF8 */ void Execute(); + /* 809CBE18 */ void Draw(); + /* 809CBE8C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809CC0C0 */ void createHeapCallBack(fopAc_ac_c*); + /* 809CC0E0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809CC12C */ void setParam(); + /* 809CC26C */ void main(); + /* 809CC3EC */ bool ctrlBtk(); + /* 809CC3F4 */ void setAttnPos(); + /* 809CC930 */ void setExpressionAnm(int, bool); + /* 809CCB78 */ void setExpressionBtp(int); + /* 809CCCA4 */ void setExpression(int, f32); + /* 809CCCD0 */ void setMotionAnm(int, f32); + /* 809CCE70 */ void setMotion(int, f32, int); + /* 809CCEB4 */ bool drawDbgInfo(); + /* 809CCEBC */ void drawOtherMdls(); + /* 809CCEC0 */ void getTypeFromParam(); + /* 809CCF38 */ void isDelete(); + /* 809CCFBC */ void reset(); + /* 809CD1B4 */ void playExpression(); + /* 809CD4AC */ void playMotion(); + /* 809CD794 */ void chkAction(int (daNpc_grC_c::*)(void*)); + /* 809CD7C0 */ void setAction(int (daNpc_grC_c::*)(void*)); + /* 809CD868 */ void selectAction(); + /* 809CD960 */ void doNormalAction(int); + /* 809CDA74 */ void doEvent(); + /* 809CDD50 */ void setLookMode(int); + /* 809CDD74 */ void lookat(); + /* 809CDFFC */ void chkFindPlayer(); + /* 809CE12C */ void setExpressionTalkAfter(); + /* 809CE1F8 */ void wait(void*); + /* 809CE3A8 */ void waitTW(void*); + /* 809CE490 */ void waitSpa(void*); + /* 809CE688 */ void waitBuyer(void*); + /* 809CE7C4 */ void talk(void*); + /* 809CEA6C */ void test(void*); + /* 809CEB50 */ void setPrtcl(); + /* 809CF4AC */ void adjustShapeAngle(); + + static void* mEvtCutNameList; + static u8 mEvtCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe54 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grC_c) == 0xe54); + +class daNpc_grC_Param_c { +public: + /* 809CF4B0 */ ~daNpc_grC_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_GRC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h b/include/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h index 9fbeb1ac08..724c55d8c9 100644 --- a/include/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h +++ b/include/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h @@ -1,6 +1,72 @@ #ifndef D_A_NPC_GRD_H #define D_A_NPC_GRD_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Grd_c + * @brief Gor Coron + * + * @details + * + */ +class daNpc_Grd_c : public fopAc_ac_c { +public: + /* 809CFD2C */ daNpc_Grd_c(); + /* 809CFF40 */ ~daNpc_Grd_c(); + /* 809D0140 */ void create(); + /* 809D0414 */ void CreateHeap(); + /* 809D0858 */ void Delete(); + /* 809D088C */ void Execute(); + /* 809D08AC */ void Draw(); + /* 809D093C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809D0B70 */ void createHeapCallBack(fopAc_ac_c*); + /* 809D0B90 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809D0BDC */ void setParam(); + /* 809D0D1C */ void main(); + /* 809D0E9C */ void ctrlBtk(); + /* 809D0F7C */ void setAttnPos(); + /* 809D14BC */ void setExpressionAnm(int, bool); + /* 809D1670 */ void setExpressionBtp(int); + /* 809D1794 */ void setExpression(int, f32); + /* 809D17C0 */ void setMotionAnm(int, f32); + /* 809D1940 */ void setMotion(int, f32, int); + /* 809D1984 */ bool drawDbgInfo(); + /* 809D198C */ void drawOtherMdls(); + /* 809D1990 */ void getTypeFromParam(); + /* 809D19B0 */ void isDelete(); + /* 809D1A1C */ void reset(); + /* 809D1B9C */ void playExpression(); + /* 809D1D00 */ void playMotion(); + /* 809D1F50 */ void chkAction(int (daNpc_Grd_c::*)(void*)); + /* 809D1F7C */ void setAction(int (daNpc_Grd_c::*)(void*)); + /* 809D2024 */ void selectAction(); + /* 809D20A4 */ void doNormalAction(int); + /* 809D21B8 */ void doEvent(); + /* 809D2470 */ void setLookMode(int); + /* 809D2494 */ void lookat(); + /* 809D2730 */ void setExpressionTalkAfter(); + /* 809D2768 */ void wait(void*); + /* 809D2970 */ void talk(void*); + /* 809D2B20 */ void test(void*); + /* 809D2C9C */ void ECut_nodToGrz(int); + /* 809D3994 */ void adjustShapeAngle(); + + static void* mEvtCutNameList[2]; + static u8 mEvtCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe1c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Grd_c) == 0xe1c); + +class daNpc_Grd_Param_c { +public: + /* 809D3998 */ ~daNpc_Grd_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_GRD_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h b/include/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h index c40b941ad7..187abc7468 100644 --- a/include/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h +++ b/include/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_GRM_H #define D_A_NPC_GRM_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grM_c + * @brief Goron Adult (Shopkeeper) + * + * @details + * + */ +class daNpc_grM_c : public fopAc_ac_c { +public: + /* 809D406C */ ~daNpc_grM_c(); + /* 809D4194 */ void create(); + /* 809D441C */ void CreateHeap(); + /* 809D45C4 */ void Delete(); + /* 809D45F8 */ void Execute(); + /* 809D46D4 */ void Draw(); + /* 809D4768 */ void createHeapCallBack(fopAc_ac_c*); + /* 809D4788 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809D47E0 */ bool getType(); + /* 809D47E8 */ void getFlowNodeNo(); + /* 809D4804 */ void getMaxNumItem(); + /* 809D4810 */ void isDelete(); + /* 809D4820 */ void reset(); + /* 809D4944 */ void afterJntAnm(int); + /* 809D49D0 */ void setParam(); + /* 809D4B24 */ void setAfterTalkMotion(); + /* 809D4BB8 */ void srchActors(); + /* 809D4BBC */ void evtProc(); + /* 809D4E2C */ void evtTalk(); + /* 809D4FD0 */ void evtCutProc(); + /* 809D5098 */ void action(); + /* 809D51F4 */ void beforeMove(); + /* 809D526C */ void setAttnPos(); + /* 809D54C8 */ void setCollision(); + /* 809D55F8 */ bool drawDbgInfo(); + /* 809D5600 */ void drawOtherMdl(); + /* 809D5660 */ void selectAction(); + /* 809D56A8 */ void chkAction(int (daNpc_grM_c::*)(void*)); + /* 809D56D4 */ void setAction(int (daNpc_grM_c::*)(void*)); + /* 809D577C */ void cutTalkSpa(int); + /* 809D58F4 */ void tend(void*); + /* 809D5AAC */ void talk(void*); + /* 809D5C30 */ void shop(void*); + /* 809D5E20 */ daNpc_grM_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809D5F98 */ bool getEyeballMaterialNo(); + /* 809D5FA0 */ s32 getHeadJointNo(); + /* 809D5FA8 */ s32 getNeckJointNo(); + /* 809D5FB0 */ bool getBackboneJointNo(); + /* 809D5FB8 */ void checkChangeJoint(int); + /* 809D5FC8 */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0x10e4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grM_c) == 0x10e4); + +class daNpc_grM_Param_c { +public: + /* 809D5FD8 */ ~daNpc_grM_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_GRM_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h b/include/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h index 3e58b53a54..e75409ad9a 100644 --- a/include/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h +++ b/include/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h @@ -1,6 +1,74 @@ #ifndef D_A_NPC_GRMC_H #define D_A_NPC_GRMC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grMC_c + * @brief Goron Child (Shopkeeper) + * + * @details + * + */ +class daNpc_grMC_c : public fopAc_ac_c { +public: + /* 809D740C */ ~daNpc_grMC_c(); + /* 809D7534 */ void create(); + /* 809D77BC */ void CreateHeap(); + /* 809D79BC */ void Delete(); + /* 809D79F0 */ void Execute(); + /* 809D7AD4 */ void Draw(); + /* 809D7B18 */ void createHeapCallBack(fopAc_ac_c*); + /* 809D7B38 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809D7B90 */ bool getType(); + /* 809D7B98 */ void getFlowNodeNo(); + /* 809D7BB4 */ void getMaxNumItem(); + /* 809D7BC0 */ void isDelete(); + /* 809D7C34 */ void reset(); + /* 809D7D48 */ void afterJntAnm(int); + /* 809D7DD4 */ void setParam(); + /* 809D7F28 */ void setAfterTalkMotion(); + /* 809D7FCC */ void srchActors(); + /* 809D7FD0 */ void evtTalk(); + /* 809D8174 */ void evtCutProc(); + /* 809D823C */ void action(); + /* 809D8398 */ void beforeMove(); + /* 809D8410 */ void setAttnPos(); + /* 809D8670 */ void setCollision(); + /* 809D87A0 */ bool drawDbgInfo(); + /* 809D87A8 */ void drawOtherMdl(); + /* 809D8808 */ void selectAction(); + /* 809D8850 */ void chkAction(int (daNpc_grMC_c::*)(void*)); + /* 809D887C */ void setAction(int (daNpc_grMC_c::*)(void*)); + /* 809D8924 */ void tend(void*); + /* 809D8AE8 */ void talk(void*); + /* 809D8C6C */ void shop(void*); + /* 809D8E5C */ daNpc_grMC_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 809D8FD4 */ s32 getHeadJointNo(); + /* 809D8FDC */ s32 getNeckJointNo(); + /* 809D8FE4 */ bool getBackboneJointNo(); + /* 809D8FEC */ void checkChangeJoint(int); + /* 809D8FFC */ void checkRemoveJoint(int); + /* 809D900C */ bool getEyeballMaterialNo(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0x10e4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grMC_c) == 0x10e4); + +class daNpc_grMC_Param_c { +public: + /* 809D9014 */ ~daNpc_grMC_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_GRMC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h b/include/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h index 7eb99c263f..5eae13fb54 100644 --- a/include/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h +++ b/include/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h @@ -1,6 +1,75 @@ #ifndef D_A_NPC_GRO_H #define D_A_NPC_GRO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grO_c + * @brief Gor Ebizo + * + * @details + * + */ +class daNpc_grO_c : public fopAc_ac_c { +public: + /* 809DA56C */ daNpc_grO_c(); + /* 809DA780 */ ~daNpc_grO_c(); + /* 809DA980 */ void create(); + /* 809DAC58 */ void CreateHeap(); + /* 809DB130 */ void Delete(); + /* 809DB164 */ void Execute(); + /* 809DB184 */ void Draw(); + /* 809DB214 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809DB448 */ void createHeapCallBack(fopAc_ac_c*); + /* 809DB468 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809DB4B4 */ void setParam(); + /* 809DB5F4 */ void main(); + /* 809DB774 */ void ctrlBtk(); + /* 809DB854 */ void setAttnPos(); + /* 809DBD58 */ void setExpressionAnm(int, bool); + /* 809DBFF4 */ void setExpressionBtp(int); + /* 809DC118 */ void setExpression(int, f32); + /* 809DC144 */ void setMotionAnm(int, f32); + /* 809DC2E4 */ void setMotion(int, f32, int); + /* 809DC328 */ bool drawDbgInfo(); + /* 809DC330 */ void drawOtherMdls(); + /* 809DC3DC */ void getTypeFromParam(); + /* 809DC43C */ void isDelete(); + /* 809DC4F4 */ void reset(); + /* 809DC67C */ void playExpression(); + /* 809DCA68 */ void playMotion(); + /* 809DCDA4 */ void chkAction(int (daNpc_grO_c::*)(void*)); + /* 809DCDD0 */ void setAction(int (daNpc_grO_c::*)(void*)); + /* 809DCE78 */ void selectAction(); + /* 809DCF44 */ void doNormalAction(int); + /* 809DD070 */ void doEvent(); + /* 809DD3D8 */ void setLookMode(int); + /* 809DD3FC */ void lookat(); + /* 809DD684 */ void setExpressionTalkAfter(); + /* 809DD758 */ void wait(void*); + /* 809DD960 */ void bokinWait(void*); + /* 809DDB68 */ void waitMaro(void*); + /* 809DDCF8 */ void talk(void*); + /* 809DE0D0 */ void ECut_bokinFinish(int); + /* 809DE30C */ void cutPushOut(int); + /* 809DE4EC */ void test(void*); + /* 809DEF0C */ void adjustShapeAngle(); + + static void* mEvtCutNameList[3]; + static u8 mEvtCutList[36]; + +private: + /* 0x568 */ u8 field_0x568[0xe30 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grO_c) == 0xe30); + +class daNpc_grO_Param_c { +public: + /* 809DEF10 */ ~daNpc_grO_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_GRO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h b/include/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h index 2a03bb279e..783faffd2f 100644 --- a/include/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h +++ b/include/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h @@ -1,6 +1,72 @@ #ifndef D_A_NPC_GRR_H #define D_A_NPC_GRR_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grR_c + * @brief Gor Liggs + * + * @details + * + */ +class daNpc_grR_c : public fopAc_ac_c { +public: + /* 809DF8CC */ daNpc_grR_c(); + /* 809DFAE0 */ ~daNpc_grR_c(); + /* 809DFCE0 */ void create(); + /* 809DFFB8 */ void CreateHeap(); + /* 809E03FC */ void Delete(); + /* 809E0430 */ void Execute(); + /* 809E0450 */ void Draw(); + /* 809E04E0 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809E0714 */ void createHeapCallBack(fopAc_ac_c*); + /* 809E0734 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809E0780 */ void setParam(); + /* 809E08FC */ void main(); + /* 809E0A7C */ void ctrlBtk(); + /* 809E0B5C */ void setAttnPos(); + /* 809E105C */ void setExpressionAnm(int, bool); + /* 809E1260 */ void setExpressionBtp(int); + /* 809E138C */ void setExpression(int, f32); + /* 809E13B8 */ void setMotionAnm(int, f32); + /* 809E1548 */ void setMotion(int, f32, int); + /* 809E158C */ bool drawDbgInfo(); + /* 809E1594 */ void drawOtherMdls(); + /* 809E1598 */ void getTypeFromParam(); + /* 809E15E4 */ void isDelete(); + /* 809E16CC */ void reset(); + /* 809E18A4 */ void playExpression(); + /* 809E1B28 */ void playMotion(); + /* 809E1F10 */ void chkAction(int (daNpc_grR_c::*)(void*)); + /* 809E1F3C */ void setAction(int (daNpc_grR_c::*)(void*)); + /* 809E1FE4 */ void selectAction(); + /* 809E2088 */ void doNormalAction(int); + /* 809E219C */ void doEvent(); + /* 809E2480 */ void setLookMode(int); + /* 809E24A4 */ void lookat(); + /* 809E272C */ void setExpressionTalkAfter(); + /* 809E27CC */ void wait(void*); + /* 809E29B8 */ void waitMaro(void*); + /* 809E2B48 */ void talk(void*); + /* 809E2E84 */ void test(void*); + /* 809E3868 */ void adjustShapeAngle(); + + static void* mEvtCutNameList; + static u8 mEvtCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe20 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grR_c) == 0xe20); + +class daNpc_grR_Param_c { +public: + /* 809E386C */ ~daNpc_grR_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_GRR_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h b/include/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h index 4a1d43aff3..2a11596a92 100644 --- a/include/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h +++ b/include/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_GRS_H #define D_A_NPC_GRS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_grS_c + * @brief Gor Amoto + * + * @details + * + */ +class daNpc_grS_c : public fopAc_ac_c { +public: + /* 809E40CC */ daNpc_grS_c(); + /* 809E42E0 */ ~daNpc_grS_c(); + /* 809E44E0 */ void create(); + /* 809E47B4 */ void CreateHeap(); + /* 809E4C58 */ void Delete(); + /* 809E4C8C */ void Execute(); + /* 809E4CAC */ void Draw(); + /* 809E4D3C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809E4F70 */ void createHeapCallBack(fopAc_ac_c*); + /* 809E4F90 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809E4FDC */ void setParam(); + /* 809E510C */ void main(); + /* 809E528C */ void ctrlBtk(); + /* 809E536C */ void setAttnPos(); + /* 809E5874 */ void setExpressionAnm(int, bool); + /* 809E5A08 */ void setExpressionBtp(int); + /* 809E5B1C */ void setExpression(int, f32); + /* 809E5B48 */ void setMotionAnm(int, f32); + /* 809E5CB8 */ void setMotion(int, f32, int); + /* 809E5CFC */ bool drawDbgInfo(); + /* 809E5D04 */ void drawOtherMdls(); + /* 809E5DB4 */ void getTypeFromParam(); + /* 809E5DD4 */ void isDelete(); + /* 809E5E58 */ void reset(); + /* 809E6000 */ void playExpression(); + /* 809E6164 */ void playMotion(); + /* 809E62F0 */ void chkAction(int (daNpc_grS_c::*)(void*)); + /* 809E631C */ void setAction(int (daNpc_grS_c::*)(void*)); + /* 809E63C4 */ void selectAction(); + /* 809E6444 */ void doNormalAction(int); + /* 809E6570 */ void doEvent(); + /* 809E6854 */ void setLookMode(int); + /* 809E6878 */ void lookat(); + /* 809E6B00 */ void setExpressionTalkAfter(); + /* 809E6B74 */ void cutPushOut(int); + /* 809E6D54 */ void wait(void*); + /* 809E6F5C */ void talk(void*); + /* 809E721C */ void test(void*); + /* 809E7300 */ void setPrtcl(); + /* 809E7D5C */ void adjustShapeAngle(); + + static void* mEvtCutNameList[2]; + static u8 mEvtCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe38 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_grS_c) == 0xe38); + +class daNpc_grS_Param_c { +public: + /* 809E7D60 */ ~daNpc_grS_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_GRS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h b/include/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h index da3c63eb8d..2cc734d7dd 100644 --- a/include/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h +++ b/include/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h @@ -1,6 +1,90 @@ #ifndef D_A_NPC_GRZ_H #define D_A_NPC_GRZ_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Grz_c + * @brief Darbus + * + * @details + * + */ +class daNpc_Grz_c : public fopAc_ac_c { +public: + class daNpc_GrZ_prtclMngr_c { + public: + /* 809E8658 */ ~daNpc_GrZ_prtclMngr_c(); + /* 809E8694 */ daNpc_GrZ_prtclMngr_c(); + }; + + /* 809E840C */ daNpc_Grz_c(); + /* 809E88C0 */ ~daNpc_Grz_c(); + /* 809E8BA0 */ void create(); + /* 809E8E68 */ void CreateHeap(); + /* 809E92AC */ void Delete(); + /* 809E92E0 */ void Execute(); + /* 809E9324 */ void Draw(); + /* 809E9568 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 809E979C */ void createHeapCallBack(fopAc_ac_c*); + /* 809E97BC */ void ctrlJointCallBack(J3DJoint*, int); + /* 809E9808 */ void setParam(); + /* 809E9954 */ void main(); + /* 809E9AD4 */ void ctrlBtk(); + /* 809E9BB4 */ void setAttnPos(); + /* 809EA1DC */ void setCollisionPunch(); + /* 809EA734 */ void setExpressionAnm(int, bool); + /* 809EAA08 */ void setExpressionBtp(int); + /* 809EAB34 */ void setExpression(int, f32); + /* 809EAB60 */ void setMotionAnm(int, f32); + /* 809EAD4C */ void setMotion(int, f32, int); + /* 809EAD90 */ bool drawDbgInfo(); + /* 809EAD98 */ void drawOtherMdls(); + /* 809EAD9C */ void getTypeFromParam(); + /* 809EADE8 */ void isDelete(); + /* 809EAE88 */ void reset(); + /* 809EB154 */ void resetCol(); + /* 809EB234 */ void playExpression(); + /* 809EB5C0 */ void playMotion(); + /* 809EBA3C */ void chkAction(int (daNpc_Grz_c::*)(void*)); + /* 809EBA68 */ void setAction(int (daNpc_Grz_c::*)(void*)); + /* 809EBB10 */ void selectAction(); + /* 809EBC04 */ void doNormalAction(int); + /* 809EBD18 */ void doEvent(); + /* 809EC0CC */ void setSkipZev(int, int); + /* 809EC164 */ void setLookMode(int); + /* 809EC188 */ void lookat(); + /* 809EC424 */ void setExpressionTalkAfter(); + /* 809EC4C4 */ void wait(void*); + /* 809EC854 */ void waitSmash(void*); + /* 809ECBF0 */ void lieDown(void*); + /* 809ECCA0 */ void waitWeak(void*); + /* 809ECD50 */ void talk(void*); + /* 809ECF88 */ void test(void*); + /* 809ED06C */ void setPrtcl(); + /* 809ED18C */ void doWaitCut(int); + /* 809ED228 */ void doRebirthCut(int); + /* 809ED3D4 */ void doTalkStandCut(int); + /* 809ED5EC */ void doGoOutCut(int); + /* 809EDBA4 */ void doStoneSmashCut(int); + /* 809EE5F0 */ void doStoneSmashSkipCut(int); + /* 809EF184 */ void adjustShapeAngle(); + + static void* mEvtCutNameList[7]; + static u8 mEvtCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0x1b08 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Grz_c) == 0x1b08); + +class daNpc_Grz_Param_c { +public: + /* 809EF188 */ ~daNpc_Grz_Param_c(); + + static u8 const m[128]; +}; + #endif /* D_A_NPC_GRZ_H */ diff --git a/include/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h b/include/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h index 6dda028efd..83c12bf597 100644 --- a/include/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h +++ b/include/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h @@ -1,6 +1,53 @@ #ifndef D_A_NPC_GUARD_H #define D_A_NPC_GUARD_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcGuard_c + * @brief Guard (Hyrule Castle Town Guard?) + * + * @details + * + */ +class daNpcGuard_c : public fopAc_ac_c { +public: + struct Mode_e {}; + + /* 809EFE20 */ void setAction(daNpcGuard_c::Mode_e); + /* 809EFE64 */ void callInit(); + /* 809EFE8C */ void callExecute(); + /* 809EFEB8 */ void initPath(); + /* 809EFF1C */ void executePath(); + /* 809F0184 */ void initRun(); + /* 809F01E8 */ void executeRun(); + /* 809F03FC */ void initFightWait(); + /* 809F04B4 */ void executeFightWait(); + /* 809F06F4 */ void initFightStep(); + /* 809F0700 */ void executeFightStep(); + /* 809F0778 */ void initFightMenace(); + /* 809F07F8 */ void executeFightMenace(); + /* 809F08DC */ void initFear(); + /* 809F0960 */ void executeFear(); + /* 809F0A50 */ void initEscape(); + /* 809F0B20 */ void executeEscape(); + /* 809F0DD4 */ void setAngle(); + /* 809F0DE0 */ void setSpeed(f32, f32, f32*, int); + /* 809F0ED4 */ void pathMoveF(); + /* 809F12F0 */ void create(); + /* 809F14CC */ void create_init(); + /* 809F17D0 */ void setMtx(); + /* 809F1878 */ void lookat(); + /* 809F1F74 */ ~daNpcGuard_c(); + /* 809F2044 */ void execute(); + + static u8 ActionTable[168]; + +private: + /* 0x568 */ u8 field_0x568[0xda8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcGuard_c) == 0xda8); + #endif /* D_A_NPC_GUARD_H */ diff --git a/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h b/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h index 096953219a..1e050991d4 100644 --- a/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h +++ b/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h @@ -3,7 +3,15 @@ #include "d/a/d_a_npc.h" -class daNpc_GWolf_c : public daNpcF_c { +/** + * @ingroup actors-npcs + * @class daNpc_GWolf_c + * @brief Golden Wolf + * + * @details + * + */ +class daNpc_GWolf_c : public fopAc_ac_c { public: /* 809F30AC */ daNpc_GWolf_c(); /* 809F34C0 */ void create(); @@ -58,8 +66,18 @@ public: static void* mEvtCutNameList[5]; static u8 mEvtCutList[60]; - /* 0xB48 */ u8 field_0xb48[0xE1C - 0xB48]; +private: + /* 0x568 */ u8 field_0xb48[0xE1C - 0x568]; /* 0xE1C */ u8 field_0xe1c; }; +STATIC_ASSERT(sizeof(daNpc_GWolf_c) == 0xe20); + +class daNpc_GWolf_Param_c { +public: + /* 809F8488 */ ~daNpc_GWolf_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_GWOLF_H */ diff --git a/include/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h b/include/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h index 28c4c56cec..fa131192ff 100644 --- a/include/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h +++ b/include/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h @@ -1,6 +1,99 @@ #ifndef D_A_NPC_HANJO_H #define D_A_NPC_HANJO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Hanjo_c + * @brief Hanch + * + * @details + * + */ +class daNpc_Hanjo_c : public fopAc_ac_c { +public: + /* 809F908C */ ~daNpc_Hanjo_c(); + /* 809F9278 */ void create(); + /* 809F9578 */ void CreateHeap(); + /* 809F9B38 */ void Delete(); + /* 809F9B6C */ void Execute(); + /* 809F9B8C */ void Draw(); + /* 809F9C20 */ void createHeapCallBack(fopAc_ac_c*); + /* 809F9C40 */ void ctrlJointCallBack(J3DJoint*, int); + /* 809F9C98 */ void getType(); + /* 809F9CF0 */ void isDelete(); + /* 809F9D9C */ void reset(); + /* 809F9FCC */ void afterJntAnm(int); + /* 809FA050 */ void setParam(); + /* 809FA1C4 */ void checkChangeEvt(); + /* 809FA3B8 */ void setAfterTalkMotion(); + /* 809FA45C */ void srchActors(); + /* 809FA55C */ void evtTalk(); + /* 809FA5FC */ void evtCutProc(); + /* 809FA6C4 */ void action(); + /* 809FA88C */ void beforeMove(); + /* 809FAABC */ void afterMoved(); + /* 809FABB8 */ void setAttnPos(); + /* 809FAF90 */ void setCollision(); + /* 809FB2C4 */ bool drawDbgInfo(); + /* 809FB2CC */ void drawOtherMdl(); + /* 809FB59C */ void selectAction(); + /* 809FB6CC */ void chkAction(int (daNpc_Hanjo_c::*)(void*)); + /* 809FB6F8 */ void setAction(int (daNpc_Hanjo_c::*)(void*)); + /* 809FB7A0 */ void initShoot(int); + /* 809FB90C */ void shoot(int); + /* 809FBB94 */ void initDive(); + /* 809FBC3C */ void dive(); + /* 809FC06C */ void lookround(s16); + /* 809FC1BC */ void commandToHawk(); + /* 809FC2E4 */ void cutConversationAboutSaru(int); + /* 809FC438 */ void cutConversation(int); + /* 809FC80C */ void cutPursuitBee(int); + /* 809FCDC4 */ void cutAppearHawker(int); + /* 809FD3C0 */ void cutDive(int); + /* 809FD86C */ void wait(void*); + /* 809FDEFC */ void throwStone(void*); + /* 809FE2E0 */ void takayose(void*); + /* 809FEAEC */ void talk(void*); + /* 80A000A8 */ daNpc_Hanjo_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A00334 */ s32 getEyeballMaterialNo(); + /* 80A004D0 */ s32 getHeadJointNo(); + /* 80A004D8 */ s32 getNeckJointNo(); + /* 80A004E0 */ bool getBackboneJointNo(); + /* 80A00504 */ void checkChangeJoint(int); + /* 80A00514 */ void checkRemoveJoint(int); + /* 80A00524 */ s32 getFootLJointNo(); + /* 80A0052C */ s32 getFootRJointNo(); + + static u8 const mStoneCcDObjInfo[48]; + static void* mCutNameList[6]; + static u8 mCutList[72]; + static u8 mStoneCcDSph[64]; +private: + /* 0x568 */ u8 field_0x568[0x172c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Hanjo_c) == 0x172c); + +class daNpc_Hanjo_Param_c { +public: + /* 80A00534 */ ~daNpc_Hanjo_Param_c(); + + static u8 const m[180]; +}; + +class daNpc_HanjoStone_c { +public: + /* 809FFFD4 */ ~daNpc_HanjoStone_c(); + /* 80A001FC */ daNpc_HanjoStone_c(); + /* 80A0033C */ void getPos(); + /* 80A00358 */ void getOld(); + /* 80A00374 */ void posMoveF(fopAc_ac_c*); + /* 80A004A8 */ void setPos(cXyz); + /* 80A004E8 */ void setAngle(csXyz); +}; #endif /* D_A_NPC_HANJO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h b/include/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h index 177bab09a9..0b6e9db346 100644 --- a/include/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h +++ b/include/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h @@ -1,6 +1,27 @@ #ifndef D_A_NPC_HENNA_H #define D_A_NPC_HENNA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_henna_class + * @brief Hena + * + * @details + * + */ +class npc_henna_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0x7fc - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_henna_class) == 0x7fc); + +class daNpc_Henna_HIO_c { +public: + /* 80542F0C */ daNpc_Henna_HIO_c(); + /* 80549E40 */ ~daNpc_Henna_HIO_c(); +}; + #endif /* D_A_NPC_HENNA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h b/include/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h index a7c4ed3143..c31a628b08 100644 --- a/include/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h +++ b/include/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h @@ -1,6 +1,21 @@ #ifndef D_A_NPC_HENNA0_H #define D_A_NPC_HENNA0_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class d_a_npc_henna0 + * @brief Henna 0 (unused?) + * + * @details + * + */ +class d_a_npc_henna0 : public fopAc_ac_c { + private: + /* 0x568 */ u8 field_0x568[0x828 - 0x568]; +}; + +STATIC_ASSERT(sizeof(d_a_npc_henna0) == 0x828); #endif /* D_A_NPC_HENNA0_H */ diff --git a/include/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h b/include/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h index 69be9985ec..5689e268f5 100644 --- a/include/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h +++ b/include/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h @@ -3,6 +3,14 @@ #include "d/a/d_a_npc.h" +/** + * @ingroup actors-npcs + * @class daNpc_Hoz_c + * @brief Iza + * + * @details + * + */ class daNpc_Hoz_c : public daNpcT_c { public: enum Type { @@ -75,6 +83,7 @@ public: static void* mCutNameList[8]; static u8 mCutList[96]; +private: /* 0xE40 */ u8 field_0xe40[0x14d]; /* 0xF8D */ bool mGameStartFlag; /* 0xF8E */ u8 field_0xf8e[0x3a]; diff --git a/include/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h b/include/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h index f5e8cb13d9..8aa72ddae6 100644 --- a/include/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h +++ b/include/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h @@ -1,6 +1,61 @@ #ifndef D_A_NPC_IMPAL_H #define D_A_NPC_IMPAL_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcImpal_c + * @brief Impaz + * + * @details + * + */ +class daNpcImpal_c : public fopAc_ac_c { +public: + /* 80A079EC */ daNpcImpal_c(); + /* 80A07C00 */ ~daNpcImpal_c(); + /* 80A07DC4 */ void Create(); + /* 80A080F8 */ void CreateHeap(); + /* 80A08524 */ void Delete(); + /* 80A08558 */ void Execute(); + /* 80A0857C */ void Draw(); + /* 80A085EC */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A087BC */ void createHeapCallBack(fopAc_ac_c*); + /* 80A087DC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A08828 */ void setExpressionAnm(int, bool); + /* 80A08A68 */ void setExpressionBtp(int); + /* 80A08B48 */ void setMotionAnm(int, f32); + /* 80A08CBC */ void reset(); + /* 80A08EB8 */ void setAction(bool (daNpcImpal_c::*)(void*)); + /* 80A090E8 */ void wait(void*); + /* 80A099B4 */ void setMotion(int, f32, int); + /* 80A099F8 */ void setExpression(int, f32); + /* 80A09A24 */ void talk(void*); + /* 80A09F4C */ void demo(void*); + /* 80A0A1E0 */ void EvCut_ImpalAppear1(int); + /* 80A0A680 */ void EvCut_ImpalAppear2(int); + /* 80A0A950 */ void EvCut_CopyRod(int); + /* 80A0ADF8 */ void setParam(); + /* 80A0AEA8 */ void main(); + /* 80A0B380 */ void ctrlBtk(); + /* 80A0B45C */ void setAttnPos(); + /* 80A0B76C */ void lookat(); + /* 80A0B94C */ bool drawDbgInfo(); + + static u8 mEvtSeqList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xdec - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcImpal_c) == 0xdec); + +class daNpcImpal_Param_c { +public: + /* 80A0C204 */ ~daNpcImpal_Param_c(); + + static u8 const m[112]; +}; + #endif /* D_A_NPC_IMPAL_H */ diff --git a/include/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h b/include/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h index 195ae5fb03..64697eb191 100644 --- a/include/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h +++ b/include/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h @@ -1,6 +1,21 @@ #ifndef D_A_NPC_INKO_H #define D_A_NPC_INKO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_inko_class + * @brief Inko (Hena's Bird) + * + * @details + * + */ +class npc_inko_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0x648 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_inko_class) == 0x648); + #endif /* D_A_NPC_INKO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h b/include/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h index c066238084..fb8d5c5470 100644 --- a/include/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h +++ b/include/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h @@ -1,6 +1,71 @@ #ifndef D_A_NPC_INS_H #define D_A_NPC_INS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcIns_c + * @brief Agitha + * + * @details + * + */ +class daNpcIns_c : public fopAc_ac_c { +public: + /* 80A0E24C */ daNpcIns_c(); + /* 80A0E460 */ ~daNpcIns_c(); + /* 80A0E660 */ void Create(); + /* 80A0EA30 */ void CreateHeap(); + /* 80A0EF3C */ void Delete(); + /* 80A0EF70 */ void Execute(); + /* 80A0EF94 */ void Draw(); + /* 80A0F0BC */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A0F28C */ void createHeapCallBack(fopAc_ac_c*); + /* 80A0F2AC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A0F2F8 */ void setExpressionAnm(int, bool); + /* 80A0F538 */ void setExpressionBtp(int); + /* 80A0F618 */ void setMotionAnm(int, f32); + /* 80A0F78C */ void reset(); + /* 80A0F984 */ void waitShop(void*); + /* 80A0FF40 */ void setMotion(int, f32, int); + /* 80A0FFC4 */ void setExpression(int, f32); + /* 80A0FFF0 */ void waitPresent(void*); + /* 80A103A0 */ void waitOutSide1(void*); + /* 80A10950 */ void waitOutSide2(void*); + /* 80A10CD8 */ void goHome(void*); + /* 80A11378 */ void talk(void*); + /* 80A11A7C */ void demo(void*); + /* 80A11BE8 */ void isInsectComplete(); + /* 80A11C50 */ void getInsectParamData(int); + /* 80A11D44 */ void setWaitAction(); + /* 80A11F84 */ void setPath(int); + /* 80A1211C */ void checkPoint(cXyz&, f32); + /* 80A122D0 */ void setNextPoint(); + /* 80A12480 */ void getTargetPoint(int, Vec*); + /* 80A124D0 */ void pathMoveF(); + /* 80A12618 */ void setParam(); + /* 80A126D4 */ void main(); + /* 80A12A10 */ void playMotion(); + /* 80A12DC8 */ void ctrlBtk(); + /* 80A12EA4 */ void setAttnPos(); + /* 80A131AC */ void lookat(); + /* 80A1339C */ void setMtx(); + /* 80A13460 */ bool drawDbgInfo(); + + static u8 mEvtSeqList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe24 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcIns_c) == 0xe24); + +class daNpcIns_Param_c { +public: + /* 80A13D40 */ ~daNpcIns_Param_c(); + + static u8 const m[112]; +}; + #endif /* D_A_NPC_INS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h b/include/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h index f8b3fbd543..206b5e390a 100644 --- a/include/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h +++ b/include/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h @@ -1,6 +1,84 @@ #ifndef D_A_NPC_JAGAR_H #define D_A_NPC_JAGAR_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Jagar_c + * @brief Jaggle + * + * @details + * + */ +class daNpc_Jagar_c : public fopAc_ac_c { +public: + /* 80A1470C */ ~daNpc_Jagar_c(); + /* 80A14858 */ void create(); + /* 80A14B20 */ void CreateHeap(); + /* 80A14F4C */ void Delete(); + /* 80A14F80 */ void Execute(); + /* 80A14FA0 */ void Draw(); + /* 80A15034 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A15054 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A150AC */ void getType(); + /* 80A150F8 */ void isDelete(); + /* 80A15198 */ void reset(); + /* 80A15364 */ void afterJntAnm(int); + /* 80A153E8 */ void setParam(); + /* 80A155E4 */ void checkChangeEvt(); + /* 80A15714 */ void setAfterTalkMotion(); + /* 80A157B4 */ void srchActors(); + /* 80A158A0 */ void evtTalk(); + /* 80A15940 */ void evtCutProc(); + /* 80A15A08 */ void action(); + /* 80A15CA4 */ void beforeMove(); + /* 80A15D68 */ void setAttnPos(); + /* 80A1607C */ void setCollision(); + /* 80A161EC */ bool drawDbgInfo(); + /* 80A161F4 */ void changeBtp(int*, int*); + /* 80A16234 */ void selectAction(); + /* 80A162B0 */ void chkAction(int (daNpc_Jagar_c::*)(void*)); + /* 80A162DC */ void setAction(int (daNpc_Jagar_c::*)(void*)); + /* 80A16384 */ void cutClimbUp(int); + /* 80A16544 */ void cutNeedYourHelp(int); + /* 80A16CD8 */ void cutAnger(int); + /* 80A16EFC */ void cutConversationWithBou(int); + /* 80A1705C */ void cutConfidentialConversation(int); + /* 80A173D8 */ void cutFindWolf(int); + /* 80A17898 */ void chkSitMotion(); + /* 80A17924 */ void chkSitMotion2(); + /* 80A17984 */ void chkChuMotion(); + /* 80A179F8 */ void chkToMotion(); + /* 80A17A2C */ void wait(void*); + /* 80A1856C */ void talkwithBou(void*); + /* 80A18B74 */ void talk(void*); + /* 80A1A194 */ daNpc_Jagar_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A1A274 */ bool getEyeballMaterialNo(); + /* 80A1A27C */ s32 getHeadJointNo(); + /* 80A1A284 */ s32 getNeckJointNo(); + /* 80A1A28C */ bool getBackboneJointNo(); + /* 80A1A294 */ void checkChangeJoint(int); + /* 80A1A2A4 */ void checkRemoveJoint(int); + /* 80A1A2B4 */ s32 getFootLJointNo(); + /* 80A1A2BC */ s32 getFootRJointNo(); + + static void* mCutNameList[7]; + static u8 mCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0x100c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Jagar_c) == 0x100c); + +class daNpc_Jagar_Param_c { +public: + /* 80A1A2C4 */ ~daNpc_Jagar_Param_c(); + + static u8 const m[160]; +}; #endif /* D_A_NPC_JAGAR_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h b/include/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h index acdee8eb03..4b2b1c8f77 100644 --- a/include/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h +++ b/include/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_KAKASHI_H #define D_A_NPC_KAKASHI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kakashi_c + * @brief Scarecrow + * + * @details + * + */ +class daNpc_Kakashi_c : public fopAc_ac_c { +public: + /* 8054B36C */ ~daNpc_Kakashi_c(); + /* 8054B4E8 */ void create(); + /* 8054B7D8 */ void CreateHeap(); + /* 8054B908 */ void Delete(); + /* 8054B93C */ void Execute(); + /* 8054B994 */ void Draw(); + /* 8054B9D8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 8054BB34 */ void createHeapCallBack(fopAc_ac_c*); + /* 8054BB54 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8054BBAC */ void getType(); + /* 8054BC10 */ void isDelete(); + /* 8054BC98 */ void reset(); + /* 8054BEA8 */ void setParam(); + /* 8054BF88 */ void srchActors(); + /* 8054BF8C */ void checkChangeEvt(); + /* 8054C034 */ void evtTalk(); + /* 8054C0D4 */ void evtEndProc(); + /* 8054C0E8 */ void evtCutProc(); + /* 8054C1B0 */ void action(); + /* 8054C268 */ void beforeMove(); + /* 8054C2E0 */ void setAttnPos(); + /* 8054C584 */ void setCollision(); + /* 8054C924 */ bool drawDbgInfo(); + /* 8054C92C */ void selectAction(); + /* 8054CA1C */ void chkAction(int (daNpc_Kakashi_c::*)(void*)); + /* 8054CA48 */ void setAction(int (daNpc_Kakashi_c::*)(void*)); + /* 8054CAF0 */ void hitChk(); + /* 8054CEA0 */ void setStaggerParam(fopAc_ac_c*); + /* 8054D26C */ void setPrtcls(int); + /* 8054D374 */ void judgeSwdTutorial(); + /* 8054D490 */ void cutSwdTutorial(int); + /* 8054D57C */ void cutGetWoodSwd(int); + /* 8054D604 */ void cutMarosWhisper(int); + /* 8054D668 */ void wait(void*); + /* 8054D694 */ void swdTutorial(void*); + /* 8054D8BC */ void talk(void*); + /* 8054E804 */ daNpc_Kakashi_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList[4]; + static u8 mCutList[48]; + +private: + /* 0x568 */ u8 field_0x568[0x1398 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kakashi_c) == 0x1398); + +class daNpc_Kakashi_Param_c { +public: + /* 8054EA58 */ ~daNpc_Kakashi_Param_c(); + + static u8 const m[152]; +}; + #endif /* D_A_NPC_KAKASHI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h b/include/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h index a5ef848f49..13d0d972a1 100644 --- a/include/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h +++ b/include/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h @@ -1,6 +1,117 @@ #ifndef D_A_NPC_KASI_HANA_H #define D_A_NPC_KASI_HANA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcKasiHana_c + * @brief Hannah + * + * @details + * + */ +class daNpcKasiHana_c : public fopAc_ac_c { +public: + /* 80A1BE44 */ daNpcKasiHana_c(); + /* 80A1C0A4 */ ~daNpcKasiHana_c(); + /* 80A1C334 */ void Create(); + /* 80A1C5B0 */ void CreateHeap(); + /* 80A1C734 */ void Delete(); + /* 80A1C768 */ void Execute(); + /* 80A1C78C */ void Draw(); + /* 80A1C7D8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A1C964 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A1C984 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A1C9D0 */ void setParam(); + /* 80A1CA60 */ void main(); + /* 80A1CD28 */ void setAttnPos(); + /* 80A1CED0 */ void setMotionAnm(int, f32); + /* 80A1CFA0 */ void setMotion(int, f32, int); + /* 80A1CFE8 */ bool drawDbgInfo(); + /* 80A1CFF0 */ void reset(); + /* 80A1D238 */ void playMotion(); + /* 80A1D604 */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); + /* 80A1D77C */ void setAction(int (daNpcKasiHana_c::*)(int)); + /* 80A1D824 */ void setLookMode(int); + /* 80A1D848 */ void lookat(); + /* 80A1DA28 */ void step(s16, int); + /* 80A1DB1C */ void chkFindPlayer(); + /* 80A1DC00 */ void wait(int); + /* 80A1E184 */ void chace_st(int); + /* 80A1E228 */ void chace(int); + /* 80A1E3AC */ void getChacePos(); + /* 80A1E4AC */ void turn(int); + /* 80A1E578 */ void fear(int); + /* 80A1E78C */ void srchWolfTag(); + /* 80A1E7F4 */ void _srch_escape_tag(void*, void*); + /* 80A1E8C4 */ void getWolfPathNearIdx(); + /* 80A1E9F8 */ void talk(int); + /* 80A1EB5C */ void demo(int); + /* 80A1EE38 */ void escape(int); + /* 80A1EF90 */ void cheer(int); + /* 80A1F198 */ void _turn_to_link(s16); + /* 80A1F1E4 */ void _turn_pos(cXyz const&, s16); + /* 80A1F240 */ void actor_front_check(fopAc_ac_c*); + /* 80A1F318 */ void _getOffset(cXyz const&, cXyz&); + /* 80A1F384 */ void _Evt_Kasi_Appear(int); + /* 80A1F42C */ void _Evt_Kasi_Appear_CutInit(int const&); + /* 80A1F50C */ void _Evt_Kasi_Appear_CutMain(int const&); + /* 80A1F638 */ void _Evt_Kasi_Talk(int); + /* 80A1F740 */ void _Evt_Kasi_Talk_CutInit(int const&); + /* 80A1F860 */ void _Evt_Kasi_Talk_CutMain(int const&, int); + /* 80A1F9F4 */ void _Evt_Kasi(int); + /* 80A1FA9C */ void _Evt_Kasi_CutInit(int const&); + /* 80A1FBC4 */ void _Evt_Kasi_CutMain(int const&); + /* 80A1FD64 */ void _Evt_Kasi_Cheer(int); + /* 80A1FE6C */ void _Evt_Kasi_Cheer_CutInit(int const&); + /* 80A1FF78 */ void _Evt_Kasi_Cheer_CutMain(int const&, int); + /* 80A2016C */ void _Evt_Kasi_Cheer2(int); + /* 80A20244 */ void _Evt_Kasi_Cheer2_CutInit(int const&); + /* 80A20350 */ void _Evt_Kasi_Cheer2_CutMain(int const&, int); + /* 80A20678 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[72]; + static u8 mTargetTag[4]; + static u8 mTargetTagDist[4]; + static u8 mWolfAngle[2 + 2 /* padding */]; + +private: + /* 0x568 */ u8 field_0x568[0x1ac8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcKasiHana_c) == 0x1ac8); + +class daNpcKasiHana_Param_c { +public: + /* 80A2067C */ ~daNpcKasiHana_Param_c(); + + static u8 const m[124]; +}; + +class daNpcKasi_Mng_c { +public: + /* 80A1AFAC */ void calcEscapeForm(); + /* 80A1B0D8 */ void calcCenterPos(); + /* 80A1B1C8 */ void getDistFromCenter(); + /* 80A1B35C */ void getOffsetFromLeader(cXyz const&, cXyz&); + /* 80A1B410 */ void initPath(u8, u16); + /* 80A1B48C */ void getPlNearPoint(); + /* 80A1B5F0 */ void getSygnalInfo(); + /* 80A1B628 */ void sendInfo(); + /* 80A1B6F8 */ void offTalk(); + /* 80A1B774 */ void chkTalk(); + /* 80A1B810 */ void chkFear(); + /* 80A1B884 */ void chkEscape(); + /* 80A1B920 */ void createHearts(); + /* 80A1BAAC */ void allDemoMove(); + /* 80A1BB24 */ void allDemoNotMove(); + /* 80A1BB9C */ void isMiniGamePlaying(); + /* 80A1BBE0 */ void schMemberActor(); + /* 80A1BC88 */ void schDanchoActor(); + /* 80A1BCF0 */ void deleteAllMember(); + /* 80A1BD6C */ void chgWeightHeavy(); + /* 80A1BDD8 */ void chgWeightLight(); + /* 80A2065C */ void getCenterPos(); +}; #endif /* D_A_NPC_KASI_HANA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h b/include/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h index 719c83a9c6..7d733d060b 100644 --- a/include/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h +++ b/include/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h @@ -1,6 +1,84 @@ #ifndef D_A_NPC_KASI_KYU_H #define D_A_NPC_KASI_KYU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcKasiKyu_c + * @brief Kili + * + * @details + * + */ +class daNpcKasiKyu_c : public fopAc_ac_c { +public: + /* 80A219CC */ daNpcKasiKyu_c(); + /* 80A21C14 */ ~daNpcKasiKyu_c(); + /* 80A21E24 */ void Create(); + /* 80A220A0 */ void CreateHeap(); + /* 80A22224 */ void Delete(); + /* 80A22258 */ void Execute(); + /* 80A22284 */ void Draw(); + /* 80A222D0 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A2245C */ void createHeapCallBack(fopAc_ac_c*); + /* 80A2247C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A224C8 */ void setParam(); + /* 80A22534 */ void main(); + /* 80A227DC */ void setAttnPos(); + /* 80A22984 */ void setMotionAnm(int, f32); + /* 80A22A54 */ void setMotion(int, f32, int); + /* 80A22A9C */ bool drawDbgInfo(); + /* 80A22AA4 */ void reset(); + /* 80A22CD8 */ void playMotion(); + /* 80A2310C */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); + /* 80A23284 */ void setAction(int (daNpcKasiKyu_c::*)(int)); + /* 80A2332C */ void setLookMode(int); + /* 80A23350 */ void lookat(); + /* 80A23530 */ void step(s16, int); + /* 80A23624 */ void chkFindPlayer(); + /* 80A23708 */ void wait(int); + /* 80A23AB4 */ void fear(int); + /* 80A23C90 */ void srchWolfTag(); + /* 80A23CF8 */ void _srch_escape_tag(void*, void*); + /* 80A23DC8 */ void getWolfPathNearIdx(); + /* 80A23EFC */ void chace_st(int); + /* 80A23FA0 */ void chace(int); + /* 80A24110 */ void getChacePos(); + /* 80A241CC */ void turn_link(int); + /* 80A2428C */ void turn_home(int); + /* 80A24370 */ void turn_center(int); + /* 80A24440 */ void talk_dummy(int); + /* 80A244B8 */ void kya(int); + /* 80A24590 */ void kya2(int); + /* 80A24628 */ void kya_stop(int); + /* 80A246FC */ void iyan(int); + /* 80A24774 */ void iyan_look(int); + /* 80A2484C */ void turn_hana(int); + /* 80A2493C */ void escape(int); + /* 80A24A54 */ void wait_dummy(int); + /* 80A24AD8 */ void cheer(int); + /* 80A24CC4 */ void _turn_to_link(s16); + /* 80A24D10 */ void _turn_pos(cXyz const&, s16); + /* 80A24D6C */ void actor_front_check(fopAc_ac_c*); + /* 80A24E44 */ void _getOffset(cXyz const&, cXyz&); + /* 80A25848 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[12]; + static u8 mTargetTag[4]; + static u8 mTargetTagDist[4]; + +private: + /* 0x568 */ u8 field_0x568[0x146c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcKasiKyu_c) == 0x146c); + +class daNpcKasiKyu_Param_c { +public: + /* 80A2584C */ ~daNpcKasiKyu_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_KASI_KYU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h b/include/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h index b30c0a08e4..e48688b95f 100644 --- a/include/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h +++ b/include/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h @@ -1,6 +1,84 @@ #ifndef D_A_NPC_KASI_MICH_H #define D_A_NPC_KASI_MICH_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcKasiMich_c + * @brief Misha + * + * @details + * + */ +class daNpcKasiMich_c : public fopAc_ac_c { +public: + /* 80A261CC */ daNpcKasiMich_c(); + /* 80A26414 */ ~daNpcKasiMich_c(); + /* 80A26624 */ void Create(); + /* 80A268A0 */ void CreateHeap(); + /* 80A26A24 */ void Delete(); + /* 80A26A58 */ void Execute(); + /* 80A26A84 */ void Draw(); + /* 80A26AD0 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A26C5C */ void createHeapCallBack(fopAc_ac_c*); + /* 80A26C7C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A26CC8 */ void setParam(); + /* 80A26D34 */ void main(); + /* 80A26FDC */ void setAttnPos(); + /* 80A27184 */ void setMotionAnm(int, f32); + /* 80A27254 */ void setMotion(int, f32, int); + /* 80A2729C */ bool drawDbgInfo(); + /* 80A272A4 */ void reset(); + /* 80A274D8 */ void playMotion(); + /* 80A2790C */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); + /* 80A27A84 */ void setAction(int (daNpcKasiMich_c::*)(int)); + /* 80A27B2C */ void setLookMode(int); + /* 80A27B50 */ void lookat(); + /* 80A27D30 */ void step(s16, int); + /* 80A27E24 */ void chkFindPlayer(); + /* 80A27F08 */ void wait(int); + /* 80A282B4 */ void fear(int); + /* 80A28490 */ void srchWolfTag(); + /* 80A284F8 */ void _srch_escape_tag(void*, void*); + /* 80A285C8 */ void getWolfPathNearIdx(); + /* 80A286FC */ void chace_st(int); + /* 80A287A0 */ void chace(int); + /* 80A28910 */ void getChacePos(); + /* 80A289CC */ void turn_link(int); + /* 80A28A8C */ void turn_home(int); + /* 80A28B70 */ void turn_center(int); + /* 80A28C40 */ void talk_dummy(int); + /* 80A28CB8 */ void kya(int); + /* 80A28D90 */ void kya2(int); + /* 80A28E28 */ void kya_stop(int); + /* 80A28EFC */ void iyan(int); + /* 80A28F74 */ void escape(int); + /* 80A2908C */ void iyan_look(int); + /* 80A29164 */ void turn_hana(int); + /* 80A291E8 */ void wait_dummy(int); + /* 80A2926C */ void cheer(int); + /* 80A29458 */ void _turn_to_link(s16); + /* 80A294A4 */ void _turn_pos(cXyz const&, s16); + /* 80A29500 */ void actor_front_check(fopAc_ac_c*); + /* 80A295D8 */ void _getOffset(cXyz const&, cXyz&); + /* 80A29FDC */ void adjustShapeAngle(); + + static u8 mEvtSeqList[12]; + static u8 mTargetTag[4]; + static u8 mTargetTagDist[4]; + +private: + /* 0x568 */ u8 field_0x568[0x146c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcKasiMich_c) == 0x146c); + +class daNpcKasiMich_Param_c { +public: + /* 80A29FE0 */ ~daNpcKasiMich_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_KASI_MICH_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h b/include/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h index 356339eb51..468e972f29 100644 --- a/include/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h +++ b/include/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h @@ -1,6 +1,21 @@ #ifndef D_A_NPC_KDK_H #define D_A_NPC_KDK_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcKdk_c + * @brief Temporary Cutscene Guy? + * + * @details + * + */ +class daNpcKdk_c : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0xFA0 - 0x568]; +}; + +STATIC_ASSERT(sizeof(daNpcKdk_c) == 0xFA0); #endif /* D_A_NPC_KDK_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h b/include/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h index 1acbd92edf..15d9d03b78 100644 --- a/include/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h +++ b/include/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_KKRI_H #define D_A_NPC_KKRI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kkri_c + * @brief Coro + * + * @details + * + */ +class daNpc_Kkri_c : public fopAc_ac_c { +public: + /* 8054F3AC */ ~daNpc_Kkri_c(); + /* 8054F4F8 */ void create(); + /* 8054F7D0 */ void CreateHeap(); + /* 8054FC10 */ void Delete(); + /* 8054FC44 */ void Execute(); + /* 8054FC64 */ void Draw(); + /* 8054FD00 */ void createHeapCallBack(fopAc_ac_c*); + /* 8054FD20 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8054FD78 */ void srchYm(void*, void*); + /* 8054FE20 */ void getType(); + /* 8054FE58 */ void isDelete(); + /* 8054FE8C */ void reset(); + /* 8054FFEC */ void checkChangeEvt(); + /* 805500A0 */ void setParam(); + /* 80550270 */ void setAfterTalkMotion(); + /* 8055032C */ void srchActors(); + /* 80550398 */ void evtTalk(); + /* 80550438 */ void evtCutProc(); + /* 80550500 */ void action(); + /* 805505F8 */ void beforeMove(); + /* 805506BC */ void setAttnPos(); + /* 80550ADC */ void setCollision(); + /* 80550CA0 */ bool drawDbgInfo(); + /* 80550CA8 */ void selectAction(); + /* 80550D44 */ void chkAction(int (daNpc_Kkri_c::*)(void*)); + /* 80550D70 */ void setAction(int (daNpc_Kkri_c::*)(void*)); + /* 80550E18 */ void cutConversationAboutSoup(int); + /* 80550F70 */ void cutYmLook(int); + /* 80551084 */ void sleep(); + /* 805512E0 */ void wait(void*); + /* 80551538 */ void sitWait1(void*); + /* 80551A4C */ void fearWait(void*); + /* 80551DA4 */ void talk(void*); + /* 80553304 */ daNpc_Kkri_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 805533E4 */ s32 getEyeballMaterialNo(); + /* 805533EC */ s32 getHeadJointNo(); + /* 805533F4 */ s32 getNeckJointNo(); + /* 805533FC */ bool getBackboneJointNo(); + /* 80553404 */ void checkChangeJoint(int); + /* 80553414 */ void checkRemoveJoint(int); + + static void* mCutNameList[3]; + static u8 mCutList[36]; + +private: + /* 0x568 */ u8 field_0x568[0xfdc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kkri_c) == 0xfdc); + +class daNpc_Kkri_Param_c { +public: + /* 80553424 */ ~daNpc_Kkri_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_KKRI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h b/include/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h index 6227572c4b..bdd1fb2eb3 100644 --- a/include/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h +++ b/include/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h @@ -1,6 +1,221 @@ #ifndef D_A_NPC_KN_H #define D_A_NPC_KN_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kn_c + * @brief Hero's Shade + * + * @details + * + */ +class daNpc_Kn_c : public fopAc_ac_c { +public: + class daNpc_Kn_prtclMngr_c { + public: + /* 80A2AF98 */ ~daNpc_Kn_prtclMngr_c(); + /* 80A3C1C4 */ daNpc_Kn_prtclMngr_c(); + }; + + /* 80A2AA0C */ ~daNpc_Kn_c(); + /* 80A2AFD4 */ void create(); + /* 80A2B278 */ void CreateHeap(); + /* 80A2B620 */ void Delete(); + /* 80A2B654 */ void Execute(); + /* 80A2B6B0 */ void Draw(); + /* 80A2B764 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A2B784 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A2B7DC */ void getType(); + /* 80A2B844 */ void getDivideNo(); + /* 80A2B850 */ void getFlowNodeNo(); + /* 80A2B86C */ void getPath(); + /* 80A2B878 */ void isDelete(); + /* 80A2B91C */ void resetCol(); + /* 80A2B9E0 */ void reset(); + /* 80A2BC5C */ void resetType(); + /* 80A2BD30 */ void setParam(); + /* 80A2BFB0 */ void setParamTeach03(); + /* 80A2C044 */ void setParamTeach04(); + /* 80A2C0FC */ void setParamTeach05(); + /* 80A2C190 */ void setParamTeach06(); + /* 80A2C1B0 */ void setParamTeach07(); + /* 80A2C1D0 */ void setAfterTalkMotion(); + /* 80A2C230 */ void srchActors(); + /* 80A2C234 */ void evtTalk(); + /* 80A2C318 */ void evtCutProc(); + /* 80A2C3FC */ void action(); + /* 80A2C484 */ void beforeMove(); + /* 80A2C4FC */ void afterMoved(); + /* 80A2C56C */ void setAttnPos(); + /* 80A2C77C */ void setCollision(); + /* 80A2C984 */ void setCollisionSword(); + /* 80A2CB30 */ void checkCollisionSword(); + /* 80A2CBEC */ void setCollisionTeach03(); + /* 80A2CC24 */ void setCollisionTeach04(); + /* 80A2CD00 */ void setCollisionTeach05(); + /* 80A2CD38 */ void setCollisionTeach06(); + /* 80A2CD58 */ void setCollisionTeach07(); + /* 80A2CD78 */ bool drawDbgInfo(); + /* 80A2CD80 */ void drawOtherMdl(); + /* 80A2CF9C */ void drawGhost(); + /* 80A2D060 */ void afterSetMotionAnm(int, int, f32, int); + /* 80A2D198 */ void selectAction(); + /* 80A2D3A4 */ void teach03_selectAction(); + /* 80A2D3FC */ void teach04_selectAction(); + /* 80A2D4A0 */ void teach05_selectAction(); + /* 80A2D4F8 */ void teach06_selectAction(); + /* 80A2D600 */ void teach07_selectAction(); + /* 80A2D708 */ void chkAction(int (daNpc_Kn_c::*)(void*)); + /* 80A2D734 */ void setAction(int (daNpc_Kn_c::*)(void*)); + /* 80A2D7DC */ void wait(void*); + /* 80A2D9C4 */ void talk(void*); + /* 80A2DB94 */ void test(void*); + /* 80A2DCB4 */ void setSceneChange(int); + /* 80A2DD70 */ void ECut_noneEquipChangeTalk(int); + /* 80A2DF84 */ void ECut_noneEquipChangeTalkStand(int); + /* 80A2E26C */ void ECut_largeDamageTalk(int); + /* 80A2E528 */ void teach02_start(void*); + /* 80A2E664 */ void teach03_attackWait(void*); + /* 80A2EC04 */ void teach04_attackWait(void*); + /* 80A2EF8C */ void teach04_headBreakWait(void*); + /* 80A2F24C */ void teach04_finishWait(void*); + /* 80A2F600 */ void teach05_surpriseAttackWait(void*); + /* 80A2FC80 */ void teach06_superJumpWait(void*); + /* 80A30398 */ void teach06_divideMove(void*); + /* 80A305A8 */ void teach06_waitDivide(void*); + /* 80A30708 */ void teach06_superJumpWaitDivide(void*); + /* 80A30D44 */ void teach06_superJumpedDivide(void*); + /* 80A30EDC */ void teach06_warpDelete(void*); + /* 80A31028 */ void teach07_superTurnAttackWait(void*); + /* 80A315D0 */ void teach07_divideMove(void*); + /* 80A317F8 */ void teach07_waitDivide(void*); + /* 80A31958 */ void teach07_superTurnAttackWaitDivide(void*); + /* 80A31E24 */ void teach07_superTurnAttackedDivide(void*); + /* 80A31FBC */ void teach07_warpDelete(void*); + /* 80A3203C */ void ECut_secondEncount(int); + /* 80A324C4 */ void ECut_thirdSkillExplain(int); + /* 80A32D30 */ void ECut_thirdSkillGet(int); + /* 80A33358 */ void ECut_fourthSkillExplain(int); + /* 80A33D80 */ void ECut_fourthSkillGet(int); + /* 80A343A8 */ void ECut_fifthSkillExplain(int); + /* 80A34DB8 */ void ECut_fifthSkillGet(int); + /* 80A353E0 */ void ECut_sixthSkillExplain(int); + /* 80A35D88 */ void ECut_sixthSkillGet(int); + /* 80A363C0 */ void ECut_seventhSkillExplain(int); + /* 80A36C20 */ void ECut_seventhSkillGet(int); + /* 80A372D0 */ void setPrtcl(); + /* 80A37430 */ void setSlipPrtcl(); + /* 80A37558 */ void setLandingPrtcl(); + /* 80A37598 */ void calcMagicBallPos(); + /* 80A37670 */ void setSwordChargePtcl(); + /* 80A37B08 */ void calcSlip(); + /* 80A37D20 */ void calcSwordAttackMove(int); + /* 80A3805C */ void setSe(); + /* 80A38520 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); + /* 80A38550 */ void getTrnsfrmAnmP(char const*, int); + /* 80A3858C */ void getTrnsfrmKeyAnmP(char const*, int); + /* 80A385C8 */ void getTexPtrnAnmP(char const*, int); + /* 80A38604 */ void getTexSRTKeyAnmP(char const*, int); + /* 80A38640 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); + /* 80A38684 */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); + /* 80A3877C */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); + /* 80A387BC */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); + /* 80A387FC */ void loadRes(s8 const*, char const**); + /* 80A388B0 */ void deleteRes(s8 const*, char const**); + /* 80A38930 */ void execute(); + /* 80A38BB8 */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); + /* 80A38FAC */ void setEnvTevColor(); + /* 80A39008 */ void setRoomNo(); + /* 80A3904C */ void checkEndAnm(f32); + /* 80A390F8 */ void checkEndAnm(J3DFrameCtrl*, f32); + /* 80A3917C */ void playAllAnm(); + /* 80A3949C */ void ctrlBtk(); + /* 80A39558 */ void setMtx(); + /* 80A395DC */ void ctrlFaceMotion(); + /* 80A39684 */ void ctrlMotion(); + /* 80A39738 */ void ctrlMsgAnm(int*, int*, fopAc_ac_c*, int); + /* 80A3989C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A39BBC */ void evtProc(); + /* 80A39DBC */ void setFootPos(); + /* 80A39F84 */ void setFootPrtcl(cXyz*, f32); + /* 80A3A254 */ bool checkCullDraw(); + /* 80A3A25C */ void twilight(); + /* 80A3A2A8 */ void evtOrder(); + /* 80A3A404 */ void evtChange(); + /* 80A3A504 */ void clrParam(); + /* 80A3A568 */ void setFaceMotionAnm(int, bool); + /* 80A3A7C0 */ void setMotionAnm(int, f32, int); + /* 80A3AA58 */ void setPos(cXyz); + /* 80A3AAF0 */ void setAngle(s16); + /* 80A3AB18 */ void chkActorInSight(fopAc_ac_c*, f32, s16); + /* 80A3AC24 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); + /* 80A3ACD4 */ void chkPointInArea(cXyz, cXyz, cXyz, s16); + /* 80A3AD50 */ void chkFindPlayer(int, s16); + /* 80A3AF64 */ void srchPlayerActor(); + /* 80A3B000 */ void getAttnPos(fopAc_ac_c*); + /* 80A3B074 */ void turn(s16, int, int); + /* 80A3B220 */ void step(s16, int, int, int, int); + /* 80A3B3E8 */ void initTalk(int, fopAc_ac_c**); + /* 80A3B448 */ void talkProc(int*, int, fopAc_ac_c**, int); + /* 80A3B5EC */ void setHitodamaPrtcl(); + /* 80A3B708 */ void decTmr(); + /* 80A3B720 */ void afterJntAnm(int); + /* 80A3B79C */ bool evtEndProc(); + /* 80A3B7A4 */ bool checkChangeEvt(); + /* 80A3B7AC */ s32 getFootRJointNo(); + /* 80A3B7B4 */ s32 getFootLJointNo(); + /* 80A3B7BC */ bool chkXYItems(); + /* 80A3B7C4 */ bool afterSetFaceMotionAnm(int, int, f32, int); + /* 80A3B7CC */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); + /* 80A3B7FC */ void getMotionAnm(daNpcT_motionAnmData_c); + /* 80A3B82C */ daNpc_Kn_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A3BD14 */ bool getEyeballMaterialNo(); + /* 80A3BD1C */ bool getEyeballLMaterialNo(); + /* 80A3BD24 */ bool getEyeballRMaterialNo(); + /* 80A3C998 */ void setParamTeach01(); + /* 80A3CB14 */ void setCollisionTeach01(); + /* 80A3CBFC */ void teach01_selectAction(); + /* 80A3CCC0 */ void teach01_start(void*); + /* 80A3CDFC */ void teach01_attackWait(void*); + /* 80A3CF78 */ void teach01_swordAttackWait(void*); + /* 80A3D32C */ void teach01_swordFinishWait(void*); + /* 80A3D6D8 */ void ctrlWarp(); + /* 80A3DCEC */ void ECut_firstEncount(int); + /* 80A3DEC4 */ void ECut_attackFailed(int); + /* 80A3E550 */ void ECut_firstSkillGet(int); + /* 80A3EB84 */ void setParamTeach02(); + /* 80A3EE38 */ void setCollisionTeach02(); + /* 80A3EF1C */ void teach02_selectAction(); + /* 80A3EFE0 */ void teach02_shieldBashWait(void*); + /* 80A3F358 */ void teach02_finishWait(void*); + /* 80A3F5A4 */ void teach02_shieldReflectWait(void*); + /* 80A3F99C */ void ECut_secondSkillExplain(int); + /* 80A3FFB4 */ void ECut_reflectExplain(int); + /* 80A403B8 */ void ECut_secondSkillGet(int); + + static u8 const mCcDObjData[48]; + static u8 mCcDCyl[68]; + static u8 mCcDSph[64]; + static void* mCutNameList[21]; + static u8 mCutList[252]; + static u8 mFindActorPtrs[200]; + static u8 mFindCount[4]; + +private: + /* 0x568 */ u8 field_0x568[0x1758 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kn_c) == 0x1758); + +class daNpc_Kn_Param_c { +public: + /* 80A3C124 */ ~daNpc_Kn_Param_c(); + + static u8 const m[180]; +}; #endif /* D_A_NPC_KN_H */ diff --git a/include/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h b/include/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h index 32d9b93faa..0e4d912148 100644 --- a/include/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h +++ b/include/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h @@ -1,6 +1,63 @@ #ifndef D_A_NPC_KNJ_H #define D_A_NPC_KNJ_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Knj_c + * @brief Sage + * + * @details + * + */ +class daNpc_Knj_c : public fopAc_ac_c { +public: + /* 80A4356C */ ~daNpc_Knj_c(); + /* 80A43608 */ void create(); + /* 80A43848 */ void CreateHeap(); + /* 80A439A0 */ void Delete(); + /* 80A439D4 */ void Execute(); + /* 80A439F4 */ void Draw(); + /* 80A43A88 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A43AA8 */ void getType(); + /* 80A43B1C */ void getFlowNodeNo(); + /* 80A43B38 */ bool isDelete(); + /* 80A43B40 */ void reset(); + /* 80A43C64 */ void setParam(); + /* 80A43D58 */ void srchActors(); + /* 80A43D5C */ void evtTalk(); + /* 80A43E5C */ void evtCutProc(); + /* 80A43F24 */ void action(); + /* 80A43FAC */ void beforeMove(); + /* 80A44024 */ void setAttnPos(); + /* 80A44080 */ bool drawDbgInfo(); + /* 80A44088 */ void afterSetMotionAnm(int, int, f32, int); + /* 80A44264 */ void drawGhost(); + /* 80A442D0 */ void selectAction(); + /* 80A44318 */ void chkAction(int (daNpc_Knj_c::*)(void*)); + /* 80A44344 */ void setAction(int (daNpc_Knj_c::*)(void*)); + /* 80A443EC */ void wait(void*); + /* 80A44598 */ void talk(void*); + /* 80A45460 */ daNpc_Knj_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe68 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Knj_c) == 0xe68); + +class daNpc_Knj_Param_c { +public: + /* 80A454A4 */ ~daNpc_Knj_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_KNJ_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h b/include/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h index 707170a799..7d2c31ce5a 100644 --- a/include/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h +++ b/include/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h @@ -1,6 +1,92 @@ #ifndef D_A_NPC_KOLIN_H #define D_A_NPC_KOLIN_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kolin_c + * @brief Colin + * + * @details + * + */ +class daNpc_Kolin_c : public fopAc_ac_c { +public: + /* 80553FEC */ ~daNpc_Kolin_c(); + /* 80554138 */ void create(); + /* 80554414 */ void CreateHeap(); + /* 80554930 */ void Delete(); + /* 80554964 */ void Execute(); + /* 80554984 */ void Draw(); + /* 80554A18 */ void createHeapCallBack(fopAc_ac_c*); + /* 80554A38 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80554A90 */ void getType(); + /* 80554B30 */ void isDelete(); + /* 80554CB0 */ void reset(); + /* 80554EBC */ void afterJntAnm(int); + /* 80554F48 */ void setParam(); + /* 80555118 */ void checkChangeEvt(); + /* 8055523C */ void setAfterTalkMotion(); + /* 805552DC */ void srchActors(); + /* 80555448 */ void evtTalk(); + /* 805554E8 */ void evtCutProc(); + /* 805555B0 */ void action(); + /* 8055574C */ void beforeMove(); + /* 80555810 */ void setAttnPos(); + /* 80555B48 */ void setCollision(); + /* 80555CE4 */ bool drawDbgInfo(); + /* 80555CEC */ void drawOtherMdl(); + /* 80555DC4 */ void changeAnm(int*, int*); + /* 80555DEC */ void changeBck(int*, int*); + /* 80555E38 */ void selectAction(); + /* 80555F28 */ void chkAction(int (daNpc_Kolin_c::*)(void*)); + /* 80555F54 */ void setAction(int (daNpc_Kolin_c::*)(void*)); + /* 80555FFC */ void calcFollowSpeedAndAngle(fopAc_ac_c*, int, int); + /* 805563BC */ void followPlayer(int); + /* 805567AC */ void lookup(u8); + /* 805568AC */ void cutNoRide(int); + /* 80556A04 */ void cutHail(int); + /* 80556DB4 */ void cutGiveMeWoodSwd(int); + /* 80557054 */ void cutGetWoodSwd(int); + /* 805576C4 */ void cutConversationAboutLoopHole(int); + /* 805579DC */ void cutCacaricoConversation(int); + /* 80557BD4 */ void cutConversationAboutDeathMt(int); + /* 80557C6C */ void cutConversationAboutGoron(int); + /* 80557D04 */ void cutClothTry(int); + /* 80557E38 */ void cutThankYou(int); + /* 80557ED8 */ void wait(void*); + /* 80558698 */ void timidWalk(void*); + /* 80558AF8 */ void follow(void*); + /* 80558C4C */ void clothWait(void*); + /* 80558E90 */ void talk(void*); + /* 8055A3B8 */ daNpc_Kolin_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 8055A498 */ s32 getEyeballMaterialNo(); + /* 8055A4A0 */ s32 getHeadJointNo(); + /* 8055A4A8 */ s32 getNeckJointNo(); + /* 8055A4B0 */ bool getBackboneJointNo(); + /* 8055A4B8 */ void checkChangeJoint(int); + /* 8055A4C8 */ void checkRemoveJoint(int); + /* 8055A4D8 */ s32 getFootLJointNo(); + /* 8055A4E0 */ s32 getFootRJointNo(); + + static void* mCutNameList[11]; + static u8 mCutList[132]; + +private: + /* 0x568 */ u8 field_0x568[0x1020 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kolin_c) == 0x1020); + +class daNpc_Kolin_Param_c { +public: + /* 8055A4E8 */ ~daNpc_Kolin_Param_c(); + + static u8 const m[160]; +}; + #endif /* D_A_NPC_KOLIN_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h b/include/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h index 182bb0c61c..21a66e681c 100644 --- a/include/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h +++ b/include/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h @@ -1,6 +1,75 @@ #ifndef D_A_NPC_KOLINB_H #define D_A_NPC_KOLINB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kolinb_c + * @brief Colin (Bedridden) + * + * @details + * + */ +class daNpc_Kolinb_c : public fopAc_ac_c { +public: + /* 80A4598C */ ~daNpc_Kolinb_c(); + /* 80A45ADC */ void create(); + /* 80A45DC4 */ void CreateHeap(); + /* 80A4603C */ void Delete(); + /* 80A46070 */ void Execute(); + /* 80A46090 */ void Draw(); + /* 80A46124 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A46144 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A4619C */ void getType(); + /* 80A461E8 */ void isDelete(); + /* 80A462C8 */ void reset(); + /* 80A46420 */ void setParam(); + /* 80A4651C */ void checkChangeEvt(); + /* 80A465D0 */ void setAfterTalkMotion(); + /* 80A46630 */ void srchActors(); + /* 80A46634 */ void evtTalk(); + /* 80A466D4 */ void evtCutProc(); + /* 80A4679C */ void action(); + /* 80A46824 */ void beforeMove(); + /* 80A468E8 */ void setAttnPos(); + /* 80A46A4C */ void setCollision(); + /* 80A46A9C */ bool drawDbgInfo(); + /* 80A46AA4 */ void selectAction(); + /* 80A46AEC */ void chkAction(int (daNpc_Kolinb_c::*)(void*)); + /* 80A46B18 */ void setAction(int (daNpc_Kolinb_c::*)(void*)); + /* 80A46BC0 */ void cutConversationInHotel(int); + /* 80A46C48 */ void cutConversationAboutDeathMt(int); + /* 80A46EE4 */ void cutConversationAboutGoron(int); + /* 80A47180 */ void cutNurse(int); + /* 80A472EC */ void cutClothTry(int); + /* 80A4738C */ void cutThankYou(int); + /* 80A4742C */ void wait(void*); + /* 80A475D4 */ void talk(void*); + /* 80A4854C */ daNpc_Kolinb_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A4860C */ void getHeadJointNo(); + /* 80A48624 */ void checkChangeJoint(int); + /* 80A4864C */ void checkRemoveJoint(int); + /* 80A48674 */ void getBackboneJointNo(); + /* 80A4868C */ void getNeckJointNo(); + + static void* mCutNameList[7]; + static u8 mCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0xffc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kolinb_c) == 0xffc); + +class daNpc_Kolinb_Param_c { +public: + /* 80A486A4 */ ~daNpc_Kolinb_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_KOLINB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h b/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h index 5906a28b60..b705d93800 100644 --- a/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h +++ b/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h @@ -1,5 +1,27 @@ #ifndef D_A_NPC_KS_H #define D_A_NPC_KS_H +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_ks_class + * @brief Monkey NPC + * + * @details + * + */ +class npc_ks_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0xc20 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_ks_class) == 0xc20); + +class daNpc_Ks_HIO_c { +public: + /* 80A48F8C */ daNpc_Ks_HIO_c(); + /* 80A5DA90 */ ~daNpc_Ks_HIO_c(); +}; + #endif /* D_A_NPC_KS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h b/include/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h index bbced09d63..32e0c8a657 100644 --- a/include/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h +++ b/include/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_KYURY_H #define D_A_NPC_KYURY_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Kyury_c + * @brief Pergie + * + * @details + * + */ +class daNpc_Kyury_c : public fopAc_ac_c { +public: + /* 80A600CC */ ~daNpc_Kyury_c(); + /* 80A60218 */ void create(); + /* 80A604E4 */ void CreateHeap(); + /* 80A609A8 */ void Delete(); + /* 80A609DC */ void Execute(); + /* 80A609FC */ void Draw(); + /* 80A60A90 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A60AB0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A60B08 */ void getType(); + /* 80A60B54 */ void isDelete(); + /* 80A60B9C */ void reset(); + /* 80A60CF8 */ void afterJntAnm(int); + /* 80A60D84 */ void setParam(); + /* 80A60EB0 */ void checkChangeEvt(); + /* 80A60FB0 */ void setAfterTalkMotion(); + /* 80A61060 */ void srchActors(); + /* 80A610C4 */ void evtTalk(); + /* 80A61164 */ void evtCutProc(); + /* 80A6122C */ void action(); + /* 80A61324 */ void beforeMove(); + /* 80A613E8 */ void setAttnPos(); + /* 80A61730 */ void setCollision(); + /* 80A618A8 */ bool drawDbgInfo(); + /* 80A618B0 */ void drawOtherMdl(); + /* 80A619B8 */ void selectAction(); + /* 80A61A00 */ void chkAction(int (daNpc_Kyury_c::*)(void*)); + /* 80A61A2C */ void setAction(int (daNpc_Kyury_c::*)(void*)); + /* 80A61AD4 */ void cutConversation(int); + /* 80A61ED0 */ void wait(void*); + /* 80A62370 */ void talk(void*); + /* 80A63720 */ daNpc_Kyury_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A63800 */ s32 getEyeballMaterialNo(); + /* 80A63808 */ s32 getHeadJointNo(); + /* 80A63810 */ s32 getNeckJointNo(); + /* 80A63818 */ bool getBackboneJointNo(); + /* 80A63820 */ void checkChangeJoint(int); + /* 80A63830 */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xfdc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Kyury_c) == 0xfdc); + +class daNpc_Kyury_Param_c { +public: + /* 80A63840 */ ~daNpc_Kyury_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_KYURY_H */ diff --git a/include/rel/d/a/npc/d_a_npc_len/d_a_npc_len.h b/include/rel/d/a/npc/d_a_npc_len/d_a_npc_len.h index 5b57461785..cc8440367d 100644 --- a/include/rel/d/a/npc/d_a_npc_len/d_a_npc_len.h +++ b/include/rel/d/a/npc/d_a_npc_len/d_a_npc_len.h @@ -1,6 +1,79 @@ #ifndef D_A_NPC_LEN_H #define D_A_NPC_LEN_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Len_c + * @brief Renado + * + * @details + * + */ +class daNpc_Len_c : public fopAc_ac_c { +public: + /* 80A6432C */ ~daNpc_Len_c(); + /* 80A64478 */ void create(); + /* 80A64740 */ void CreateHeap(); + /* 80A64BE0 */ void Delete(); + /* 80A64C14 */ void Execute(); + /* 80A64C34 */ void Draw(); + /* 80A64CC8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A64CE8 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A64D40 */ void getType(); + /* 80A64DB8 */ void isDelete(); + /* 80A64FBC */ void reset(); + /* 80A6516C */ void afterJntAnm(int); + /* 80A65278 */ void setParam(); + /* 80A6546C */ void checkChangeEvt(); + /* 80A6556C */ void setAfterTalkMotion(); + /* 80A65624 */ void srchActors(); + /* 80A65710 */ void evtTalk(); + /* 80A657B0 */ void evtCutProc(); + /* 80A65878 */ void action(); + /* 80A65A60 */ void beforeMove(); + /* 80A65B24 */ void setAttnPos(); + /* 80A65E28 */ void setCollision(); + /* 80A65F80 */ bool drawDbgInfo(); + /* 80A65F88 */ void selectAction(); + /* 80A66004 */ void chkAction(int (daNpc_Len_c::*)(void*)); + /* 80A66030 */ void setAction(int (daNpc_Len_c::*)(void*)); + /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); + /* 80A661B4 */ void cutConversationInHotel(int); + /* 80A66664 */ void cutHurry(int); + /* 80A668B8 */ void cutTakeWoodStatue(int); + /* 80A66C74 */ void wait(void*); + /* 80A6736C */ void patrol(void*); + /* 80A67794 */ void talk(void*); + /* 80A68D00 */ daNpc_Len_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A68DE0 */ bool getEyeballMaterialNo(); + /* 80A68DE8 */ s32 getHeadJointNo(); + /* 80A68DF0 */ s32 getNeckJointNo(); + /* 80A68DF8 */ bool getBackboneJointNo(); + /* 80A68E00 */ void checkChangeJoint(int); + /* 80A68E10 */ void checkRemoveJoint(int); + /* 80A68E20 */ s32 getFootLJointNo(); + /* 80A68E28 */ s32 getFootRJointNo(); + /* 80A68E30 */ bool chkXYItems(); + + static void* mCutNameList[4]; + static u8 mCutList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xff4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Len_c) == 0xff4); + +class daNpc_Len_Param_c { +public: + /* 80A68E38 */ ~daNpc_Len_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_LEN_H */ diff --git a/include/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h b/include/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h index e69504b737..2832b711a6 100644 --- a/include/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h +++ b/include/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h @@ -1,6 +1,32 @@ #ifndef D_A_NPC_LF_H #define D_A_NPC_LF_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_lf_class + * @brief Lake Fish + * + * @details + * + */ +class npc_lf_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0x1fc4 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_lf_class) == 0x1fc4); + +struct lf_s { + /* 80A6A8A4 */ ~lf_s(); + /* 80A6A8E0 */ lf_s(); +}; + +class daNPC_LF_HIO_c { +public: + /* 80A69B6C */ daNPC_LF_HIO_c(); + /* 80A6A8E4 */ ~daNPC_LF_HIO_c(); +}; + #endif /* D_A_NPC_LF_H */ diff --git a/include/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h b/include/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h index e0e0f023fa..4cdf16e5ab 100644 --- a/include/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h +++ b/include/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h @@ -1,6 +1,82 @@ #ifndef D_A_NPC_LUD_H #define D_A_NPC_LUD_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Lud_c + * @brief Luda + * + * @details + * + */ +class daNpc_Lud_c : public fopAc_ac_c { +public: + /* 80A6ABAC */ ~daNpc_Lud_c(); + /* 80A6ACF4 */ void create(); + /* 80A6AFA8 */ void CreateHeap(); + /* 80A6B5FC */ void Delete(); + /* 80A6B630 */ void Execute(); + /* 80A6B650 */ void Draw(); + /* 80A6B6E4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A6B704 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A6B75C */ void getType(); + /* 80A6B7CC */ void isDelete(); + /* 80A6B954 */ void reset(); + /* 80A6BB1C */ void afterJntAnm(int); + /* 80A6BBA8 */ void setParam(); + /* 80A6BD44 */ void checkChangeEvt(); + /* 80A6BE6C */ void setAfterTalkMotion(); + /* 80A6BEE4 */ void srchActors(); + /* 80A6BFA4 */ void evtTalk(); + /* 80A6C044 */ void evtCutProc(); + /* 80A6C10C */ void action(); + /* 80A6C2E4 */ void beforeMove(); + /* 80A6C3A8 */ void setAttnPos(); + /* 80A6C8EC */ void setCollision(); + /* 80A6CA9C */ bool drawDbgInfo(); + /* 80A6CAA4 */ void drawOtherMdl(); + /* 80A6CC2C */ void setBowlAnm(int, int, f32); + /* 80A6CCFC */ void afterSetMotionAnm(int, int, f32, int); + /* 80A6CD30 */ void selectAction(); + /* 80A6CDF4 */ void chkAction(int (daNpc_Lud_c::*)(void*)); + /* 80A6CE20 */ void setAction(int (daNpc_Lud_c::*)(void*)); + /* 80A6CEC8 */ void mop(int, int); + /* 80A6D01C */ void cutHurry(int); + /* 80A6D160 */ void cutConversationInHotel(int); + /* 80A6D450 */ void cutConversationAboutDeathMt(int); + /* 80A6D708 */ void cutConversationAboutGoron(int); + /* 80A6D998 */ void cutNurse(int); + /* 80A6DC48 */ void cutClothTry(int); + /* 80A6DCE8 */ void cutThankYou(int); + /* 80A6DE14 */ void wait(void*); + /* 80A6E32C */ void nurse(void*); + /* 80A6E6EC */ void giveSoup(void*); + /* 80A6E7EC */ void talk(void*); + /* 80A6FC04 */ daNpc_Lud_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A6FCD0 */ bool getEyeballMaterialNo(); + /* 80A6FCD8 */ s32 getHeadJointNo(); + /* 80A6FCE0 */ s32 getNeckJointNo(); + /* 80A6FCE8 */ bool getBackboneJointNo(); + /* 80A6FCF0 */ void checkChangeJoint(int); + /* 80A6FD00 */ void checkRemoveJoint(int); + + static void* mCutNameList[8]; + static u8 mCutList[96]; +private: + /* 0x568 */ u8 field_0x568[0xfdc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Lud_c) == 0xfdc); + +class daNpc_Lud_Param_c { +public: + /* 80A6FD10 */ ~daNpc_Lud_Param_c(); + + static u8 const m[144]; +}; #endif /* D_A_NPC_LUD_H */ diff --git a/include/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h b/include/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h index 3ce6071009..1c53bf3858 100644 --- a/include/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h +++ b/include/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h @@ -1,6 +1,101 @@ #ifndef D_A_NPC_MARO_H #define D_A_NPC_MARO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Maro_c + * @brief Malo + * + * @details + * + */ +class daNpc_Maro_c : public fopAc_ac_c { +public: + /* 8055B58C */ ~daNpc_Maro_c(); + /* 8055B6E0 */ void create(); + /* 8055B9A8 */ void CreateHeap(); + /* 8055BDE8 */ void Delete(); + /* 8055BE1C */ void Execute(); + /* 8055BF0C */ void Draw(); + /* 8055BFA0 */ void createHeapCallBack(fopAc_ac_c*); + /* 8055BFC0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 8055C018 */ void srchArrow(void*, void*); + /* 8055C0B4 */ void getArrowP(); + /* 8055C1AC */ void srchItaMato(void*, void*); + /* 8055C248 */ void getItaMatoP(int); + /* 8055C330 */ void getType(); + /* 8055C3E0 */ void isDelete(); + /* 8055C614 */ void reset(); + /* 8055C834 */ void afterJntAnm(int); + /* 8055C8B0 */ void setParam(); + /* 8055CB14 */ void checkChangeEvt(); + /* 8055CC9C */ void evtEndProc(); + /* 8055CCD8 */ void setAfterTalkMotion(); + /* 8055CD74 */ void srchActors(); + /* 8055D0D8 */ void evtTalk(); + /* 8055D1F4 */ void evtCutProc(); + /* 8055D368 */ void action(); + /* 8055D5C4 */ void beforeMove(); + /* 8055D688 */ void setAttnPos(); + /* 8055D918 */ void setCollision(); + /* 8055DA70 */ bool drawDbgInfo(); + /* 8055DA78 */ void drawOtherMdl(); + /* 8055DAD8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); + /* 8055DB64 */ void getMotionAnm(daNpcT_motionAnmData_c); + /* 8055DBF0 */ void selectAction(); + /* 8055DD08 */ void chkAction(int (daNpc_Maro_c::*)(void*)); + /* 8055DD34 */ void setAction(int (daNpc_Maro_c::*)(void*)); + /* 8055DDDC */ void cutConversationAboutPachinko(int); + /* 8055DF7C */ void cutConversationAboutWoodSwd(int); + /* 8055E124 */ void cutSwdTutorial(int); + /* 8055E414 */ void cutHail(int); + /* 8055E578 */ void cutFindMonkey(int); + /* 8055E968 */ void cutGiveMeWoodSwd(int); + /* 8055ECF4 */ void cutGetWoodSwd(int); + /* 8055F508 */ void cutConversationWithMaro(int); + /* 8055F634 */ void cutCacaricoConversation(int); + /* 8055F82C */ void cutSurprise(int); + /* 8055FAF0 */ void cutArrowTutorial(int); + /* 805611E0 */ void cutBokinTalk(int); + /* 80561328 */ void cutMarosWhisper(int); + /* 80561614 */ void cutTagPush1(int); + /* 8056178C */ void cutNotGonnaLet(int); + /* 80561E70 */ void cutTalkToKakashi(int); + /* 80562174 */ void wait(void*); + /* 805629A4 */ void swdTutorial(void*); + /* 80562B14 */ void talk_withTaro(void*); + /* 80562CA4 */ void choccai(void*); + /* 80562EC8 */ void tend(void*); + /* 8056319C */ void arrowTutorial(void*); + /* 8056342C */ void talk(void*); + /* 80563660 */ void shop(void*); + /* 805648A4 */ daNpc_Maro_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80564970 */ bool getEyeballMaterialNo(); + /* 80564978 */ s32 getHeadJointNo(); + /* 80564980 */ s32 getNeckJointNo(); + /* 80564988 */ bool getBackboneJointNo(); + /* 80564990 */ void checkChangeJoint(int); + /* 805649A0 */ void checkRemoveJoint(int); + + static void* mCutNameList[17]; + static u8 mCutList[204]; + +private: + /* 0x568 */ u8 field_0x568[0x1140 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Maro_c) == 0x1140); + +class daNpc_Maro_Param_c { +public: + /* 805649B0 */ ~daNpc_Maro_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_MARO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h b/include/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h index a78fec425c..c19c424d1d 100644 --- a/include/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h +++ b/include/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_MIDP_H #define D_A_NPC_MIDP_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_midP_c + * @brief Midna (True Form) + * + * @details + * + */ +class daNpc_midP_c : public fopAc_ac_c { +public: + /* 80A70C6C */ ~daNpc_midP_c(); + /* 80A70D90 */ void create(); + /* 80A71074 */ void CreateHeap(); + /* 80A714BC */ void Delete(); + /* 80A714F0 */ void Execute(); + /* 80A71510 */ void Draw(); + /* 80A715D4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A715F4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A7164C */ void getType(); + /* 80A7166C */ void isDelete(); + /* 80A7168C */ void reset(); + /* 80A717D4 */ void afterJntAnm(int); + /* 80A71860 */ void ctrlBtk(); + /* 80A7199C */ void setParam(); + /* 80A71A98 */ void setAfterTalkMotion(); + /* 80A71AF8 */ void srchActors(); + /* 80A71AFC */ void evtTalk(); + /* 80A71BFC */ void evtCutProc(); + /* 80A71CC4 */ void action(); + /* 80A71DB0 */ void beforeMove(); + /* 80A71E28 */ void setAttnPos(); + /* 80A72064 */ void setCollision(); + /* 80A7216C */ bool drawDbgInfo(); + /* 80A72174 */ void drawGhost(); + /* 80A721E0 */ void selectAction(); + /* 80A72228 */ void chkAction(int (daNpc_midP_c::*)(void*)); + /* 80A72254 */ void setAction(int (daNpc_midP_c::*)(void*)); + /* 80A722FC */ void wait(void*); + /* 80A72548 */ void talk(void*); + /* 80A737D0 */ daNpc_midP_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A7390C */ s32 getEyeballRMaterialNo(); + /* 80A73914 */ s32 getEyeballLMaterialNo(); + /* 80A7391C */ s32 getHeadJointNo(); + /* 80A73924 */ s32 getNeckJointNo(); + /* 80A7392C */ s32 getBackboneJointNo(); + /* 80A73934 */ void checkChangeJoint(int); + /* 80A73944 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_midP_c) == 0xfa0); + +class daNpc_midP_Param_c { +public: + /* 80A73954 */ ~daNpc_midP_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_MIDP_H */ diff --git a/include/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h b/include/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h index 042c0d5f70..507fbdf88e 100644 --- a/include/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h +++ b/include/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h @@ -1,6 +1,6 @@ #ifndef D_A_NPC_MK_H #define D_A_NPC_MK_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" #endif /* D_A_NPC_MK_H */ diff --git a/include/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h b/include/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h index 99602bf602..60fc55c6ff 100644 --- a/include/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h +++ b/include/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h @@ -1,6 +1,99 @@ #ifndef D_A_NPC_MOI_H #define D_A_NPC_MOI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Moi_c + * @brief Rusl + * + * @details + * + */ +class daNpc_Moi_c : public fopAc_ac_c { +public: + /* 80A73F4C */ ~daNpc_Moi_c(); + /* 80A74150 */ void create(); + /* 80A74474 */ void CreateHeap(); + /* 80A749F8 */ void Delete(); + /* 80A74A2C */ void Execute(); + /* 80A74A4C */ void Draw(); + /* 80A74B80 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A74BA0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A74BF8 */ void getType(); + /* 80A74C6C */ void isDelete(); + /* 80A74D8C */ void reset(); + /* 80A7513C */ void chkMoiN(); + /* 80A75160 */ void afterJntAnm(int); + /* 80A751E4 */ void setParam(); + /* 80A75460 */ void checkChangeEvt(); + /* 80A75514 */ void setAfterTalkMotion(); + /* 80A755C8 */ void srchActors(); + /* 80A75664 */ void evtTalk(); + /* 80A75704 */ void evtCutProc(); + /* 80A757CC */ void action(); + /* 80A759F4 */ void beforeMove(); + /* 80A75AB8 */ void setAttnPos(); + /* 80A75E68 */ void setCollision(); + /* 80A760E0 */ bool drawDbgInfo(); + /* 80A760E8 */ void drawOtherMdl(); + /* 80A762A8 */ void afterSetMotionAnm(int, int, f32, int); + /* 80A762CC */ void changeAnm(int*, int*); + /* 80A7633C */ void changeBck(int*, int*); + /* 80A76384 */ void changeBtp(int*, int*); + /* 80A7643C */ void changeBtk(int*, int*); + /* 80A764B0 */ void selectAction(); + /* 80A765CC */ void chkAction(int (daNpc_Moi_c::*)(void*)); + /* 80A765F8 */ void setAction(int (daNpc_Moi_c::*)(void*)); + /* 80A766A0 */ void chkPlayerGetWoodShield(); + /* 80A766DC */ void setSSlash(int); + /* 80A76888 */ void chkPullOutSw(); + /* 80A768FC */ void pullOutSw(); + /* 80A76954 */ void chkSetInSw(); + /* 80A769C8 */ void setInSw(); + /* 80A76A20 */ void setSwAT(); + /* 80A76AFC */ void torch(); + /* 80A76C7C */ void injuryCheck(); + /* 80A76E10 */ void injuryTurn(cXyz); + /* 80A76F3C */ void injuryWalk(); + /* 80A770FC */ void poise(); + /* 80A77740 */ void cutDeliveredSw(int); + /* 80A77BA0 */ void cutAppearanceMoi(int); + /* 80A7838C */ void cutConversationWithUri(int); + /* 80A785FC */ void cutFindWolf(int); + /* 80A789D8 */ void wait(void*); + /* 80A78E0C */ void walk(void*); + /* 80A78FF4 */ void walkOnEggshell(void*); + /* 80A794C0 */ void rest(void*); + /* 80A79608 */ void talk(void*); + /* 80A7AC88 */ daNpc_Moi_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A7AE0C */ void getEyeballMaterialNo(); + /* 80A7AE3C */ s32 getHeadJointNo(); + /* 80A7AE44 */ s32 getNeckJointNo(); + /* 80A7AE4C */ bool getBackboneJointNo(); + /* 80A7AE54 */ void checkChangeJoint(int); + /* 80A7AE64 */ void checkRemoveJoint(int); + /* 80A7AE74 */ s32 getFootLJointNo(); + /* 80A7AE7C */ s32 getFootRJointNo(); + + static void* mCutNameList[5]; + static u8 mCutList[60]; + +private: + /* 0x568 */ u8 field_0x568[0x1674 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Moi_c) == 0x1674); + +class daNpc_Moi_Param_c { +public: + /* 80A7AE84 */ ~daNpc_Moi_Param_c(); + + static u8 const m[188]; +}; + #endif /* D_A_NPC_MOI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h b/include/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h index 9e5a0e1462..56bc858d0d 100644 --- a/include/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h +++ b/include/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h @@ -1,6 +1,69 @@ #ifndef D_A_NPC_MOIR_H #define D_A_NPC_MOIR_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcMoiR_c + * @brief Rusl (Resistance) + * + * @details + * + */ +class daNpcMoiR_c : public fopAc_ac_c { +public: + /* 80A7C16C */ daNpcMoiR_c(); + /* 80A7C380 */ ~daNpcMoiR_c(); + /* 80A7C580 */ void Create(); + /* 80A7C978 */ void CreateHeap(); + /* 80A7CE48 */ void Delete(); + /* 80A7CE7C */ void Execute(); + /* 80A7CEA0 */ void Draw(); + /* 80A7CEFC */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80A7D0CC */ void createHeapCallBack(fopAc_ac_c*); + /* 80A7D0EC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A7D138 */ void setExpressionAnm(int, bool); + /* 80A7D394 */ void setExpressionBtp(int); + /* 80A7D474 */ void setMotionAnm(int, f32); + /* 80A7D5C4 */ void reset(); + /* 80A7D73C */ void setWaitAction(); + /* 80A7D934 */ void wait_type0(void*); + /* 80A7DD94 */ void setMotion(int, f32, int); + /* 80A7DDD8 */ void setExpression(int, f32); + /* 80A7DE04 */ void wait_type1(void*); + /* 80A7E668 */ void wait_type2(void*); + /* 80A7E8C0 */ void talk(void*); + /* 80A7EFBC */ void multiTalk(void*); + /* 80A7F40C */ void fight(void*); + /* 80A7F9AC */ void demo(void*); + /* 80A7FEE8 */ void leave(void*); + /* 80A802C4 */ void EvCut_Introduction(int); + /* 80A803A0 */ void EvCut_Appear(int); + /* 80A8081C */ void EvCut_Appear2(int); + /* 80A810FC */ void setParam(); + /* 80A81274 */ void main(); + /* 80A815D4 */ void checkHeadGear(); + /* 80A818B4 */ void playMotion(); + /* 80A8210C */ void ctrlBtk(); + /* 80A821E0 */ void setAttnPos(); + /* 80A825A0 */ void lookat(); + /* 80A82878 */ void drawOtherMdls(); + /* 80A82900 */ bool drawDbgInfo(); + + static u8 mEvtSeqList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xe0c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcMoiR_c) == 0xe0c); + +class daNpcMoiR_Param_c { +public: + /* 80A83240 */ ~daNpcMoiR_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_MOIR_H */ diff --git a/include/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h b/include/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h index 66290aac1c..33f5c4f22a 100644 --- a/include/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h +++ b/include/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h @@ -1,6 +1,70 @@ #ifndef D_A_NPC_MYNA2_H #define D_A_NPC_MYNA2_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_myna2_c + * @brief PLumm + * + * @details + * + */ +class daNpc_myna2_c : public fopAc_ac_c { +public: + /* 80A83E8C */ daNpc_myna2_c(); + /* 80A840A0 */ ~daNpc_myna2_c(); + /* 80A842C8 */ void create(); + /* 80A845AC */ void CreateHeap(); + /* 80A846E0 */ void Delete(); + /* 80A84714 */ void Execute(); + /* 80A84734 */ void Draw(); + /* 80A847A8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A847C8 */ void setParam(); + /* 80A848B4 */ void main(); + /* 80A84B64 */ void setAttnPos(); + /* 80A84DAC */ void setExpressionBtp(int); + /* 80A84EAC */ void setMotionAnm(int, f32); + /* 80A84FEC */ void setMotion(int, f32, int); + /* 80A85030 */ bool drawDbgInfo(); + /* 80A85038 */ void drawOtherMdls(); + /* 80A8503C */ void getTypeFromParam(); + /* 80A85094 */ void isDelete(); + /* 80A85160 */ void reset(); + /* 80A85358 */ void playMotion(); + /* 80A855E8 */ void chkAction(int (daNpc_myna2_c::*)(void*)); + /* 80A85614 */ void setAction(int (daNpc_myna2_c::*)(void*)); + /* 80A856BC */ void selectAction(); + /* 80A857B0 */ void doNormalAction(int); + /* 80A85894 */ void doEvent(); + /* 80A85BA4 */ void setLookMode(int); + /* 80A85BC8 */ void wait(void*); + /* 80A85C60 */ void waitHovering(void*); + /* 80A86194 */ void waitFailure(void*); + /* 80A862BC */ void waitGoal(void*); + /* 80A86400 */ void talk(void*); + /* 80A865FC */ void test(void*); + /* 80A866B0 */ void ECut_firstTalk(int); + /* 80A8684C */ void ECut_gameFailure(int); + /* 80A86A0C */ void ECut_gameGoal(int); + /* 80A86BEC */ void ECut_gameGoalSuccess(int); + /* 80A86E8C */ void calcHovering(int, int); + + static void* mEvtCutNameList[5]; + static u8 mEvtCutList[60]; + +private: + /* 0x568 */ u8 field_0x568[0xe34 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_myna2_c) == 0xe34); + +class daNpc_myna2_Param_c { +public: + /* 80A883C8 */ ~daNpc_myna2_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_MYNA2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h b/include/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h index b786c0e564..d4853fef1f 100644 --- a/include/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h +++ b/include/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h @@ -8,6 +8,14 @@ #include "d/msg/d_msg_flow.h" #include "f_op/f_op_actor.h" +/** + * @ingroup actors-npcs + * @class npc_ne_class + * @brief Cat (Neko) + * + * @details + * + */ class npc_ne_class : public fopEn_enemy_c { public: enum Action { @@ -206,4 +214,11 @@ public: STATIC_ASSERT(sizeof(daNpc_Ne_HIO_c) == 0x1C); +struct home_path_pnt { +public: + /* 0x0 */ int mNo; + /* 0x4 */ Vec mPosition; +}; // Size: 0x10 + + #endif /* D_A_NPC_NE_H */ diff --git a/include/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h b/include/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h index 58579f1f7e..c540d197b2 100644 --- a/include/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h +++ b/include/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h @@ -1,6 +1,6 @@ #ifndef D_A_NPC_P2_H #define D_A_NPC_P2_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" #endif /* D_A_NPC_P2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.h b/include/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.h index 6570dc5673..cae25931bb 100644 --- a/include/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.h +++ b/include/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.h @@ -1,6 +1,106 @@ #ifndef D_A_NPC_PACHI_BESU_H #define D_A_NPC_PACHI_BESU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Pachi_Besu_c + * @brief Beth (Slingshot Tutorial) + * + * @details + * + */ +class daNpc_Pachi_Besu_c : public fopAc_ac_c { +public: + /* 80A92D6C */ ~daNpc_Pachi_Besu_c(); + /* 80A92EA4 */ void create(); + /* 80A9317C */ void CreateHeap(); + /* 80A93608 */ void Delete(); + /* 80A9363C */ void Execute(); + /* 80A9365C */ void Draw(); + /* 80A936F0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A93710 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A93768 */ void getType(); + /* 80A93788 */ void isDelete(); + /* 80A937A8 */ void reset(); + /* 80A93910 */ void afterJntAnm(int); + /* 80A9398C */ void setParam(); + /* 80A93A88 */ void afterMoved(); + /* 80A93D70 */ bool checkChangeEvt(); + /* 80A93D78 */ void setAfterTalkMotion(); + /* 80A93E24 */ void srchActors(); + /* 80A93EAC */ void evtTalk(); + /* 80A93FB0 */ void evtCutProc(); + /* 80A94078 */ void action(); + /* 80A94220 */ void beforeMove(); + /* 80A94298 */ void setAttnPos(); + /* 80A944F0 */ void setCollision(); + /* 80A94620 */ bool drawDbgInfo(); + /* 80A94628 */ void selectAction(); + /* 80A946A4 */ void chkAction(int (daNpc_Pachi_Besu_c::*)(void*)); + /* 80A946D0 */ void setAction(int (daNpc_Pachi_Besu_c::*)(void*)); + /* 80A94778 */ void wait(void*); + /* 80A949EC */ void talk(void*); + /* 80A94A7C */ void _turn_to_link(s16); + /* 80A94B24 */ void _turn_pos(cXyz const&); + /* 80A94AC8 */ void _turn_pos(cXyz const&, s16); + /* 80A94B64 */ void cutTutrialBegin(int); + /* 80A94BF8 */ bool _cutTutrialBegin_Init(int const&); + /* 80A94C00 */ bool _cutTutrialBegin_Main(int const&); + /* 80A94C08 */ void cutTutrialBegin_Skip(int); + /* 80A94C9C */ bool _cutTutrialBegin_Skip_Init(int const&); + /* 80A94CA4 */ bool _cutTutrialBegin_Skip_Main(int const&); + /* 80A94CAC */ void cutTutrialClear(int); + /* 80A94D40 */ void _cutTutrialClear_Init(int const&); + /* 80A94E38 */ void _cutTutrialClear_Main(int const&); + /* 80A94ECC */ void cutTalk(int); + /* 80A94F60 */ bool _cutTalk_Init(int const&); + /* 80A94F68 */ void _cutTalk_Main(int const&); + /* 80A94FC4 */ void cutTalk2(int); + /* 80A95058 */ bool _cutTalk2_Init(int const&); + /* 80A95060 */ void _cutTalk2_Main(int const&); + /* 80A950BC */ void cut1stHit_KakasiBody(int); + /* 80A95150 */ void _cut1stHit_KakasiBody_Init(int const&); + /* 80A951DC */ void _cut1stHit_KakasiBody_Main(int const&); + /* 80A95270 */ void cutTutrialSelectGiveUp(int); + /* 80A95304 */ bool _cutTutrialSelectGiveUp_Init(int const&); + /* 80A9530C */ void _cutTutrialSelectGiveUp_Main(int const&); + /* 80A95408 */ void cutTutrialGiveUp(int); + /* 80A9549C */ bool _cutTutrialGiveUp_Init(int const&); + /* 80A954A4 */ void _cutTutrialGiveUp_Main(int const&); + /* 80A954E0 */ void cutTutrialContinue(int); + /* 80A95574 */ bool _cutTutrialContinue_Init(int const&); + /* 80A9557C */ void _cutTutrialContinue_Main(int const&); + /* 80A955B8 */ void cutTutrialCaution(int); + /* 80A9564C */ bool _cutTutrialCaution_Init(int const&); + /* 80A95654 */ void _cutTutrialCaution_Main(int const&); + /* 80A968F4 */ daNpc_Pachi_Besu_c(daNpcT_faceMotionAnmData_c const*, + daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A969C0 */ s32 getEyeballMaterialNo(); + /* 80A969C8 */ s32 getHeadJointNo(); + /* 80A969D0 */ s32 getNeckJointNo(); + /* 80A969D8 */ bool getBackboneJointNo(); + /* 80A969E0 */ void checkChangeJoint(int); + /* 80A969F0 */ void checkRemoveJoint(int); + + static void* mCutNameList[11]; + static u8 mCutList[132]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Pachi_Besu_c) == 0xfcc); + +class daNpc_Pachi_Besu_Param_c { +public: + /* 80A96A00 */ ~daNpc_Pachi_Besu_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_PACHI_BESU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.h b/include/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.h index 43d318202c..6a833b6b86 100644 --- a/include/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.h +++ b/include/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.h @@ -1,6 +1,108 @@ #ifndef D_A_NPC_PACHI_MARO_H #define D_A_NPC_PACHI_MARO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Pachi_Maro_c + * @brief Malo (Slingshot Tutorial) + * + * @details + * + */ +class daNpc_Pachi_Maro_c : public fopAc_ac_c { +public: + /* 80A97C8C */ ~daNpc_Pachi_Maro_c(); + /* 80A97DC4 */ void create(); + /* 80A9809C */ void CreateHeap(); + /* 80A984DC */ void Delete(); + /* 80A98510 */ void Execute(); + /* 80A98530 */ void Draw(); + /* 80A985C4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A985E4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A9863C */ void getType(); + /* 80A9865C */ void isDelete(); + /* 80A9867C */ void reset(); + /* 80A987F4 */ void afterJntAnm(int); + /* 80A98870 */ void setParam(); + /* 80A9896C */ bool checkChangeEvt(); + /* 80A98974 */ void setAfterTalkMotion(); + /* 80A98A10 */ void srchActors(); + /* 80A98A98 */ void evtTalk(); + /* 80A98B9C */ void evtCutProc(); + /* 80A98C64 */ void action(); + /* 80A98DE8 */ void beforeMove(); + /* 80A98E60 */ void afterMoved(); + /* 80A98FB4 */ void setAttnPos(); + /* 80A9928C */ void setCollision(); + /* 80A99394 */ bool drawDbgInfo(); + /* 80A9939C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); + /* 80A99428 */ void getMotionAnm(daNpcT_motionAnmData_c); + /* 80A994B4 */ void selectAction(); + /* 80A99530 */ void chkAction(int (daNpc_Pachi_Maro_c::*)(void*)); + /* 80A9955C */ void setAction(int (daNpc_Pachi_Maro_c::*)(void*)); + /* 80A99604 */ void wait(void*); + /* 80A9986C */ void talk(void*); + /* 80A998FC */ void _turn_to_link(s16); + /* 80A999A4 */ void _turn_pos(cXyz const&); + /* 80A99948 */ void _turn_pos(cXyz const&, s16); + /* 80A999E4 */ void cutTutrialBegin(int); + /* 80A99A78 */ bool _cutTutrialBegin_Init(int const&); + /* 80A99A80 */ bool _cutTutrialBegin_Main(int const&); + /* 80A99A88 */ void cutTutrialBegin_Skip(int); + /* 80A99B1C */ bool _cutTutrialBegin_Skip_Init(int const&); + /* 80A99B24 */ bool _cutTutrialBegin_Skip_Main(int const&); + /* 80A99B2C */ void cutTutrialClear(int); + /* 80A99BC0 */ void _cutTutrialClear_Init(int const&); + /* 80A99CB8 */ void _cutTutrialClear_Main(int const&); + /* 80A99D4C */ void cutTalk(int); + /* 80A99DE0 */ bool _cutTalk_Init(int const&); + /* 80A99DE8 */ void _cutTalk_Main(int const&); + /* 80A99E44 */ void cutTalk2(int); + /* 80A99ED8 */ bool _cutTalk2_Init(int const&); + /* 80A99EE0 */ void _cutTalk2_Main(int const&); + /* 80A99F3C */ void cut1stHit_KakasiBody(int); + /* 80A99FD0 */ void _cut1stHit_KakasiBody_Init(int const&); + /* 80A9A05C */ void _cut1stHit_KakasiBody_Main(int const&); + /* 80A9A0F0 */ void cutTutrialSelectGiveUp(int); + /* 80A9A184 */ bool _cutTutrialSelectGiveUp_Init(int const&); + /* 80A9A18C */ void _cutTutrialSelectGiveUp_Main(int const&); + /* 80A9A288 */ void cutTutrialGiveUp(int); + /* 80A9A31C */ bool _cutTutrialGiveUp_Init(int const&); + /* 80A9A324 */ void _cutTutrialGiveUp_Main(int const&); + /* 80A9A360 */ void cutTutrialContinue(int); + /* 80A9A3F4 */ bool _cutTutrialContinue_Init(int const&); + /* 80A9A3FC */ void _cutTutrialContinue_Main(int const&); + /* 80A9A438 */ void cutTutrialCaution(int); + /* 80A9A4CC */ bool _cutTutrialCaution_Init(int const&); + /* 80A9A4D4 */ void _cutTutrialCaution_Main(int const&); + /* 80A9B714 */ daNpc_Pachi_Maro_c(daNpcT_faceMotionAnmData_c const*, + daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80A9B7E0 */ bool getEyeballMaterialNo(); + /* 80A9B7E8 */ s32 getHeadJointNo(); + /* 80A9B7F0 */ s32 getNeckJointNo(); + /* 80A9B7F8 */ bool getBackboneJointNo(); + /* 80A9B800 */ void checkChangeJoint(int); + /* 80A9B810 */ void checkRemoveJoint(int); + + static void* mCutNameList[11]; + static u8 mCutList[132]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Pachi_Maro_c) == 0xfcc); + +class daNpc_Pachi_Maro_Param_c { +public: + /* 80A9B820 */ ~daNpc_Pachi_Maro_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_PACHI_MARO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.h b/include/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.h index 5f6bf5a3ce..66a5c0123f 100644 --- a/include/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.h +++ b/include/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.h @@ -1,6 +1,124 @@ #ifndef D_A_NPC_PACHI_TARO_H #define D_A_NPC_PACHI_TARO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Pachi_Taro_c + * @brief Talo (Slingshot Tutorial) + * + * @details + * + */ +class daNpc_Pachi_Taro_c : public fopAc_ac_c { +public: + /* 80A9C28C */ ~daNpc_Pachi_Taro_c(); + /* 80A9C3C4 */ void create(); + /* 80A9C69C */ void CreateHeap(); + /* 80A9CBD8 */ void Delete(); + /* 80A9CC0C */ void Execute(); + /* 80A9CC2C */ void Draw(); + /* 80A9CCC0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80A9CCE0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A9CD38 */ bool getType(); + /* 80A9CD40 */ void isDelete(); + /* 80A9CD60 */ void reset(); + /* 80A9CF10 */ void afterJntAnm(int); + /* 80A9CF9C */ void setParam(); + /* 80A9D098 */ bool checkChangeEvt(); + /* 80A9D0A0 */ void setAfterTalkMotion(); + /* 80A9D164 */ void srchActors(); + /* 80A9D27C */ void srchDistTag1(); + /* 80A9D2A8 */ void _srch_DistTag1_main(void*, void*); + /* 80A9D310 */ void srchDistTag2(); + /* 80A9D33C */ void _srch_DistTag2_main(void*, void*); + /* 80A9D3A4 */ void srchEscapeTag1(); + /* 80A9D3D0 */ void _srch_EscapeTag1_main(void*, void*); + /* 80A9D438 */ void srchEscapeTag2(); + /* 80A9D464 */ void _srch_EscapeTag2_main(void*, void*); + /* 80A9D4CC */ void evtTalk(); + /* 80A9D5D0 */ void evtCutProc(); + /* 80A9D698 */ void action(); + /* 80A9D840 */ void beforeMove(); + /* 80A9D8B8 */ void setAttnPos(); + /* 80A9DB0C */ void setCollision(); + /* 80A9DC14 */ bool drawDbgInfo(); + /* 80A9DC1C */ void drawOtherMdl(); + /* 80A9DD24 */ void selectAction(); + /* 80A9DDA0 */ void chkAction(int (daNpc_Pachi_Taro_c::*)(void*)); + /* 80A9DDCC */ void setAction(int (daNpc_Pachi_Taro_c::*)(void*)); + /* 80A9DE74 */ void wait(void*); + /* 80A9E154 */ void setMesPat(); + /* 80A9E224 */ void _turn_to_link(s16); + /* 80A9E270 */ void _turn_pos(cXyz const&, s16); + /* 80A9E2CC */ void _turn_pos(cXyz const&); + /* 80A9E30C */ void talk_cancel(); + /* 80A9E364 */ void watch_tutrial(); + /* 80A9E3E4 */ void chkDistTag(); + /* 80A9E458 */ void chkEscapeTag(); + /* 80A9E56C */ void chkTarget(); + /* 80A9E700 */ void clr_tagHit(); + /* 80A9E778 */ void allTagPosSet(cXyz const&); + /* 80A9E80C */ void allLookPosSet(cXyz const&); + /* 80A9E8A0 */ void talk(void*); + /* 80A9E910 */ void evtEndProc(); + /* 80A9E9E8 */ void cutTutrialBegin(int); + /* 80A9EAA0 */ void _cutTutrialBegin_Init(int const&); + /* 80A9EB3C */ void _cutTutrialBegin_Main(int const&); + /* 80A9EC5C */ void cutTutrialBegin_Skip(int); + /* 80A9ECF0 */ void _cutTutrialBegin_Skip_Init(int const&); + /* 80A9ED28 */ void _cutTutrialBegin_Skip_Main(int const&); + /* 80A9ED40 */ void cutTutrialClear(int); + /* 80A9EDD4 */ void _cutTutrialClear_Init(int const&); + /* 80A9EEBC */ void _cutTutrialClear_Main(int const&); + /* 80A9EFC0 */ void cutTalk(int); + /* 80A9F0DC */ void _cutTalk_Init(int const&); + /* 80A9F188 */ void _cutTalk_Main(int const&, int const&); + /* 80A9F324 */ void cutTalk2(int); + /* 80A9F440 */ void _cutTalk2_Init(int const&); + /* 80A9F4EC */ void _cutTalk2_Main(int const&, int const&); + /* 80A9F688 */ void cut1stHit_KakasiBody(int); + /* 80A9F71C */ void _cut1stHit_KakasiBody_Init(int const&); + /* 80A9F83C */ void _cut1stHit_KakasiBody_Main(int const&); + /* 80A9F9C4 */ void cutTutrialSelectGiveUp(int); + /* 80A9FA58 */ void _cutTutrialSelectGiveUp_Init(int const&); + /* 80A9FB08 */ void _cutTutrialSelectGiveUp_Main(int const&); + /* 80A9FCEC */ void cutTutrialGiveUp(int); + /* 80A9FD80 */ void _cutTutrialGiveUp_Init(int const&); + /* 80A9FE34 */ void _cutTutrialGiveUp_Main(int const&); + /* 80A9FFAC */ void cutTutrialCaution(int); + /* 80AA0040 */ void _cutTutrialCaution_Init(int const&); + /* 80AA0088 */ void _cutTutrialCaution_Main(int const&); + /* 80AA0108 */ void cutTutrialContinue(int); + /* 80AA019C */ bool _cutTutrialContinue_Init(int const&); + /* 80AA01A4 */ void _cutTutrialContinue_Main(int const&); + /* 80AA148C */ daNpc_Pachi_Taro_c(daNpcT_faceMotionAnmData_c const*, + daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AA1558 */ s32 getEyeballMaterialNo(); + /* 80AA1560 */ s32 getHeadJointNo(); + /* 80AA1568 */ s32 getNeckJointNo(); + /* 80AA1570 */ bool getBackboneJointNo(); + /* 80AA1578 */ void checkChangeJoint(int); + /* 80AA1588 */ void checkRemoveJoint(int); + + static void* mCutNameList[11]; + static u8 mCutList[132]; + +private: + /* 0x568 */ u8 field_0x568[0x100c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Pachi_Taro_c) == 0x100c); + +class daNpc_Pachi_Taro_Param_c { +public: + /* 80AA1598 */ ~daNpc_Pachi_Taro_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_PACHI_TARO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.h b/include/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.h index e239fddf18..ea75bb29ea 100644 --- a/include/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.h +++ b/include/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.h @@ -1,6 +1,107 @@ #ifndef D_A_NPC_PASSER_H #define D_A_NPC_PASSER_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcPasser_c + * @brief Hylian Passerby (Castle Town NPC?) + * + * @details + * + */ +class daNpcPasser_c : public fopAc_ac_c { +public: + struct Mode_e {}; + + /* 80AA2C18 */ ~daNpcPasser_c(); + /* 80AA2C9C */ void createHeap(); + /* 80AA2D40 */ void create(); + /* 80AA2FD4 */ void execute(); + /* 80AA315C */ void draw(); + /* 80AA31EC */ void setAction(daNpcPasser_c::Mode_e); + /* 80AA3230 */ void callInit(); + /* 80AA3258 */ void callExecute(); + /* 80AA3284 */ void initPath(); + /* 80AA33F0 */ void executePath(); + /* 80AA38C4 */ void initEscape(); + /* 80AA39DC */ void executeEscape(); + /* 80AA3D4C */ void initFear(); + /* 80AA3DE4 */ void executeFear(); + /* 80AA3E5C */ void initFight(); + /* 80AA3F10 */ void executeFight(); + /* 80AA40A4 */ void initRelief(); + /* 80AA4128 */ void executeRelief(); + /* 80AA41E4 */ void create_init(); + /* 80AA43A4 */ void setAngle(); + /* 80AA43B0 */ void setSpeed(f32, f32, f32*, int); + /* 80AA44A4 */ void pathMoveF(); + /* 80AA4780 */ void setBaseMtx(); + /* 80AA47FC */ void initCollision(); + /* 80AA48D8 */ void setCollision(); + /* 80AA492C */ void waita(void*); + /* 80AA49D4 */ void talka(void*); + /* 80AA4A7C */ void waitwall(void*); + /* 80AA4B24 */ void talkwall(void*); + /* 80AA4BCC */ void talkbwall(void*); + /* 80AA4C74 */ void talkb(void*); + /* 80AA4D1C */ void talkc(void*); + /* 80AA4DC4 */ void waitb(void*); + /* 80AA4E6C */ void sitwaita(void*); + /* 80AA4F14 */ void sittalka(void*); + /* 80AA4FBC */ void sittalkab(void*); + /* 80AA5064 */ void sitwaitb(void*); + /* 80AA510C */ void sittalkb(void*); + /* 80AA51B4 */ void sittalkbb(void*); + /* 80AA525C */ void looka(void*); + /* 80AA5304 */ void lookb(void*); + /* 80AA53AC */ void playm(void*); + /* 80AA5454 */ void turnr(void*); + /* 80AA5510 */ void turnl(void*); + /* 80AA55CC */ void walka(void*); + /* 80AA5634 */ void runa(void*); + /* 80AA569C */ void runb(void*); + /* 80AA5704 */ void walkb(void*); + /* 80AA576C */ void browsea(void*); + /* 80AA5814 */ void browseb(void*); + /* 80AA58BC */ void waitTime(void*); + + static u8 ActionTable[120]; + static void* m_funcTbl[28]; + static u8 m_seq00_funcTbl[24]; + static u8 m_seq01_funcTbl[24]; + static u8 m_seq02_funcTbl[24]; + static u8 m_seq03_funcTbl[24]; + static u8 m_seq04_funcTbl[24]; + static u8 m_seq05_funcTbl[48]; + static u8 m_seq06_funcTbl[48]; + static u8 m_seq07_funcTbl[24]; + static u8 m_seq08_funcTbl[84]; + static u8 m_seq09_funcTbl[24]; + static u8 m_seq10_funcTbl[24]; + static u8 m_seq11_funcTbl[72]; + static u8 m_seq12_funcTbl[24]; + static u8 m_seq13_funcTbl[72]; + static u8 m_seq14_funcTbl[24]; + static u8 m_seq15_funcTbl[24]; + static u8 m_seq16_funcTbl[84]; + static u8 m_seq17_funcTbl[24]; + static u8 m_seq18_funcTbl[24]; + static u8 m_seq19_funcTbl[84]; + static u8 m_seq20_funcTbl[24]; + static u8 m_seq21_funcTbl[24]; + static u8 m_seq22_funcTbl[48]; + static u8 m_seq23_funcTbl[84]; + static u8 m_seq24_funcTbl[60]; + static u8 m_seq25_funcTbl[84]; + static u8 m_seq26_funcTbl[36]; + static u8 m_seq27_funcTbl[12]; + +private: + /* 0x568 */ u8 field_0x568[0xb28 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcPasser_c) == 0xb28); + #endif /* D_A_NPC_PASSER_H */ diff --git a/include/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h b/include/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h index f75d168f62..8e8c5b938c 100644 --- a/include/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h +++ b/include/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h @@ -1,6 +1,36 @@ #ifndef D_A_NPC_PASSER2_H #define D_A_NPC_PASSER2_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcPasser2_c + * @brief Hylian Passerby 2 (Castle Town NPC?) + * + * @details + * + */ +class daNpcPasser2_c : public fopAc_ac_c { +public: + struct Mode_e {}; + + /* 80AA755C */ void setAction(daNpcPasser2_c::Mode_e); + /* 80AA75A0 */ void callInit(); + /* 80AA75C8 */ void callExecute(); + /* 80AA75F4 */ void initPath(); + /* 80AA774C */ void executePath(); + /* 80AA790C */ void setAngle(); + /* 80AA7918 */ void pathMoveF(); + /* 80AA7CD8 */ void create(); + /* 80AA7F78 */ void create_init(); + /* 80AA8270 */ ~daNpcPasser2_c(); + + static u8 ActionTable[24]; + +private: + /* 0x568 */ u8 field_0x568[0xa44 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcPasser2_c) == 0xa44); #endif /* D_A_NPC_PASSER2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_post/d_a_npc_post.h b/include/rel/d/a/npc/d_a_npc_post/d_a_npc_post.h index 0a756c96b4..5f52f14b20 100644 --- a/include/rel/d/a/npc/d_a_npc_post/d_a_npc_post.h +++ b/include/rel/d/a/npc/d_a_npc_post/d_a_npc_post.h @@ -1,6 +1,81 @@ #ifndef D_A_NPC_POST_H #define D_A_NPC_POST_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Post_c + * @brief Postman + * + * @details + * + */ +class daNpc_Post_c : public fopAc_ac_c { +public: + /* 80AA8C8C */ ~daNpc_Post_c(); + /* 80AA8DE8 */ void create(); + /* 80AA90B0 */ void CreateHeap(); + /* 80AA9634 */ void Delete(); + /* 80AA9668 */ void Execute(); + /* 80AA9688 */ void Draw(); + /* 80AA971C */ void createHeapCallBack(fopAc_ac_c*); + /* 80AA973C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AA9794 */ void getType(); + /* 80AA97E0 */ void isDelete(); + /* 80AA9828 */ void reset(); + /* 80AA99F0 */ void afterJntAnm(int); + /* 80AA9A7C */ void setParam(); + /* 80AA9BA4 */ void checkChangeEvt(); + /* 80AA9C58 */ void setAfterTalkMotion(); + /* 80AA9D04 */ void srchActors(); + /* 80AA9D98 */ void evtTalk(); + /* 80AA9E98 */ void evtCutProc(); + /* 80AA9F60 */ void action(); + /* 80AAA058 */ void beforeMove(); + /* 80AAA124 */ void afterMoved(); + /* 80AAA1E4 */ void setAttnPos(); + /* 80AAA570 */ void setCollision(); + /* 80AAA714 */ bool drawDbgInfo(); + /* 80AAA71C */ void drawOtherMdl(); + /* 80AAA8A4 */ void setFlagAnm(int, int, f32); + /* 80AAA968 */ void afterSetMotionAnm(int, int, f32, int); + /* 80AAA99C */ void selectAction(); + /* 80AAA9E4 */ void chkAction(int (daNpc_Post_c::*)(void*)); + /* 80AAAA10 */ void setAction(int (daNpc_Post_c::*)(void*)); + /* 80AAAAB8 */ void chkPullOutLetter1(); + /* 80AAAB2C */ void chkPullOutLetter2(); + /* 80AAABA0 */ void pullOutLetter(); + /* 80AAAC64 */ void cutDeliver(int); + /* 80AAB61C */ void wait(void*); + /* 80AABC24 */ void talk(void*); + /* 80AACFF0 */ daNpc_Post_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AAD0D0 */ bool getEyeballMaterialNo(); + /* 80AAD0D8 */ s32 getHeadJointNo(); + /* 80AAD0E0 */ s32 getNeckJointNo(); + /* 80AAD0E8 */ bool getBackboneJointNo(); + /* 80AAD0F0 */ void checkChangeJoint(int); + /* 80AAD100 */ void checkRemoveJoint(int); + /* 80AAD110 */ s32 getFootLJointNo(); + /* 80AAD118 */ s32 getFootRJointNo(); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0x1018 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Post_c) == 0x1018); + +class daNpc_Post_Param_c { +public: + /* 80AAD120 */ ~daNpc_Post_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_POST_H */ diff --git a/include/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h b/include/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h index 3e23f8e417..691f8ed36f 100644 --- a/include/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h +++ b/include/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_POUYA_H #define D_A_NPC_POUYA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Pouya_c + * @brief Poe Merchant (Jovani?) + * + * @details + * + */ +class daNpc_Pouya_c : public fopAc_ac_c { +public: + /* 80AADDAC */ ~daNpc_Pouya_c(); + /* 80AADEE0 */ void create(); + /* 80AAE1AC */ void CreateHeap(); + /* 80AAE788 */ void Delete(); + /* 80AAE7BC */ void Execute(); + /* 80AAE7DC */ void Draw(); + /* 80AAE870 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AAE890 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AAE8E8 */ void getType(); + /* 80AAE94C */ void isDelete(); + /* 80AAE9D8 */ void reset(); + /* 80AAEBCC */ void ctrlSubFaceMotion(int); + /* 80AAEDB8 */ void afterJntAnm(int); + /* 80AAEE44 */ void setParam(); + /* 80AAEFB4 */ void checkChangeEvt(); + /* 80AAF148 */ void setAfterTalkMotion(); + /* 80AAF1F0 */ void srchActors(); + /* 80AAF1F4 */ void evtTalk(); + /* 80AAF294 */ void evtCutProc(); + /* 80AAF35C */ void action(); + /* 80AAF4F8 */ void beforeMove(); + /* 80AAF5BC */ void setAttnPos(); + /* 80AAF8E4 */ void setCollision(); + /* 80AAFA5C */ bool drawDbgInfo(); + /* 80AAFA64 */ void drawOtherMdl(); + /* 80AAFB4C */ void afterSetMotionAnm(int, int, f32, int); + /* 80AAFBDC */ void selectAction(); + /* 80AAFC24 */ void chkAction(int (daNpc_Pouya_c::*)(void*)); + /* 80AAFC50 */ void setAction(int (daNpc_Pouya_c::*)(void*)); + /* 80AAFCF8 */ void setPrtcls(); + /* 80AAFE08 */ void cutHaveFavorToAsk(int); + /* 80AB04A8 */ void wait(void*); + /* 80AB0A7C */ void talk(void*); + /* 80AB1E94 */ daNpc_Pouya_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AB1F54 */ bool getEyeballMaterialNo(); + /* 80AB1F5C */ s32 getHeadJointNo(); + /* 80AB1F64 */ s32 getNeckJointNo(); + /* 80AB1F6C */ bool getBackboneJointNo(); + /* 80AB1F74 */ void checkChangeJoint(int); + /* 80AB1F84 */ void checkRemoveJoint(int); + + static void* mCutNameList[3]; + static u8 mCutList[36]; + +private: + /* 0x568 */ u8 field_0x568[0xfd4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Pouya_c) == 0xfd4); + +class daNpc_Pouya_Param_c { +public: + /* 80AB1F94 */ ~daNpc_Pouya_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_POUYA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h b/include/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h index 9d0d71febc..c04fa4586f 100644 --- a/include/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h +++ b/include/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h @@ -1,6 +1,64 @@ #ifndef D_A_NPC_PRAYER_H #define D_A_NPC_PRAYER_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcPray_c + * @brief Charlo + * + * @details + * + */ +class daNpcPray_c : public fopAc_ac_c { +public: + /* 80AB2DEC */ daNpcPray_c(); + /* 80AB3000 */ ~daNpcPray_c(); + /* 80AB3204 */ void Create(); + /* 80AB348C */ void CreateHeap(); + /* 80AB3610 */ void Delete(); + /* 80AB3644 */ void Execute(); + /* 80AB3668 */ void Draw(); + /* 80AB36A8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80AB3834 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AB3854 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AB38A0 */ void setParam(); + /* 80AB390C */ void main(); + /* 80AB3964 */ void setAttnPos(); + /* 80AB3B0C */ void setMotionAnm(int, f32); + /* 80AB3BDC */ void setMotion(int, f32, int); + /* 80AB3C24 */ bool drawDbgInfo(); + /* 80AB3C2C */ void reset(); + /* 80AB3DBC */ void playMotion(); + /* 80AB3F54 */ void setAction(bool (daNpcPray_c::*)(void*)); + /* 80AB3FFC */ void setLookMode(int); + /* 80AB4020 */ void lookat(); + /* 80AB4200 */ void step(s16, int); + /* 80AB42F4 */ void chkFindPlayer(); + /* 80AB43D8 */ void wait(void*); + /* 80AB4674 */ void fear(void*); + /* 80AB4740 */ void talk(void*); + /* 80AB498C */ void demo(void*); + /* 80AB4B20 */ void createHeart(); + /* 80AB4BFC */ void _Evt_GetHeart(int); + /* 80AB4CA4 */ void _Evt_GetHeart_CutInit(int const&); + /* 80AB4D34 */ void _Evt_GetHeart_CutMain(int const&); + /* 80AB5798 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe10 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcPray_c) == 0xe10); + +class daNpcPray_Param_c { +public: + /* 80AB579C */ ~daNpcPray_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_PRAYER_H */ diff --git a/include/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h b/include/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h index 4d24b8c71c..d0d4fd638d 100644 --- a/include/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h +++ b/include/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h @@ -1,6 +1,75 @@ #ifndef D_A_NPC_RACA_H #define D_A_NPC_RACA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Raca_c + * @brief Falbi + * + * @details + * + */ +class daNpc_Raca_c : public fopAc_ac_c { +public: + /* 80AB5CAC */ ~daNpc_Raca_c(); + /* 80AB5DFC */ void create(); + /* 80AB60B8 */ void CreateHeap(); + /* 80AB6514 */ void Delete(); + /* 80AB6548 */ void Execute(); + /* 80AB6568 */ void Draw(); + /* 80AB65FC */ void createHeapCallBack(fopAc_ac_c*); + /* 80AB661C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AB6674 */ void srchNi(void*, void*); + /* 80AB6700 */ void getNiP(); + /* 80AB67CC */ void getType(); + /* 80AB67EC */ void isDelete(); + /* 80AB681C */ void reset(); + /* 80AB6984 */ void afterJntAnm(int); + /* 80AB6A10 */ void setParam(); + /* 80AB6B0C */ void setAfterTalkMotion(); + /* 80AB6BB0 */ void srchActors(); + /* 80AB6C14 */ void evtTalk(); + /* 80AB6D14 */ void evtCutProc(); + /* 80AB6DDC */ void action(); + /* 80AB6EC8 */ void beforeMove(); + /* 80AB6F40 */ void setAttnPos(); + /* 80AB7180 */ void setCollision(); + /* 80AB72B4 */ bool drawDbgInfo(); + /* 80AB72BC */ void selectAction(); + /* 80AB73B0 */ void chkAction(int (daNpc_Raca_c::*)(void*)); + /* 80AB73DC */ void setAction(int (daNpc_Raca_c::*)(void*)); + /* 80AB7484 */ void wait(void*); + /* 80AB7710 */ void walk(void*); + /* 80AB7918 */ void talk(void*); + /* 80AB8CCC */ daNpc_Raca_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AB8DAC */ s32 getEyeballMaterialNo(); + /* 80AB8DB4 */ s32 getHeadJointNo(); + /* 80AB8DBC */ s32 getNeckJointNo(); + /* 80AB8DC4 */ bool getBackboneJointNo(); + /* 80AB8DCC */ void checkChangeJoint(int); + /* 80AB8DDC */ void checkRemoveJoint(int); + /* 80AB8DEC */ s32 getFootLJointNo(); + /* 80AB8DF4 */ s32 getFootRJointNo(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfd4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Raca_c) == 0xfd4); + +class daNpc_Raca_Param_c { +public: + /* 80AB8DFC */ ~daNpc_Raca_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_RACA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h b/include/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h index 9eecc533cc..53260b2606 100644 --- a/include/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h +++ b/include/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h @@ -1,6 +1,67 @@ #ifndef D_A_NPC_RAFREL_H #define D_A_NPC_RAFREL_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcRafrel_c + * @brief Auru + * + * @details + * + */ +class daNpcRafrel_c : public fopAc_ac_c { +public: + /* 80AB962C */ daNpcRafrel_c(); + /* 80AB9840 */ ~daNpcRafrel_c(); + /* 80AB9A40 */ void Create(); + /* 80AB9E3C */ void CreateHeap(); + /* 80ABA380 */ void Delete(); + /* 80ABA3B4 */ void Execute(); + /* 80ABA3D8 */ void Draw(); + /* 80ABA4A8 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80ABA678 */ void createHeapCallBack(fopAc_ac_c*); + /* 80ABA698 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80ABA6E4 */ void setExpressionAnm(int, bool); + /* 80ABA8EC */ void setExpressionBtp(int); + /* 80ABA9CC */ void setMotionAnm(int, f32); + /* 80ABAB88 */ void reset(); + /* 80ABADC4 */ void setWaitAction(); + /* 80ABAFBC */ void isSneaking(); + /* 80ABB014 */ void wait_type01(void*); + /* 80ABBB10 */ void setMotion(int, f32, int); + /* 80ABBBB0 */ void setExpression(int, f32); + /* 80ABBBDC */ void wait_type2(void*); + /* 80ABBE84 */ void talk(void*); + /* 80ABC50C */ void demo(void*); + /* 80ABCA40 */ void leave(void*); + /* 80ABCD74 */ void EvCut_Introduction(int); + /* 80ABCE74 */ void EvCut_Meeting(int); + /* 80ABD124 */ void EvCut_Appear(int); + /* 80ABD8A0 */ void EvCut_WiretapSponsor(int); + /* 80ABDB7C */ void EvCut_WiretapEntrant(int); + /* 80ABDE9C */ void setParam(); + /* 80ABE1D0 */ void main(); + /* 80ABE470 */ void playMotion(); + /* 80ABE9FC */ void ctrlBtk(); + /* 80ABEAD8 */ void setAttnPos(); + /* 80ABEE98 */ void lookat(); + /* 80ABF074 */ bool drawDbgInfo(); + + static u8 mEvtSeqList[84]; + +private: + /* 0x568 */ u8 field_0x568[0xe18 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcRafrel_c) == 0xe18); + +class daNpcRafrel_Param_c { +public: + /* 80ABF974 */ ~daNpcRafrel_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_RAFREL_H */ diff --git a/include/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h b/include/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h index 642627577f..837498ecb5 100644 --- a/include/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h +++ b/include/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h @@ -1,6 +1,74 @@ #ifndef D_A_NPC_SARU_H #define D_A_NPC_SARU_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Saru_c + * @brief Monkey (Ook?) + * + * @details + * + */ +class daNpc_Saru_c : public fopAc_ac_c { +public: + /* 80AC042C */ ~daNpc_Saru_c(); + /* 80AC0578 */ void create(); + /* 80AC082C */ void CreateHeap(); + /* 80AC0A54 */ void Delete(); + /* 80AC0A88 */ void Execute(); + /* 80AC0AA8 */ void Draw(); + /* 80AC0AEC */ void createHeapCallBack(fopAc_ac_c*); + /* 80AC0B0C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AC0B64 */ void srchYm(void*, void*); + /* 80AC0C0C */ void getType(); + /* 80AC0C58 */ void isDelete(); + /* 80AC0CE8 */ void reset(); + /* 80AC0EA4 */ void afterJntAnm(int); + /* 80AC0F28 */ void checkChangeEvt(); + /* 80AC0FDC */ void setParam(); + /* 80AC1110 */ void setAfterTalkMotion(); + /* 80AC1170 */ void srchActors(); + /* 80AC11D4 */ void evtTalk(); + /* 80AC1274 */ void evtCutProc(); + /* 80AC133C */ void action(); + /* 80AC14E4 */ void beforeMove(); + /* 80AC15B4 */ void setAttnPos(); + /* 80AC18A0 */ void setCollision(); + /* 80AC1A20 */ bool drawDbgInfo(); + /* 80AC1A28 */ void drawOtherMdl(); + /* 80AC1B30 */ void selectAction(); + /* 80AC1B78 */ void chkAction(int (daNpc_Saru_c::*)(void*)); + /* 80AC1BA4 */ void setAction(int (daNpc_Saru_c::*)(void*)); + /* 80AC1C4C */ void setSe(); + /* 80AC216C */ void cutFindMonkey(int); + /* 80AC2368 */ void cutHelpMe(int); + /* 80AC2598 */ void cutYmLook(int); + /* 80AC28A4 */ void wait(void*); + /* 80AC2FD8 */ void talk(void*); + /* 80AC4394 */ daNpc_Saru_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AC4474 */ s32 getHeadJointNo(); + /* 80AC447C */ s32 getNeckJointNo(); + /* 80AC4484 */ bool getBackboneJointNo(); + + static void* mCutNameList[4]; + static u8 mCutList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xfe0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Saru_c) == 0xfe0); + +class daNpc_Saru_Param_c { +public: + /* 80AC448C */ ~daNpc_Saru_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_SARU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h b/include/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h index 18dd7665b1..c10cd736ee 100644 --- a/include/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h +++ b/include/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h @@ -1,6 +1,63 @@ #ifndef D_A_NPC_SEIB_H #define D_A_NPC_SEIB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_seiB_c + * @brief Faron Spirit + * + * @details + * + */ +class daNpc_seiB_c : public fopAc_ac_c { +public: + /* 80AC50EC */ ~daNpc_seiB_c(); + /* 80AC5188 */ void create(); + /* 80AC53C8 */ void CreateHeap(); + /* 80AC5520 */ void Delete(); + /* 80AC5554 */ void Execute(); + /* 80AC5574 */ void Draw(); + /* 80AC5608 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AC5628 */ void getType(); + /* 80AC5648 */ void getFlowNodeNo(); + /* 80AC5664 */ bool isDelete(); + /* 80AC566C */ void reset(); + /* 80AC57C4 */ void setParam(); + /* 80AC58F0 */ void srchActors(); + /* 80AC58F4 */ void evtTalk(); + /* 80AC59F4 */ void evtCutProc(); + /* 80AC5ABC */ void action(); + /* 80AC5B44 */ void beforeMove(); + /* 80AC5BC4 */ void setAttnPos(); + /* 80AC5C20 */ bool drawDbgInfo(); + /* 80AC5C28 */ void afterSetMotionAnm(int, int, f32, int); + /* 80AC5DC0 */ void selectAction(); + /* 80AC5E08 */ void chkAction(int (daNpc_seiB_c::*)(void*)); + /* 80AC5E34 */ void setAction(int (daNpc_seiB_c::*)(void*)); + /* 80AC5EDC */ void ctrlWaitAnm(); + /* 80AC6140 */ void wait(void*); + /* 80AC616C */ void talk(void*); + /* 80AC6F74 */ daNpc_seiB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe68 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_seiB_c) == 0xe68); + +class daNpc_seiB_Param_c { +public: + /* 80AC6FB8 */ ~daNpc_seiB_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_SEIB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h b/include/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h index f9050a643a..d69791450c 100644 --- a/include/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h +++ b/include/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h @@ -1,6 +1,63 @@ #ifndef D_A_NPC_SEIC_H #define D_A_NPC_SEIC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_seiC_c + * @brief Eldin Spirit + * + * @details + * + */ +class daNpc_seiC_c : public fopAc_ac_c { +public: + /* 80AC754C */ ~daNpc_seiC_c(); + /* 80AC75E8 */ void create(); + /* 80AC7828 */ void CreateHeap(); + /* 80AC7980 */ void Delete(); + /* 80AC79B4 */ void Execute(); + /* 80AC79D4 */ void Draw(); + /* 80AC7A68 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AC7A88 */ void getType(); + /* 80AC7AA8 */ void getFlowNodeNo(); + /* 80AC7AC4 */ bool isDelete(); + /* 80AC7ACC */ void reset(); + /* 80AC7C1C */ void setParam(); + /* 80AC7D48 */ void srchActors(); + /* 80AC7D4C */ void evtTalk(); + /* 80AC7E4C */ void evtCutProc(); + /* 80AC7F14 */ void action(); + /* 80AC7F9C */ void beforeMove(); + /* 80AC801C */ void setAttnPos(); + /* 80AC8078 */ bool drawDbgInfo(); + /* 80AC8080 */ void afterSetMotionAnm(int, int, f32, int); + /* 80AC8218 */ void selectAction(); + /* 80AC8260 */ void chkAction(int (daNpc_seiC_c::*)(void*)); + /* 80AC828C */ void setAction(int (daNpc_seiC_c::*)(void*)); + /* 80AC8334 */ void ctrlWaitAnm(); + /* 80AC8338 */ void wait(void*); + /* 80AC8364 */ void talk(void*); + /* 80AC916C */ daNpc_seiC_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe64 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_seiC_c) == 0xe64); + +class daNpc_seiC_Param_c { +public: + /* 80AC91B0 */ ~daNpc_seiC_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_SEIC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h b/include/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h index b286186bad..7406eea5e3 100644 --- a/include/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h +++ b/include/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h @@ -1,6 +1,63 @@ #ifndef D_A_NPC_SEID_H #define D_A_NPC_SEID_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_seiD_c + * @brief Lanayru Spirit + * + * @details + * + */ +class daNpc_seiD_c : public fopAc_ac_c { +public: + /* 80AC968C */ ~daNpc_seiD_c(); + /* 80AC9728 */ void create(); + /* 80AC9968 */ void CreateHeap(); + /* 80AC9AC0 */ void Delete(); + /* 80AC9AF4 */ void Execute(); + /* 80AC9B14 */ void Draw(); + /* 80AC9BA8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AC9BC8 */ void getType(); + /* 80AC9BE8 */ void getFlowNodeNo(); + /* 80AC9C04 */ bool isDelete(); + /* 80AC9C0C */ void reset(); + /* 80AC9D5C */ void setParam(); + /* 80AC9E88 */ void srchActors(); + /* 80AC9E8C */ void evtTalk(); + /* 80AC9F8C */ void evtCutProc(); + /* 80ACA054 */ void action(); + /* 80ACA0DC */ void beforeMove(); + /* 80ACA15C */ void setAttnPos(); + /* 80ACA1B8 */ bool drawDbgInfo(); + /* 80ACA1C0 */ void afterSetMotionAnm(int, int, f32, int); + /* 80ACA358 */ void selectAction(); + /* 80ACA3A0 */ void chkAction(int (daNpc_seiD_c::*)(void*)); + /* 80ACA3CC */ void setAction(int (daNpc_seiD_c::*)(void*)); + /* 80ACA474 */ void ctrlWaitAnm(); + /* 80ACA478 */ void wait(void*); + /* 80ACA4A4 */ void talk(void*); + /* 80ACB2AC */ daNpc_seiD_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe64 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_seiD_c) == 0xe64); + +class daNpc_seiD_Param_c { +public: + /* 80ACB2F0 */ ~daNpc_seiD_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_SEID_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h b/include/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h index 419784ce46..5d0cb6457d 100644 --- a/include/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h +++ b/include/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h @@ -1,6 +1,92 @@ #ifndef D_A_NPC_SEIRA_H #define D_A_NPC_SEIRA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Seira_c + * @brief Sera + * + * @details + * + */ +class daNpc_Seira_c : public fopAc_ac_c { +public: + /* 80ACB7CC */ ~daNpc_Seira_c(); + /* 80ACB918 */ void create(); + /* 80ACBBD4 */ void CreateHeap(); + /* 80ACC0FC */ void Delete(); + /* 80ACC130 */ void Execute(); + /* 80ACC21C */ void Draw(); + /* 80ACC2B0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80ACC2D0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80ACC328 */ void getType(); + /* 80ACC424 */ void getFlowNodeNo(); + /* 80ACC440 */ void checkBottle(); + /* 80ACC4A8 */ void getNpcType(); + /* 80ACC4C8 */ bool isDelete(); + /* 80ACC4D0 */ void reset(); + /* 80ACC618 */ void afterJntAnm(int); + /* 80ACC69C */ void setParam(); + /* 80ACC818 */ void checkChangeEvt(); + /* 80ACC8C0 */ void setAfterTalkMotion(); + /* 80ACC980 */ void srchActors(); + /* 80ACCA48 */ void evtTalk(); + /* 80ACCBEC */ void evtCutProc(); + /* 80ACCCBC */ void action(); + /* 80ACCE58 */ void beforeMove(); + /* 80ACCED0 */ void setAttnPos(); + /* 80ACD1D0 */ void setCollision(); + /* 80ACD378 */ bool drawDbgInfo(); + /* 80ACD380 */ void drawOtherMdl(); + /* 80ACD458 */ void setBottleAnm(int, int, f32, bool); + /* 80ACD538 */ void afterSetMotionAnm(int, int, f32, int); + /* 80ACD570 */ void changeAnm(int*, int*); + /* 80ACD600 */ void changeBck(int*, int*); + /* 80ACD6AC */ void changeBtp(int*, int*); + /* 80ACD744 */ void changeBtk(int*, int*); + /* 80ACD770 */ void selectAction(); + /* 80ACD900 */ void chkAction(int (daNpc_Seira_c::*)(void*)); + /* 80ACD92C */ void setAction(int (daNpc_Seira_c::*)(void*)); + /* 80ACD9D4 */ void cutConversationAboutSaru(int); + /* 80ACDC6C */ void checkStageIsSeirasShop(); + /* 80ACDCE4 */ void getShopItemType(); + /* 80ACDD24 */ void wait(void*); + /* 80ACDE74 */ void sit(void*); + /* 80ACE098 */ void happy(void*); + /* 80ACE220 */ void worry(void*); + /* 80ACE4FC */ void sad(void*); + /* 80ACE608 */ void lookaround(void*); + /* 80ACE714 */ void lookaround_wait(void*); + /* 80ACE828 */ void smile(void*); + /* 80ACE934 */ void talk(void*); + /* 80ACEAC4 */ void shop(void*); + /* 80ACFB48 */ daNpc_Seira_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80ACFC14 */ s32 getEyeballMaterialNo(); + /* 80ACFC1C */ s32 getHeadJointNo(); + /* 80ACFC24 */ s32 getNeckJointNo(); + /* 80ACFC2C */ bool getBackboneJointNo(); + /* 80ACFC34 */ void checkChangeJoint(int); + /* 80ACFC44 */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0x1108 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Seira_c) == 0x1108); + +class daNpc_Seira_Param_c { +public: + /* 80ACFC54 */ ~daNpc_Seira_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_SEIRA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h b/include/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h index 550718db8e..c7652e76d7 100644 --- a/include/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h +++ b/include/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h @@ -1,6 +1,84 @@ #ifndef D_A_NPC_SEIRA2_H #define D_A_NPC_SEIRA2_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Seira2_c + * @brief Sera (Shopkeeper) + * + * @details + * + */ +class daNpc_Seira2_c : public fopAc_ac_c { +public: + /* 80AD0C0C */ ~daNpc_Seira2_c(); + /* 80AD0D58 */ void create(); + /* 80AD0FF8 */ void CreateHeap(); + /* 80AD1508 */ void Delete(); + /* 80AD153C */ void Execute(); + /* 80AD1610 */ void Draw(); + /* 80AD16A4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AD16C4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AD171C */ void getType(); + /* 80AD179C */ void getFlowNodeNo(); + /* 80AD17B8 */ void getMaxNumItem(); + /* 80AD17C4 */ void checkBottle(); + /* 80AD182C */ bool isDelete(); + /* 80AD1834 */ void reset(); + /* 80AD1968 */ void afterJntAnm(int); + /* 80AD19EC */ void setParam(); + /* 80AD1B38 */ void setAfterTalkMotion(); + /* 80AD1BF8 */ void srchActors(); + /* 80AD1C60 */ void evtTalk(); + /* 80AD1E04 */ void evtCutProc(); + /* 80AD1ED4 */ void action(); + /* 80AD2030 */ void beforeMove(); + /* 80AD20A8 */ void setAttnPos(); + /* 80AD23A8 */ void setCollision(); + /* 80AD2550 */ bool drawDbgInfo(); + /* 80AD2558 */ void drawOtherMdl(); + /* 80AD2630 */ void setBottleAnm(int, int, f32, bool); + /* 80AD2710 */ void afterSetMotionAnm(int, int, f32, int); + /* 80AD2748 */ void selectAction(); + /* 80AD2870 */ void chkAction(int (daNpc_Seira2_c::*)(void*)); + /* 80AD289C */ void setAction(int (daNpc_Seira2_c::*)(void*)); + /* 80AD2944 */ void checkStageIsSeira2sShop(); + /* 80AD29BC */ void wait(void*); + /* 80AD2B68 */ void sit(void*); + /* 80AD2D8C */ void happy(void*); + /* 80AD2F14 */ void worry(void*); + /* 80AD31F0 */ void sad(void*); + /* 80AD3508 */ void lookaround(void*); + /* 80AD3614 */ void smile(void*); + /* 80AD3720 */ void talk(void*); + /* 80AD3890 */ void shop(void*); + /* 80AD47B8 */ daNpc_Seira2_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AD4884 */ s32 getEyeballMaterialNo(); + /* 80AD488C */ s32 getHeadJointNo(); + /* 80AD4894 */ s32 getNeckJointNo(); + /* 80AD489C */ bool getBackboneJointNo(); + /* 80AD48A4 */ void checkChangeJoint(int); + /* 80AD48B4 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0x10f4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Seira2_c) == 0x10f4); + +class daNpc_Seira2_Param_c { +public: + /* 80AD48C4 */ ~daNpc_Seira2_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_SEIRA2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h b/include/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h index b45c21dbfd..f01c347c1c 100644 --- a/include/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h +++ b/include/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h @@ -1,6 +1,66 @@ #ifndef D_A_NPC_SEIREI_H #define D_A_NPC_SEIREI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Seirei_c + * @brief Spirit + * + * @details + * + */ +class daNpc_Seirei_c : public fopAc_ac_c { +public: + /* 80AD572C */ ~daNpc_Seirei_c(); + /* 80AD57C4 */ void create(); + /* 80AD5A7C */ void CreateHeap(); + /* 80AD5BC4 */ void Delete(); + /* 80AD5BF8 */ void Execute(); + /* 80AD5C18 */ void Draw(); + /* 80AD5CC0 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AD5CE0 */ void getType(); + /* 80AD5D2C */ bool isDelete(); + /* 80AD5D34 */ void reset(); + /* 80AD5EEC */ void setParam(); + /* 80AD6048 */ bool checkChangeEvt(); + /* 80AD6050 */ void srchActors(); + /* 80AD6054 */ void evtTalk(); + /* 80AD6154 */ void evtCutProc(); + /* 80AD621C */ void action(); + /* 80AD62A4 */ void beforeMove(); + /* 80AD6330 */ void setAttnPos(); + /* 80AD6464 */ bool drawDbgInfo(); + /* 80AD646C */ void afterSetMotionAnm(int, int, f32, int); + /* 80AD6604 */ void selectAction(); + /* 80AD664C */ void chkAction(int (daNpc_Seirei_c::*)(void*)); + /* 80AD6678 */ void setAction(int (daNpc_Seirei_c::*)(void*)); + /* 80AD6720 */ void ctrlWaitAnm(); + /* 80AD6808 */ void setPrtcls(); + /* 80AD6A38 */ void chkFirstMeeting(); + /* 80AD6ABC */ void cutConversation(int); + /* 80AD6C58 */ void wait(void*); + /* 80AD6D30 */ void talk(void*); + /* 80AD7BF8 */ daNpc_Seirei_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe88 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Seirei_c) == 0xe88); + +class daNpc_Seirei_Param_c { +public: + /* 80AD7C3C */ ~daNpc_Seirei_Param_c(); + + static u8 const m[148]; +}; + #endif /* D_A_NPC_SEIREI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h b/include/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h index 41823e950c..d84b0387d8 100644 --- a/include/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h +++ b/include/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h @@ -1,6 +1,77 @@ #ifndef D_A_NPC_SHAD_H #define D_A_NPC_SHAD_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcShad_c + * @brief Shad + * + * @details + * + */ +class daNpcShad_c : public fopAc_ac_c { +public: + /* 80AD820C */ daNpcShad_c(); + /* 80AD8420 */ ~daNpcShad_c(); + /* 80AD8620 */ void Create(); + /* 80AD8B60 */ void CreateHeap(); + /* 80AD90E0 */ void Delete(); + /* 80AD9114 */ void Execute(); + /* 80AD9138 */ void Draw(); + /* 80AD9280 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80AD944C */ void createHeapCallBack(fopAc_ac_c*); + /* 80AD946C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AD94B8 */ void setExpressionAnm(int, bool); + /* 80AD974C */ void setExpressionBtp(int); + /* 80AD982C */ void setMotionAnm(int, f32); + /* 80AD99B4 */ void reset(); + /* 80AD9C0C */ void setWaitAction(); + /* 80AD9E04 */ void getPathPoint(u8, int, Vec*); + /* 80AD9E90 */ void isSneaking(); + /* 80AD9F00 */ void wait_type0(void*); + /* 80ADA630 */ void setMotion(int, f32, int); + /* 80ADA674 */ void setExpression(int, f32); + /* 80ADA6A0 */ void wait_type1(void*); + /* 80ADB428 */ void wait_type2(void*); + /* 80ADB628 */ void talk(void*); + /* 80ADBEA8 */ void demo(void*); + /* 80ADC3DC */ void leave(void*); + /* 80ADC700 */ void EvCut_Introduction(int); + /* 80ADC800 */ void EvCut_Meeting(int); + /* 80ADCAD8 */ void EvCut_ToChantSpell1(int); + /* 80ADD720 */ void EvCut_ToChantSpell2(int); + /* 80ADE47C */ void EvCut_ToChantSpell2Skip(int); + /* 80ADE5F8 */ void EvCut_DiscoveryCannon(int); + /* 80ADED68 */ void EvCut_DiscoveryCannonSkip(int); + /* 80ADEEE4 */ void EvCut_Disappear(int); + /* 80ADF810 */ void EvCut_DisappearSkip(int); + /* 80ADF8DC */ void EvCut_CallBack(int); + /* 80ADFB70 */ void EvCut_WiretapSponsor(int); + /* 80ADFE74 */ void EvCut_WiretapEntrant(int); + /* 80AE01BC */ void setParam(); + /* 80AE0438 */ void main(); + /* 80AE04D8 */ void playMotion(); + /* 80AE0B58 */ void playExpression(); + /* 80AE0ED0 */ void ctrlBtk(); + /* 80AE0FAC */ void setAttnPos(); + /* 80AE1320 */ void lookat(); + /* 80AE153C */ bool drawDbgInfo(); + + static u8 mEvtSeqList[168]; + +private: + /* 0x568 */ u8 field_0x568[0xe24 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcShad_c) == 0xe24); + +class daNpcShad_Param_c { +public: + /* 80AE1F70 */ ~daNpcShad_Param_c(); + + static u8 const m[112]; +}; + #endif /* D_A_NPC_SHAD_H */ diff --git a/include/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h b/include/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h index 8000911aec..10b0a0d44f 100644 --- a/include/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h +++ b/include/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h @@ -1,6 +1,89 @@ #ifndef D_A_NPC_SHAMAN_H #define D_A_NPC_SHAMAN_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Sha_c + * @brief Fanadi + * + * @details + * + */ +class daNpc_Sha_c : public fopAc_ac_c { +public: + /* 80AE2DCC */ ~daNpc_Sha_c(); + /* 80AE2EEC */ void create(); + /* 80AE31A0 */ void CreateHeap(); + /* 80AE35CC */ void Delete(); + /* 80AE3600 */ void Execute(); + /* 80AE3620 */ void Draw(); + /* 80AE36B4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AE36D4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AE372C */ void getType(); + /* 80AE3764 */ void isDelete(); + /* 80AE3798 */ void reset(); + /* 80AE38F0 */ void afterJntAnm(int); + /* 80AE3974 */ void setParam(); + /* 80AE3A8C */ void checkChangeEvt(); + /* 80AE3B78 */ void setAfterTalkMotion(); + /* 80AE3C24 */ void srchActors(); + /* 80AE3C28 */ void evtTalk(); + /* 80AE3D28 */ void evtCutProc(); + /* 80AE3DF0 */ void action(); + /* 80AE3F80 */ void beforeMove(); + /* 80AE4044 */ void setAttnPos(); + /* 80AE4360 */ void setCollision(); + /* 80AE44B8 */ bool drawDbgInfo(); + /* 80AE44C0 */ void selectAction(); + /* 80AE4508 */ void chkAction(int (daNpc_Sha_c::*)(void*)); + /* 80AE4534 */ void setAction(int (daNpc_Sha_c::*)(void*)); + /* 80AE45DC */ void getSceneChangeNoTableIx(); + /* 80AE48D0 */ void setTempBit(int); + /* 80AE4974 */ void cutPerformAugury(int); + /* 80AE4E24 */ void wait(void*); + /* 80AE50EC */ void talk(void*); + /* 80AE52CC */ void query265(); + /* 80AE52F0 */ void query268(); + /* 80AE5314 */ void query267(); + /* 80AE5338 */ void query078(); + /* 80AE535C */ void query264(); + /* 80AE5380 */ void query266(); + /* 80AE53A4 */ void query542(); + /* 80AE53C8 */ void query461(); + /* 80AE53EC */ void query288(); + /* 80AE5410 */ bool query000(); + /* 80AE5418 */ bool query999(); + /* 80AE69E0 */ daNpc_Sha_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AE6B1C */ bool getEyeballMaterialNo(); + /* 80AE6B24 */ s32 getHeadJointNo(); + /* 80AE6B2C */ s32 getNeckJointNo(); + /* 80AE6B34 */ bool getBackboneJointNo(); + /* 80AE6B3C */ void checkChangeJoint(int); + /* 80AE6B4C */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + static u8 mEvtBitLabels[12]; + static u8 mTmpBitLabels[12]; + static u8 mSceneChangeNoTable[192]; + static u8 mQueries[576]; + +private: + /* 0x568 */ u8 field_0x568[0xfa8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Sha_c) == 0xfa8); + +class daNpc_Sha_Param_c { +public: + /* 80AE6B5C */ ~daNpc_Sha_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_SHAMAN_H */ diff --git a/include/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h b/include/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h index 66fa9de027..9f8006cc97 100644 --- a/include/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h +++ b/include/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h @@ -1,6 +1,56 @@ #ifndef D_A_NPC_SHOE_H #define D_A_NPC_SHOE_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcShoe_c + * @brief Soal + * + * @details + * + */ +class daNpcShoe_c : public fopAc_ac_c { +public: + /* 80AE794C */ daNpcShoe_c(); + /* 80AE7B60 */ ~daNpcShoe_c(); + /* 80AE7D48 */ void Create(); + /* 80AE7FD8 */ void CreateHeap(); + /* 80AE81E8 */ void Delete(); + /* 80AE821C */ void Execute(); + /* 80AE8308 */ void Draw(); + /* 80AE840C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80AE8598 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AE85B8 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AE8604 */ void setMotion(int, f32, int); + /* 80AE864C */ void reset(); + /* 80AE895C */ void setAction(bool (daNpcShoe_c::*)(void*)); + /* 80AE8A04 */ void wait(void*); + /* 80AE8E24 */ void fear(void*); + /* 80AE8ED4 */ void talk(void*); + /* 80AE9094 */ void demo(void*); + /* 80AE92E8 */ void setParam(); + /* 80AE93A0 */ void main(); + /* 80AE9624 */ void setAttnPos(); + /* 80AE9820 */ void lookat(); + /* 80AE9A00 */ void setMotionAnm(int, f32); + /* 80AE9AD0 */ bool drawDbgInfo(); + /* 80AEA340 */ void adjustShapeAngle(); + + static u8 mEvtSeqList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xe1c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcShoe_c) == 0xe1c); + +class daNpcShoe_Param_c { +public: + /* 80AEA344 */ ~daNpcShoe_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_SHOE_H */ diff --git a/include/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h b/include/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h index 4392433244..eb20dc0587 100644 --- a/include/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h +++ b/include/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h @@ -1,6 +1,55 @@ #ifndef D_A_NPC_SHOP0_H #define D_A_NPC_SHOP0_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Shop0_c + * @brief Shop 0? + * + * @details + * + */ +class daNpc_Shop0_c : public fopAc_ac_c { +public: + /* 80AEA7F8 */ ~daNpc_Shop0_c(); + /* 80AEAA10 */ void create(); + /* 80AEAE9C */ void createHeap(); + /* 80AEAF8C */ void destroy(); + /* 80AEAFC0 */ void execute(); + /* 80AEB078 */ void draw(); + /* 80AEB190 */ void getResName(); + /* 80AEB1A0 */ void getParam(); + /* 80AEB1C8 */ void getFlowNodeNum(); + /* 80AEB1D0 */ void isDelete(); + /* 80AEB22C */ void init(); + /* 80AEB32C */ void getTrnsfrmAnmP(int, char**); + /* 80AEB3A8 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); + /* 80AEB45C */ void setCollision(); + /* 80AEB4C8 */ void checkEvent(); + /* 80AEB5E8 */ void orderEvent(); + /* 80AEB634 */ void setMtx(); + /* 80AEB6DC */ void setRoomInf(); + /* 80AEB780 */ void cut_alert(int, int); + /* 80AEB7F0 */ void chkProcess(int (daNpc_Shop0_c::*)(void*)); + /* 80AEB824 */ void setProcess(int (daNpc_Shop0_c::*)(void*), void*, int); + /* 80AEB920 */ void wait(void*); + /* 80AEB9BC */ void talk(void*); + + static u8 const mCylDat[68]; + +private: + /* 0x568 */ u8 field_0x568[0x9ec - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Shop0_c) == 0x9ec); + +class daNpc_Shop0_Param_c { +public: + /* 80AEBB14 */ ~daNpc_Shop0_Param_c(); + + static u8 const mParam[12]; +}; + #endif /* D_A_NPC_SHOP0_H */ diff --git a/include/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h b/include/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h index 09a2143c26..263875e2fd 100644 --- a/include/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h +++ b/include/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h @@ -1,6 +1,26 @@ #ifndef D_A_NPC_SHOP_MARO_H #define D_A_NPC_SHOP_MARO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_shopMaro_c + * @brief Malo (Shopkeeper) + * + * @details + * + */ +class daNpc_shopMaro_c : public fopAc_ac_c { +public: + /* 80AEBEB4 */ void create(); + /* 80AEBF04 */ daNpc_shopMaro_c(); + /* 80AEBF64 */ ~daNpc_shopMaro_c(); + +private: + /* 0x568 */ u8 field_0x568[0xf7c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_shopMaro_c) == 0xf7c); + #endif /* D_A_NPC_SHOP_MARO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h b/include/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h index 7bfc2628e8..f8a1529202 100644 --- a/include/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h +++ b/include/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h @@ -1,6 +1,68 @@ #ifndef D_A_NPC_SOLA_H #define D_A_NPC_SOLA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_solA_c + * @brief Soldier A (Castle Town?) + * + * @details + * + */ +class daNpc_solA_c : public fopAc_ac_c { +public: + /* 80AECBAC */ ~daNpc_solA_c(); + /* 80AECCD0 */ void create(); + /* 80AECF58 */ void CreateHeap(); + /* 80AED0F8 */ void Delete(); + /* 80AED12C */ void Execute(); + /* 80AED14C */ void Draw(); + /* 80AED1E8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AED208 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AED260 */ bool getType(); + /* 80AED268 */ void getFlowNodeNo(); + /* 80AED284 */ void isDelete(); + /* 80AED294 */ void reset(); + /* 80AED3B8 */ void setParam(); + /* 80AED4A4 */ void setAfterTalkMotion(); + /* 80AED504 */ void srchActors(); + /* 80AED508 */ void evtTalk(); + /* 80AED608 */ void evtCutProc(); + /* 80AED6D0 */ void action(); + /* 80AED758 */ void beforeMove(); + /* 80AED7D0 */ void setAttnPos(); + /* 80AED9DC */ void setCollision(); + /* 80AEDABC */ bool drawDbgInfo(); + /* 80AEDAC4 */ void drawOtherMdl(); + /* 80AEDAC8 */ void selectAction(); + /* 80AEDB10 */ void chkAction(int (daNpc_solA_c::*)(void*)); + /* 80AEDB3C */ void setAction(int (daNpc_solA_c::*)(void*)); + /* 80AEDBE4 */ void wait(void*); + /* 80AEDD60 */ void talk(void*); + /* 80AEEF40 */ daNpc_solA_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80AEF07C */ s32 getHeadJointNo(); + /* 80AEF084 */ s32 getNeckJointNo(); + /* 80AEF08C */ bool getBackboneJointNo(); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_solA_c) == 0xfa0); + +class daNpc_solA_Param_c { +public: + /* 80AEF094 */ ~daNpc_solA_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_SOLA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h b/include/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h index 699477debf..2a7c7cb5cb 100644 --- a/include/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h +++ b/include/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h @@ -1,6 +1,67 @@ #ifndef D_A_NPC_SOLDIERA_H #define D_A_NPC_SOLDIERA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_SoldierA_c + * @brief Soldier A (Castle Town?) + * + * @details + * + */ +class daNpc_SoldierA_c : public fopAc_ac_c { +public: + /* 80AEF58C */ daNpc_SoldierA_c(); + /* 80AEF7A0 */ ~daNpc_SoldierA_c(); + /* 80AEF9A0 */ void create(); + /* 80AEFC80 */ void CreateHeap(); + /* 80AEFE4C */ void Delete(); + /* 80AEFE80 */ void Execute(); + /* 80AEFEA0 */ void Draw(); + /* 80AEFF14 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80AF0110 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AF0130 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AF017C */ void setParam(); + /* 80AF02B0 */ void main(); + /* 80AF0428 */ bool ctrlBtk(); + /* 80AF0430 */ void setAttnPos(); + /* 80AF0928 */ void setMotionAnm(int, f32); + /* 80AF0A38 */ void setMotion(int, f32, int); + /* 80AF0A7C */ bool drawDbgInfo(); + /* 80AF0A84 */ void drawOtherMdls(); + /* 80AF0B30 */ void getTypeFromParam(); + /* 80AF0B7C */ void isDelete(); + /* 80AF0BB0 */ void reset(); + /* 80AF0D34 */ void playMotion(); + /* 80AF0F50 */ void chkAction(int (daNpc_SoldierA_c::*)(void*)); + /* 80AF0F7C */ void setAction(int (daNpc_SoldierA_c::*)(void*)); + /* 80AF1024 */ void selectAction(); + /* 80AF10A4 */ void doNormalAction(int); + /* 80AF11B8 */ void doEvent(); + /* 80AF1488 */ void setLookMode(int); + /* 80AF14AC */ void lookat(); + /* 80AF1734 */ void wait(void*); + /* 80AF18B0 */ void talk(void*); + /* 80AF1A48 */ void ECut_talkLake(int); + /* 80AF1B8C */ void ECut_listenLake(int); + /* 80AF1CA4 */ void test(void*); + + static void* mEvtCutNameList[3]; + static u8 mEvtCutList[36]; + +private: + /* 0x568 */ u8 field_0x568[0xe20 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_SoldierA_c) == 0xe20); + +class daNpc_SoldierA_Param_c { +public: + /* 80AF267C */ ~daNpc_SoldierA_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_SOLDIERA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h b/include/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h index 8bbd848eba..dd39699ac3 100644 --- a/include/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h +++ b/include/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h @@ -1,6 +1,66 @@ #ifndef D_A_NPC_SOLDIERB_H #define D_A_NPC_SOLDIERB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_SoldierB_c + * @brief Soldier B (Castle Town?) + * + * @details + * + */ +class daNpc_SoldierB_c : public fopAc_ac_c { +public: + /* 80AF2CAC */ daNpc_SoldierB_c(); + /* 80AF2EC0 */ ~daNpc_SoldierB_c(); + /* 80AF30C0 */ void create(); + /* 80AF33A0 */ void CreateHeap(); + /* 80AF356C */ void Delete(); + /* 80AF35A0 */ void Execute(); + /* 80AF35C0 */ void Draw(); + /* 80AF3634 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80AF3830 */ void createHeapCallBack(fopAc_ac_c*); + /* 80AF3850 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80AF389C */ void setParam(); + /* 80AF39B8 */ void main(); + /* 80AF3B30 */ bool ctrlBtk(); + /* 80AF3B38 */ void setAttnPos(); + /* 80AF4030 */ void setMotionAnm(int, f32); + /* 80AF4130 */ void setMotion(int, f32, int); + /* 80AF4174 */ bool drawDbgInfo(); + /* 80AF417C */ void drawOtherMdls(); + /* 80AF4228 */ void getTypeFromParam(); + /* 80AF4248 */ void isDelete(); + /* 80AF426C */ void reset(); + /* 80AF43E4 */ void playMotion(); + /* 80AF4508 */ void chkAction(int (daNpc_SoldierB_c::*)(void*)); + /* 80AF4534 */ void setAction(int (daNpc_SoldierB_c::*)(void*)); + /* 80AF45DC */ void selectAction(); + /* 80AF465C */ void doNormalAction(int); + /* 80AF4770 */ void doEvent(); + /* 80AF49E4 */ void setLookMode(int); + /* 80AF4A08 */ void lookat(); + /* 80AF4CFC */ void wait(void*); + /* 80AF4DBC */ void talk(void*); + /* 80AF4F54 */ void ECut_listenLake(int); + /* 80AF50AC */ void test(void*); + + static void* mEvtCutNameList[2]; + static u8 mEvtCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe20 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_SoldierB_c) == 0xe20); + +class daNpc_SoldierB_Param_c { +public: + /* 80AF5A68 */ ~daNpc_SoldierB_Param_c(); + + static u8 const m[108]; +}; + #endif /* D_A_NPC_SOLDIERB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_sq/d_a_npc_sq.h b/include/rel/d/a/npc/d_a_npc_sq/d_a_npc_sq.h index a2a09a3f1b..3a262b871e 100644 --- a/include/rel/d/a/npc/d_a_npc_sq/d_a_npc_sq.h +++ b/include/rel/d/a/npc/d_a_npc_sq/d_a_npc_sq.h @@ -8,6 +8,14 @@ #include "d/msg/d_msg_flow.h" #include "f_op/f_op_actor.h" +/** + * @ingroup actors-npcs + * @class npc_sq_class + * @brief Squirrel (Talking, Ordon Village) + * + * @details + * + */ class npc_sq_class : public fopEn_enemy_c { public: enum Action { diff --git a/include/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h b/include/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h index e7dff7ac0b..f7cc42568e 100644 --- a/include/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h +++ b/include/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h @@ -1,6 +1,100 @@ #ifndef D_A_NPC_TARO_H #define D_A_NPC_TARO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Taro_c + * @brief Talo + * + * @details + * + */ +class daNpc_Taro_c : public fopAc_ac_c { +public: + /* 80565E8C */ ~daNpc_Taro_c(); + /* 8056604C */ void create(); + /* 80566340 */ void CreateHeap(); + /* 80566910 */ void Delete(); + /* 80566944 */ void Execute(); + /* 80566964 */ void Draw(); + /* 805669F8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80566A18 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80566A70 */ void srchArrow(void*, void*); + /* 80566B0C */ void srchNpc(void*, void*); + /* 80566BD4 */ void getArrowP(); + /* 80566CCC */ void getType(); + /* 80566D7C */ void isDelete(); + /* 80566FA4 */ void reset(); + /* 805671F4 */ void afterJntAnm(int); + /* 80567280 */ void setParam(); + /* 8056747C */ void checkChangeEvt(); + /* 8056757C */ void evtEndProc(); + /* 805675B8 */ void setAfterTalkMotion(); + /* 8056767C */ void srchActors(); + /* 805679F0 */ void evtTalk(); + /* 80567A90 */ void evtCutProc(); + /* 80567C90 */ void action(); + /* 80567EB4 */ void beforeMove(); + /* 80567F78 */ void setAttnPos(); + /* 805682E8 */ void setCollision(); + /* 80568590 */ bool drawDbgInfo(); + /* 80568598 */ void drawOtherMdl(); + /* 805686A0 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); + /* 80568738 */ void selectAction(); + /* 80568828 */ void chkAction(int (daNpc_Taro_c::*)(void*)); + /* 80568854 */ void setAction(int (daNpc_Taro_c::*)(void*)); + /* 805688FC */ void setSwingVoice(); + /* 80568A2C */ void cutConversationAboutPachinko(int); + /* 80568C58 */ void cutConversationAboutWoodSwd(int); + /* 80568E00 */ void cutSwdTutorial(int); + /* 80569880 */ void cutHail(int); + /* 80569AFC */ void cutFindMonkey(int); + /* 8056A120 */ void cutHelpMe(int); + /* 8056A460 */ void cutAppearanceMoi(int); + /* 8056B000 */ void cutGiveMeWoodSwd(int); + /* 8056B68C */ void cutGetWoodSwd(int); + /* 8056C14C */ void cutConversationWithMaro(int); + /* 8056C5B4 */ void cutCacaricoConversation(int); + /* 8056C8CC */ void cutArrowTutorial(int); + /* 8056D0B8 */ void cutCaution(int); + /* 8056D310 */ void cutTagPush1(int); + /* 8056D5C0 */ void cutNotGonnaLet(int); + /* 8056DFAC */ void cutTagPush4(int); + /* 8056E270 */ void wait(void*); + /* 8056F2A8 */ void swdTutorial(void*); + /* 8056F418 */ void talk_withMaro(void*); + /* 8056F7E8 */ void practice(void*); + /* 8056FC20 */ void nurse(void*); + /* 8056FDCC */ void talk(void*); + /* 8057148C */ daNpc_Taro_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 805715AC */ s32 getEyeballMaterialNo(); + /* 805715B4 */ s32 getHeadJointNo(); + /* 805715BC */ s32 getNeckJointNo(); + /* 805715C4 */ bool getBackboneJointNo(); + /* 805715CC */ void checkChangeJoint(int); + /* 805715DC */ void checkRemoveJoint(int); + /* 805715EC */ s32 getFootLJointNo(); + /* 805715F4 */ s32 getFootRJointNo(); + + static void* mCutNameList[17]; + static u8 mCutList[204]; + +private: + /* 0x568 */ u8 field_0x568[0x11ac - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Taro_c) == 0x11ac); + +class daNpc_Taro_Param_c { +public: + /* 805715FC */ ~daNpc_Taro_Param_c(); + + static u8 const m[144]; +}; + #endif /* D_A_NPC_TARO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h b/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h index 5bdb9357c1..bf24596a53 100644 --- a/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h +++ b/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h @@ -3,6 +3,14 @@ #include "d/a/d_a_npc.h" +/** + * @ingroup actors-npcs + * @class daNpcThe_c + * @brief Telma + * + * @details + * + */ class daNpcThe_c : public daNpcF_c { public: typedef BOOL (daNpcThe_c::*ActionFn)(void*); diff --git a/include/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h b/include/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h index 2512de30ce..fb047a62d7 100644 --- a/include/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h +++ b/include/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h @@ -1,96 +1,18 @@ #ifndef D_A_NPC_THEB_H #define D_A_NPC_THEB_H -#include "f_op/f_op_actor_mng.h" -// #include "d/com/d_com_inf_game.h" -// #include "d/a/d_a_npc.h" +#include "d/a/d_a_npc.h" -struct daNpcTheB_Param_c { - /* 80B00D00 */ ~daNpcTheB_Param_c(); - - static u8 const m[108]; -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80152F40 */ void playAllAnm(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80154278 */ void getDistTableIdx(int, int); - /* 801542A0 */ void getEvtAreaTagP(int, int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 80B00600 */ ~daNpcF_c(); - /* 80B0084C */ daNpcF_c(); - /* 80B00BC0 */ void adjustShapeAngle(); - /* 80B00BC4 */ void setCollisions(); - /* 80B00BC8 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80B004B0 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B0042C */ ~daNpcF_ActorMngr_c(); - /* 80B00474 */ daNpcF_ActorMngr_c(); -}; - -struct J3DTexNoAnm { - /* 80AFD0E8 */ ~J3DTexNoAnm(); - /* 80AFD130 */ J3DTexNoAnm(); - /* 80B003FC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AFD154 */ ~J3DTexMtxAnm(); - /* 80AFD190 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AFD040 */ ~J3DTevKColorAnm(); - /* 80AFD07C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AFD094 */ ~J3DTevColorAnm(); - /* 80AFD0D0 */ J3DTevColorAnm(); -}; - -struct J3DMatColorAnm { - /* 80AFD1A8 */ ~J3DMatColorAnm(); - /* 80AFD1E4 */ J3DMatColorAnm(); -}; - -struct daNpcTheB_c { +/** + * @ingroup actors-npcs + * @class daNpcTheB_c + * @brief Telma B + * + * @details + * + */ +class daNpcTheB_c : public fopAc_ac_c { +public: /* 80AFC76C */ daNpcTheB_c(); /* 80AFC980 */ ~daNpcTheB_c(); /* 80AFCB44 */ void create(); @@ -130,6 +52,17 @@ struct daNpcTheB_c { /* 80B00204 */ void EvCut_CoachGuardGameOver(int); static u8 mEvtSeqList[72]; + +private: + /* 0x568 */ u8 field_0x568[0xe14 - 0x568]; +}; + +STATIC_ASSERT(sizeof(daNpcTheB_c) == 0xe14); + +struct daNpcTheB_Param_c { + /* 80B00D00 */ ~daNpcTheB_Param_c(); + + static u8 const m[108]; }; #endif /* D_A_NPC_THEB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h b/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h index 7c864ae046..9d426e061e 100644 --- a/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h +++ b/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h @@ -1,7 +1,7 @@ #ifndef D_A_NPC_TK_H #define D_A_NPC_TK_H -#include "f_op/f_op_actor_mng.h" +#include "d/a/d_a_npc.h" #include "d/d_path.h" struct cXyz; @@ -9,6 +9,14 @@ class fopAc_ac_c; class J3DJoint; class J3DModel; +/** + * @ingroup actors-npcs + * @class daNPC_TK_c + * @brief Hawk + * + * @details + * + */ class daNPC_TK_c : public fopAc_ac_c { public: /* 80B01498 */ void setBck(int, u8, f32, f32); @@ -71,10 +79,21 @@ public: } } +private: /* 0x568 */ u8 field_0x568[0x6BE - 0x568]; /* 0x6BE */ u16 mFlags; /* 0x6C0 */ u8 field_0x6c0[0x6C8 - 0x6C0]; /* 0x6C8 */ dPath* field_0x6c8; + /* 0x6CC */ u8 field_0x6cc[0xB44 - 0x6CC]; }; +STATIC_ASSERT(sizeof(daNPC_TK_c) == 0xB44); + +class daNPC_TK_HIO_c { +public: + daNPC_TK_HIO_c(); + ~daNPC_TK_HIO_c(); +}; + + #endif /* D_A_NPC_TK_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h b/include/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h index 89195fa0f9..e214d6983d 100644 --- a/include/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h +++ b/include/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h @@ -1,6 +1,68 @@ #ifndef D_A_NPC_TKC_H #define D_A_NPC_TKC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcTkc_c + * @brief Ooccoo Jr. + * + * @details + * + */ +class daNpcTkc_c : public fopAc_ac_c { +public: + /* 80B0C7CC */ daNpcTkc_c(); + /* 80B0C964 */ ~daNpcTkc_c(); + /* 80B0CA9C */ void Create(); + /* 80B0CD7C */ void CreateHeap(); + /* 80B0D180 */ void Delete(); + /* 80B0D1B4 */ void Execute(); + /* 80B0D1EC */ void Draw(); + /* 80B0D25C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80B0D2CC */ void createHeapCallBack(fopAc_ac_c*); + /* 80B0D2EC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B0D338 */ void setActionWait(); + /* 80B0D37C */ void setActionFollow(); + /* 80B0D3C0 */ void setMtx(); + /* 80B0D458 */ void setExpressionAnm(int, bool); + /* 80B0D5A4 */ void setExpressionBtp(int); + /* 80B0D678 */ void reset(); + /* 80B0DA94 */ void setMotionAnm(int, f32); + /* 80B0DBC8 */ void setAction(void (daNpcTkc_c::*)()); + /* 80B0DC68 */ void wait(); + /* 80B0DEF8 */ void calcFly(); + /* 80B0E124 */ void searchPlayer(); + /* 80B0E304 */ void follow(); + /* 80B0E784 */ void appear(); + /* 80B0E8EC */ void normalTalk(); + /* 80B0EB10 */ void setMotion(int, f32, int); + /* 80B0EB54 */ void setExpression(int, f32); + /* 80B0EB80 */ void warpTalk(); + /* 80B0EEE8 */ void demo(); + /* 80B0F00C */ void EvCut_TksSecretChild(int); + /* 80B0F1F8 */ void EvCut_TksWarpExit(int); + /* 80B0F5D4 */ void EvCut_TksWarpBack(int); + /* 80B0FA5C */ void setParam(); + /* 80B0FAD0 */ void main(); + /* 80B0FD18 */ void ctrlBtk(); + /* 80B0FDE4 */ void setAttnPos(); + /* 80B0FFD4 */ bool drawDbgInfo(); + + static u8 mEvtSeqList[48]; + +private: + /* 0x568 */ u8 field_0x568[0xd7c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcTkc_c) == 0xd7c); + +class daNpcTkc_Param_c { +public: + /* 80B10848 */ ~daNpcTkc_Param_c(); + + static u8 const m[164]; +}; + #endif /* D_A_NPC_TKC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h b/include/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h index d52c65f828..4d1af07e83 100644 --- a/include/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h +++ b/include/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h @@ -1,6 +1,70 @@ #ifndef D_A_NPC_TKJ_H #define D_A_NPC_TKJ_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcTkj_c + * @brief Oocca + * + * @details + * + */ +class daNpcTkj_c : public fopAc_ac_c { +public: + /* 8057372C */ ~daNpcTkj_c(); + /* 80573850 */ void create(); + /* 80573B18 */ void CreateHeap(); + /* 80573F68 */ void Delete(); + /* 80573F9C */ void Execute(); + /* 80573FBC */ void Draw(); + /* 80574058 */ void createHeapCallBack(fopAc_ac_c*); + /* 80574078 */ void ctrlJointCallBack(J3DJoint*, int); + /* 805740D0 */ void getType(); + /* 80574108 */ void getFlowNodeNo(); + /* 80574124 */ void isDelete(); + /* 8057413C */ void reset(); + /* 80574268 */ void setAfterTalkMotion(); + /* 805742C8 */ void srchActors(); + /* 805742D4 */ void evtTalk(); + /* 805743B8 */ void evtCutProc(); + /* 8057449C */ void action(); + /* 80574524 */ void setAttnPos(); + /* 80574770 */ void setCollision(); + /* 80574850 */ bool drawDbgInfo(); + /* 80574858 */ void selectAction(); + /* 805748A8 */ void chkAction(int (daNpcTkj_c::*)(void*)); + /* 805748D4 */ void setAction(int (daNpcTkj_c::*)(void*)); + /* 8057497C */ void wait(void*); + /* 80574B30 */ void talk(void*); + /* 80574D28 */ void cutLv7Start(int); + /* 80575280 */ void setParam(); + /* 8057538C */ void beforeMove(); + /* 805763B0 */ daNpcTkj_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 805764EC */ s32 getEyeballMaterialNo(); + /* 805764F4 */ s32 getHeadJointNo(); + /* 805764FC */ s32 getNeckJointNo(); + /* 80576504 */ s32 getBackboneJointNo(); + /* 8057650C */ void checkChangeJoint(int); + /* 8057651C */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xfa4 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcTkj_c) == 0xfa4); + +class daNpc_Tkj_Param_c { +public: + /* 8057652C */ ~daNpc_Tkj_Param_c(); + + static u8 const m[140]; +}; #endif /* D_A_NPC_TKJ_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h b/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h index 6c2427e85d..f08ce6974a 100644 --- a/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h +++ b/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h @@ -1,5 +1,27 @@ #ifndef D_A_NPC_TKJ2_H #define D_A_NPC_TKJ2_H +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_tkj2_class + * @brief Oocca 2 + * + * @details + * + */ +class npc_tkj2_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0xaa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_tkj2_class) == 0xaa0); + +class daNpc_Tkj2_HIO_c { +public: + /* 80B10DEC */ daNpc_Tkj2_HIO_c(); + /* 80B1421C */ ~daNpc_Tkj2_HIO_c(); +}; + #endif /* D_A_NPC_TKJ2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h b/include/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h index a59b5c874a..b496760f94 100644 --- a/include/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h +++ b/include/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h @@ -1,6 +1,75 @@ #ifndef D_A_NPC_TKS_H #define D_A_NPC_TKS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpcTks_c + * @brief Ooccoo + * + * @details + * + */ +class daNpcTks_c : public fopAc_ac_c { +public: + /* 80B1462C */ daNpcTks_c(); + /* 80B14844 */ ~daNpcTks_c(); + /* 80B14AF8 */ void Create(); + /* 80B14ED0 */ void CreateHeap(); + /* 80B153D8 */ void Delete(); + /* 80B1540C */ void Execute(); + /* 80B15430 */ void Draw(); + /* 80B1548C */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80B15650 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B15670 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B156BC */ void setMtx(); + /* 80B157C0 */ void setExpressionAnm(int, bool); + /* 80B1590C */ void setExpressionBtp(int); + /* 80B159E0 */ void setMotion(int, f32, int); + /* 80B15A24 */ void reset(); + /* 80B160A8 */ void setAction(void (daNpcTks_c::*)()); + /* 80B16148 */ void wait(); + /* 80B16344 */ void setMotionAnm(int, f32); + /* 80B16634 */ void waitNude(); + /* 80B1682C */ void waitLv6(); + /* 80B16B74 */ void talk(); + /* 80B16FDC */ void setExpression(int, f32); + /* 80B17008 */ void hide(); + /* 80B17420 */ void shake(); + /* 80B175F4 */ void showUp(); + /* 80B17734 */ void showUpWait(); + /* 80B17B70 */ void lookAroundA(); + /* 80B17D44 */ void lookAroundB(); + /* 80B17F18 */ void in(); + /* 80B18070 */ void damage(); + /* 80B181EC */ void broken(); + /* 80B183E8 */ void demo_appear(); + /* 80B18D44 */ void demo_scannon(); + /* 80B1926C */ void demo_Lv6Gate(); + /* 80B1946C */ void demo_farewell(); + /* 80B19DAC */ void demo_warpBack(); + /* 80B1A30C */ void demo_walkBack(); + /* 80B1A888 */ void demo_Lv7Start(); + /* 80B1B6A0 */ void demo_Lv3PickUp(); + /* 80B1BD64 */ void demo_Lv6PickUp(); + /* 80B1C480 */ void setParam(); + /* 80B1C4F8 */ void main(); + /* 80B1CB54 */ void ctrlBtk(); + /* 80B1CC28 */ void setAttnPos(); + /* 80B1CFD0 */ void lookat(); + /* 80B1D1FC */ bool drawDbgInfo(); + /* 80B1D204 */ void drawOtherMdls(); +private: + /* 0x568 */ u8 field_0x568[0x138c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpcTks_c) == 0x138c); + +class daNpcTks_Param_c { +public: + /* 80B1DCEC */ ~daNpcTks_Param_c(); + + static u8 const m[152]; +}; #endif /* D_A_NPC_TKS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h b/include/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h index e2a8497fa0..308248d386 100644 --- a/include/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h +++ b/include/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h @@ -2,5 +2,87 @@ #define D_A_NPC_TOBY_H #include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Toby_c + * @brief Fyer + * + * @details + * + */ +class daNpc_Toby_c : public fopAc_ac_c { +public: + /* 80B1E64C */ ~daNpc_Toby_c(); + /* 80B1E798 */ void create(); + /* 80B1EA60 */ void CreateHeap(); + /* 80B1EF28 */ void Delete(); + /* 80B1EF5C */ void Execute(); + /* 80B1EF7C */ void Draw(); + /* 80B1F010 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B1F030 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B1F088 */ void srchToby(void*, void*); + /* 80B1F124 */ void getOtherTobyP(int); + /* 80B1F200 */ void getType(); + /* 80B1F274 */ void isDelete(); + /* 80B1F384 */ void reset(); + /* 80B1F5AC */ void afterJntAnm(int); + /* 80B1F638 */ void setParam(); + /* 80B1F784 */ void checkChangeEvt(); + /* 80B1F950 */ void setAfterTalkMotion(); + /* 80B1FA08 */ void srchActors(); + /* 80B1FB34 */ void evtTalk(); + /* 80B1FBD4 */ void evtCutProc(); + /* 80B1FC9C */ void action(); + /* 80B1FE68 */ void beforeMove(); + /* 80B1FF2C */ void setAttnPos(); + /* 80B20278 */ void setCollision(); + /* 80B2042C */ bool drawDbgInfo(); + /* 80B20434 */ void drawOtherMdl(); + /* 80B2050C */ void afterSetFaceMotionAnm(int, int, f32, int); + /* 80B20568 */ void afterSetMotionAnm(int, int, f32, int); + /* 80B205F4 */ void selectAction(); + /* 80B20710 */ void chkAction(int (daNpc_Toby_c::*)(void*)); + /* 80B2073C */ void setAction(int (daNpc_Toby_c::*)(void*)); + /* 80B207E4 */ void cutTobyHouseFire(int); + /* 80B20AB0 */ void cutTalkToOneself(int); + /* 80B20FC0 */ void cutRepairSCannon(int); + /* 80B215B4 */ void cutSCannon(int); + /* 80B219F4 */ void cutConversationAboutSCannon(int); + /* 80B22434 */ void cutConversationAboutZra(int); + /* 80B22614 */ void chkAttnZra(); + /* 80B226B0 */ void wait(void*); + /* 80B22D98 */ void walk(void*); + /* 80B22FAC */ void play(void*); + /* 80B23344 */ void talk(void*); + /* 80B24840 */ daNpc_Toby_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B24920 */ s32 getEyeballMaterialNo(); + /* 80B24928 */ s32 getHeadJointNo(); + /* 80B24930 */ s32 getNeckJointNo(); + /* 80B24938 */ bool getBackboneJointNo(); + /* 80B24940 */ void checkChangeJoint(int); + /* 80B24950 */ void checkRemoveJoint(int); + /* 80B24960 */ s32 getFootLJointNo(); + /* 80B24968 */ s32 getFootRJointNo(); + /* 80B24970 */ bool chkXYItems(); + + static void* mCutNameList[7]; + static u8 mCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0x1008 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Toby_c) == 0x1008); + +class daNpc_Toby_Param_c { +public: + /* 80B24978 */ ~daNpc_Toby_Param_c(); + + static u8 const m[156]; +}; #endif /* D_A_NPC_TOBY_H */ diff --git a/include/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h b/include/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h index 1fba24be24..95a7b9d5f5 100644 --- a/include/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h +++ b/include/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h @@ -4,6 +4,14 @@ #include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_actor.h" +/** + * @ingroup actors-npcs + * @class npc_tr_class + * @brief Trout + * + * @details + * + */ class npc_tr_class : public fopAc_ac_c { public: /* 0x568 */ u8 field_0x568[0x5AC - 0x568]; diff --git a/include/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h b/include/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h index 44bbf3d393..bded86a9cb 100644 --- a/include/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h +++ b/include/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h @@ -1,6 +1,89 @@ #ifndef D_A_NPC_URI_H #define D_A_NPC_URI_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Uri_c + * @brief Uli + * + * @details + * + */ +class daNpc_Uri_c : public fopAc_ac_c { +public: + /* 80B267AC */ ~daNpc_Uri_c(); + /* 80B268F8 */ void create(); + /* 80B26BE4 */ void CreateHeap(); + /* 80B2708C */ void Delete(); + /* 80B270C0 */ void Execute(); + /* 80B270E0 */ void Draw(); + /* 80B27174 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B27194 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B271EC */ void getType(); + /* 80B27260 */ void isDelete(); + /* 80B272F0 */ void reset(); + /* 80B27750 */ void afterJntAnm(int); + /* 80B27820 */ void setParam(); + /* 80B27994 */ void checkChangeEvt(); + /* 80B27B3C */ void setAfterTalkMotion(); + /* 80B27BF0 */ void srchActors(); + /* 80B27C8C */ void evtTalk(); + /* 80B27D2C */ void evtCutProc(); + /* 80B27DF4 */ void action(); + /* 80B27F14 */ void beforeMove(); + /* 80B27FD8 */ void setAttnPos(); + /* 80B28318 */ void setCollision(); + /* 80B284D4 */ bool drawDbgInfo(); + /* 80B284DC */ void drawOtherMdl(); + /* 80B285B4 */ void afterSetMotionAnm(int, int, f32, int); + /* 80B285EC */ void changeBck(int*, int*); + /* 80B28618 */ void changeBtp(int*, int*); + /* 80B28644 */ void selectAction(); + /* 80B28794 */ void chkAction(int (daNpc_Uri_c::*)(void*)); + /* 80B287C0 */ void setAction(int (daNpc_Uri_c::*)(void*)); + /* 80B28868 */ void chkPlayerCarryBasket(); + /* 80B288DC */ void chkPlayerGetWoodShield(); + /* 80B28910 */ void getTutorialCond(cXyz); + /* 80B28FB8 */ void cutConversation(int); + /* 80B29198 */ void cutStartCarryTutorial(int); + /* 80B293C0 */ void cutEndCarryTutorial(int); + /* 80B296B8 */ void cutConversationWithMoi(int); + /* 80B2985C */ void cutFindWolf(int); + /* 80B29BA4 */ void cutMeetingAgain(int); + /* 80B29EA0 */ void krun(void*); + /* 80B2A1B4 */ void wait(void*); + /* 80B2AB60 */ void walk(void*); + /* 80B2B24C */ void sitWait(void*); + /* 80B2B7C0 */ void talk(void*); + /* 80B2CC64 */ daNpc_Uri_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B2CD44 */ s32 getEyeballMaterialNo(); + /* 80B2CD4C */ s32 getHeadJointNo(); + /* 80B2CD54 */ s32 getNeckJointNo(); + /* 80B2CD5C */ bool getBackboneJointNo(); + /* 80B2CD64 */ void checkChangeJoint(int); + /* 80B2CD74 */ void checkRemoveJoint(int); + /* 80B2CD84 */ s32 getFootLJointNo(); + /* 80B2CD8C */ s32 getFootRJointNo(); + + static void* mCutNameList[7]; + static u8 mCutList[84]; + +private: + /* 0x568 */ u8 field_0x568[0x1018 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Uri_c) == 0x1018); + +class daNpc_Uri_Param_c { +public: + /* 80B2CD94 */ ~daNpc_Uri_Param_c(); + + static u8 const m[172]; +}; + #endif /* D_A_NPC_URI_H */ diff --git a/include/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h b/include/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h index 890f188573..45a6209ecc 100644 --- a/include/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h +++ b/include/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h @@ -1,6 +1,21 @@ #ifndef D_A_NPC_WORM_H #define D_A_NPC_WORM_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class npc_worm_class + * @brief Worm + * + * @details + * + */ +class npc_worm_class : public fopAc_ac_c { +private: + /* 0x568 */ u8 field_0x568[0x5ec - 0x568]; +}; +STATIC_ASSERT(sizeof(npc_worm_class) == 0x5ec); + #endif /* D_A_NPC_WORM_H */ diff --git a/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h b/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h index 27d58747e1..ff3cc87041 100644 --- a/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h +++ b/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h @@ -3,7 +3,15 @@ #include "d/a/d_a_npc.h" -class daNpcWrestler_c : public daNpcF_c { +/** + * @ingroup actors-npcs + * @class daNpcWrestler_c + * @brief Goron (Fat) + * + * @details + * + */ +class daNpcWrestler_c : public fopAc_ac_c { public: /* 80B2F28C */ daNpcWrestler_c(); /* 80B2F688 */ void Create(); @@ -64,19 +72,19 @@ public: /* 80B3FCE8 */ void playMotion(); /* 80B40B3C */ void lookat(); - /* 80B2F4A0 */ virtual ~daNpcWrestler_c(); - /* 80B3EAE4 */ virtual void setParam(); - /* 80B3EB94 */ virtual BOOL main(); - /* 80B404FC */ virtual BOOL ctrlBtk(); - /* 80B4166C */ virtual void adjustShapeAngle(); - /* 80B405E8 */ virtual void setAttnPos(); - /* 80B3023C */ virtual bool setExpressionAnm(int, bool); - /* 80B30654 */ virtual bool setExpressionBtp(int); - /* 80B316C8 */ virtual void setExpression(int, f32); - /* 80B3074C */ virtual void setMotionAnm(int, f32); - /* 80B31680 */ virtual void setMotion(int, f32, int); - /* 80B40D1C */ virtual BOOL drawDbgInfo(); - /* 80B40D24 */ virtual void drawOtherMdls(); + /* 80B2F4A0 */ ~daNpcWrestler_c(); + /* 80B3EAE4 */ void setParam(); + /* 80B3EB94 */ BOOL main(); + /* 80B404FC */ BOOL ctrlBtk(); + /* 80B4166C */ void adjustShapeAngle(); + /* 80B405E8 */ void setAttnPos(); + /* 80B3023C */ bool setExpressionAnm(int, bool); + /* 80B30654 */ bool setExpressionBtp(int); + /* 80B316C8 */ void setExpression(int, f32); + /* 80B3074C */ void setMotionAnm(int, f32); + /* 80B31680 */ void setMotion(int, f32, int); + /* 80B40D1C */ BOOL drawDbgInfo(); + /* 80B40D24 */ void drawOtherMdls(); int getWrestlerAction() { return mWrestlerAction; } u8 getType() { return subtype & 0x7F; } @@ -84,8 +92,19 @@ public: static u8 mEvtSeqList[84]; +private: /* 0xB48 */ u8 field_0xb48[0xE74 - 0xB48]; /* 0xE74 */ int mWrestlerAction; + /* 0xE78 */ u8 field_0xe78[0xEA0 - 0xE78]; +}; +// STATIC_ASSERT(sizeof(daNpcWrestler_c) == 0xea0); + +class daNpcWrestler_Param_c { +public: + /* 80B41670 */ ~daNpcWrestler_Param_c(); + + static u8 const m[404]; }; + #endif /* D_A_NPC_WRESTLER_H */ diff --git a/include/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h b/include/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h index bb2b613296..9400945fd0 100644 --- a/include/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h +++ b/include/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_YAMID_H #define D_A_NPC_YAMID_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_yamiD_c + * @brief Twili (Fat) + * + * @details + * + */ +class daNpc_yamiD_c : public fopAc_ac_c { +public: + /* 80B42F4C */ ~daNpc_yamiD_c(); + /* 80B43084 */ void create(); + /* 80B43338 */ void CreateHeap(); + /* 80B43788 */ void Delete(); + /* 80B437BC */ void Execute(); + /* 80B437DC */ void Draw(); + /* 80B43884 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B438A4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B438FC */ void getType(); + /* 80B43934 */ void getFlowNodeNo(); + /* 80B43998 */ void isDelete(); + /* 80B43A20 */ void reset(); + /* 80B43C34 */ void afterJntAnm(int); + /* 80B43CC0 */ void setParam(); + /* 80B43DBC */ void setAfterTalkMotion(); + /* 80B43E1C */ void srchActors(); + /* 80B43E28 */ void evtTalk(); + /* 80B43F0C */ void evtCutProc(); + /* 80B43FD4 */ void action(); + /* 80B440C0 */ void beforeMove(); + /* 80B44138 */ void setAttnPos(); + /* 80B44364 */ void setCollision(); + /* 80B44498 */ bool drawDbgInfo(); + /* 80B444A0 */ void drawGhost(); + /* 80B4450C */ void selectAction(); + /* 80B44554 */ void chkAction(int (daNpc_yamiD_c::*)(void*)); + /* 80B44580 */ void setAction(int (daNpc_yamiD_c::*)(void*)); + /* 80B44628 */ void wait(void*); + /* 80B44900 */ void talk(void*); + /* 80B44AF8 */ void cutStopper(int); + /* 80B44B8C */ void _cutStopper_Init(int const&); + /* 80B44BD4 */ void _cutStopper_Main(int const&); + /* 80B45E74 */ daNpc_yamiD_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B45F34 */ bool getEyeballMaterialNo(); + /* 80B45F3C */ s32 getHeadJointNo(); + /* 80B45F44 */ s32 getNeckJointNo(); + /* 80B45F4C */ bool getBackboneJointNo(); + /* 80B45F54 */ void checkChangeJoint(int); + /* 80B45F64 */ void checkRemoveJoint(int); + /* 80B45F74 */ void evtEndProc(); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_yamiD_c) == 0xfcc); + +class daNpc_yamiD_Param_c { +public: + /* 80B45FE0 */ ~daNpc_yamiD_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_YAMID_H */ diff --git a/include/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h b/include/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h index 5b1384964a..0f2f1473e6 100644 --- a/include/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h +++ b/include/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_YAMIS_H #define D_A_NPC_YAMIS_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_yamiS_c + * @brief Twili (Short) + * + * @details + * + */ +class daNpc_yamiS_c : public fopAc_ac_c { +public: + /* 80B4656C */ ~daNpc_yamiS_c(); + /* 80B466A4 */ void create(); + /* 80B46958 */ void CreateHeap(); + /* 80B46DA8 */ void Delete(); + /* 80B46DDC */ void Execute(); + /* 80B46DFC */ void Draw(); + /* 80B46EA4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B46EC4 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B46F1C */ void getType(); + /* 80B46F54 */ void getFlowNodeNo(); + /* 80B46FB8 */ void isDelete(); + /* 80B47040 */ void reset(); + /* 80B47254 */ void afterJntAnm(int); + /* 80B472E0 */ void setParam(); + /* 80B473DC */ void setAfterTalkMotion(); + /* 80B4743C */ void srchActors(); + /* 80B47440 */ void evtTalk(); + /* 80B47524 */ void evtCutProc(); + /* 80B475EC */ void action(); + /* 80B476D8 */ void beforeMove(); + /* 80B47750 */ void setAttnPos(); + /* 80B4797C */ void setCollision(); + /* 80B47AE8 */ bool drawDbgInfo(); + /* 80B47AF0 */ void drawGhost(); + /* 80B47B5C */ void selectAction(); + /* 80B47BA4 */ void chkAction(int (daNpc_yamiS_c::*)(void*)); + /* 80B47BD0 */ void setAction(int (daNpc_yamiS_c::*)(void*)); + /* 80B47C78 */ void wait(void*); + /* 80B47F50 */ void talk(void*); + /* 80B4815C */ void cutStopper(int); + /* 80B481F0 */ void _cutStopper_Init(int const&); + /* 80B48238 */ void _cutStopper_Main(int const&); + /* 80B494D8 */ daNpc_yamiS_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B49598 */ bool getEyeballMaterialNo(); + /* 80B495A0 */ s32 getHeadJointNo(); + /* 80B495A8 */ s32 getNeckJointNo(); + /* 80B495B0 */ bool getBackboneJointNo(); + /* 80B495B8 */ void checkChangeJoint(int); + /* 80B495C8 */ void checkRemoveJoint(int); + /* 80B495D8 */ void evtEndProc(); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_yamiS_c) == 0xfcc); + +class daNpc_yamiS_Param_c { +public: + /* 80B49644 */ ~daNpc_yamiS_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_YAMIS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h b/include/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h index 56c11d7429..bce34f4660 100644 --- a/include/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h +++ b/include/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h @@ -1,6 +1,78 @@ #ifndef D_A_NPC_YAMIT_H #define D_A_NPC_YAMIT_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" +#include "rel/d/a/tag/d_a_tag_yami/d_a_tag_yami.h" + +/** + * @ingroup actors-npcs + * @class daNpc_yamiT_c + * @brief Twili (Tall) + * + * @details + * + */ +class daNpc_yamiT_c : public fopAc_ac_c { +public: + /* 80B49BEC */ ~daNpc_yamiT_c(); + /* 80B49D24 */ void create(); + /* 80B49FD8 */ void CreateHeap(); + /* 80B4A428 */ void Delete(); + /* 80B4A45C */ void Execute(); + /* 80B4A47C */ void _search_Tag(void*, void*); + /* 80B4A4E0 */ void Draw(); + /* 80B4A588 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B4A5A8 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B4A600 */ void getType(); + /* 80B4A638 */ void getFlowNodeNo(); + /* 80B4A69C */ void isDelete(); + /* 80B4A724 */ void reset(); + /* 80B4A914 */ void afterJntAnm(int); + /* 80B4A9A0 */ void setParam(); + /* 80B4AAD0 */ void setAfterTalkMotion(); + /* 80B4AB30 */ void srchActors(); + /* 80B4ABA0 */ void evtTalk(); + /* 80B4AC84 */ void evtCutProc(); + /* 80B4AD4C */ void action(); + /* 80B4AE38 */ void beforeMove(); + /* 80B4AEB0 */ void setAttnPos(); + /* 80B4B0DC */ void setCollision(); + /* 80B4B210 */ bool drawDbgInfo(); + /* 80B4B218 */ void evtEndProc(); + /* 80B4B294 */ void drawGhost(); + /* 80B4B300 */ void selectAction(); + /* 80B4B348 */ void chkAction(int (daNpc_yamiT_c::*)(void*)); + /* 80B4B374 */ void setAction(int (daNpc_yamiT_c::*)(void*)); + /* 80B4B41C */ void wait(void*); + /* 80B4B7D4 */ void talk(void*); + /* 80B4B9E0 */ void cutStopper(int); + /* 80B4BA74 */ void _cutStopper_Init(int const&); + /* 80B4BAAC */ void _cutStopper_Main(int const&); + /* 80B4CC38 */ daNpc_yamiT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B4CCF8 */ bool getEyeballMaterialNo(); + /* 80B4CD00 */ s32 getHeadJointNo(); + /* 80B4CD08 */ s32 getNeckJointNo(); + /* 80B4CD10 */ bool getBackboneJointNo(); + /* 80B4CD18 */ void checkChangeJoint(int); + /* 80B4CD28 */ void checkRemoveJoint(int); + + static void* mCutNameList[2]; + static u8 mCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xfcc - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_yamiT_c) == 0xfcc); + +class daNpc_yamiT_Param_c { +public: + /* 80B4CD38 */ ~daNpc_yamiT_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_YAMIT_H */ diff --git a/include/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h b/include/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h index a08fc8dd08..65071529a5 100644 --- a/include/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h +++ b/include/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h @@ -1,6 +1,77 @@ #ifndef D_A_NPC_YELIA_H #define D_A_NPC_YELIA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Yelia_c + * @brief Ilia + * + * @details + * + */ +class daNpc_Yelia_c : public fopAc_ac_c { +public: + /* 80B4D30C */ ~daNpc_Yelia_c(); + /* 80B4D458 */ void create(); + /* 80B4D754 */ void CreateHeap(); + /* 80B4DC20 */ void Delete(); + /* 80B4DC54 */ void Execute(); + /* 80B4DC74 */ void Draw(); + /* 80B4DD08 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B4DD28 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B4DD80 */ void getType(); + /* 80B4DDF8 */ void isDelete(); + /* 80B4DF10 */ void reset(); + /* 80B4E068 */ void afterJntAnm(int); + /* 80B4E0F4 */ void setParam(); + /* 80B4E2C0 */ void checkChangeEvt(); + /* 80B4E5BC */ void setAfterTalkMotion(); + /* 80B4E6A0 */ void srchActors(); + /* 80B4E7C8 */ void evtTalk(); + /* 80B4E868 */ void evtCutProc(); + /* 80B4E930 */ void action(); + /* 80B4EA28 */ void beforeMove(); + /* 80B4EAEC */ void setAttnPos(); + /* 80B4EE4C */ void setCollision(); + /* 80B4EFA4 */ bool drawDbgInfo(); + /* 80B4EFAC */ void selectAction(); + /* 80B4F054 */ void chkAction(int (daNpc_Yelia_c::*)(void*)); + /* 80B4F080 */ void setAction(int (daNpc_Yelia_c::*)(void*)); + /* 80B4F128 */ void cutConversationAboutLoopHole(int); + /* 80B4F3E0 */ void cutTWResistance(int); + /* 80B4F534 */ void cutTakeWoodStatue(int); + /* 80B4FDD8 */ void cutClothTry(int); + /* 80B4FE78 */ void cutThankYou(int); + /* 80B50084 */ void wait(void*); + /* 80B5080C */ void horseWait(void*); + /* 80B50A0C */ void reminiscence(void*); + /* 80B50B60 */ void talk(void*); + /* 80B52104 */ daNpc_Yelia_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B521E4 */ bool getEyeballMaterialNo(); + /* 80B521EC */ s32 getHeadJointNo(); + /* 80B521F4 */ s32 getNeckJointNo(); + /* 80B521FC */ bool getBackboneJointNo(); + /* 80B52204 */ void checkChangeJoint(int); + /* 80B52214 */ void checkRemoveJoint(int); + /* 80B52224 */ bool chkXYItems(); + + static void* mCutNameList[6]; + static u8 mCutList[72]; +private: + /* 0x568 */ u8 field_0x568[0xff0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Yelia_c) == 0xff0); + +class daNpc_Yelia_Param_c { +public: + /* 80B5222C */ ~daNpc_Yelia_Param_c(); + + static u8 const m[140]; +}; #endif /* D_A_NPC_YELIA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h b/include/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h index a6b676b3e3..bf85028aef 100644 --- a/include/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h +++ b/include/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h @@ -1,6 +1,97 @@ #ifndef D_A_NPC_YKM_H #define D_A_NPC_YKM_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" +#include "rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h" + +/** + * @ingroup actors-npcs + * @class daNpc_ykM_c + * @brief Yeto + * + * @details + * + */ +class daNpc_ykM_c : public fopAc_ac_c { +public: + /* 80B534EC */ ~daNpc_ykM_c(); + /* 80B53698 */ void create(); + /* 80B53990 */ void CreateHeap(); + /* 80B540BC */ void Delete(); + /* 80B540F0 */ void Execute(); + /* 80B54110 */ void Draw(); + /* 80B541F8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B54218 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B54270 */ void srchGadget(void*, void*); + /* 80B5430C */ void getTomatoPureeP(); + /* 80B543DC */ void getCheeseP(); + /* 80B544B0 */ void srchYkm(void*, void*); + /* 80B5454C */ void getOtherYkmP(int); + /* 80B54628 */ void srchYkw(void*, void*); + /* 80B546C4 */ void getOtherYkwP(int); + /* 80B547A0 */ void getType(); + /* 80B54808 */ void isDelete(); + /* 80B548A8 */ void reset(); + /* 80B54B44 */ void afterJntAnm(int); + /* 80B54BD0 */ void setParam(); + /* 80B54E5C */ void checkChangeEvt(); + /* 80B55004 */ void setAfterTalkMotion(); + /* 80B550A4 */ void srchActors(); + /* 80B55254 */ void evtTalk(); + /* 80B552F4 */ void evtCutProc(); + /* 80B553BC */ void action(); + /* 80B55658 */ void beforeMove(); + /* 80B5571C */ void afterMoved(); + /* 80B55A64 */ void setAttnPos(); + /* 80B560B4 */ void setCollision(); + /* 80B5641C */ bool drawDbgInfo(); + /* 80B56424 */ void drawOtherMdl(); + /* 80B56624 */ void setFishAnm(int, int, f32); + /* 80B566E8 */ void setLeafAnm(int, f32); + /* 80B567B4 */ void afterSetMotionAnm(int, int, f32, int); + /* 80B5680C */ void selectAction(); + /* 80B56954 */ void chkAction(int (daNpc_ykM_c::*)(void*)); + /* 80B56980 */ void setAction(int (daNpc_ykM_c::*)(void*)); + /* 80B56A28 */ void chkContinueAttnPlayer(); + /* 80B56AB4 */ void chkTouchPlayer(); + /* 80B56B84 */ void cutSlideDown(int); + /* 80B572C8 */ void cutMeetingAgain(int); + /* 80B57638 */ void cutGetTomatoPuree(int); + /* 80B5806C */ void cutGetTaste(int); + /* 80B58A38 */ void cutLv5DungeonClear(int); + /* 80B59500 */ void cutFindWolf(int); + /* 80B59748 */ void cutStartSnowboardRace(int); + /* 80B59B90 */ void cutEndSnowboardRace(int); + /* 80B5A0B8 */ void cutHug(int); + /* 80B5A128 */ void setDialogueMotion(); + /* 80B5A224 */ void dialogue(); + /* 80B5A3FC */ void wait(void*); + /* 80B5ABA8 */ void cook(void*); + /* 80B5B260 */ void race(void*); + /* 80B5BE08 */ void talk(void*); + /* 80B5D588 */ daNpc_ykM_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B5D688 */ s32 getEyeballMaterialNo(); + /* 80B5D690 */ s32 getHeadJointNo(); + /* 80B5D698 */ s32 getNeckJointNo(); + /* 80B5D6A0 */ bool getBackboneJointNo(); + /* 80B5D6A8 */ void checkChangeJoint(int); + /* 80B5D6B8 */ void checkRemoveJoint(int); + + static void* mCutNameList[10]; + static u8 mCutList[120]; +private: + /* 0x568 */ u8 field_0x568[0x158c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_ykM_c) == 0x158c); + +class daNpc_ykM_Param_c { +public: + /* 80B5D6C8 */ ~daNpc_ykM_Param_c(); + + static u8 const m[200]; +}; #endif /* D_A_NPC_YKM_H */ diff --git a/include/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h b/include/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h index 708c3643bf..dbdb8c2053 100644 --- a/include/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h +++ b/include/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h @@ -1,6 +1,92 @@ #ifndef D_A_NPC_YKW_H #define D_A_NPC_YKW_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_ykW_c + * @brief Yeta + * + * @details + * + */ +class daNpc_ykW_c : public fopAc_ac_c { +public: + /* 80B5EF0C */ ~daNpc_ykW_c(); + /* 80B5F084 */ void create(); + /* 80B5F34C */ void CreateHeap(); + /* 80B5F784 */ void Delete(); + /* 80B5F7B8 */ void Execute(); + /* 80B5F7D8 */ void Draw(); + /* 80B5F8AC */ void createHeapCallBack(fopAc_ac_c*); + /* 80B5F8CC */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B5F924 */ void srchItemHeart(void*, void*); + /* 80B5F9D8 */ void srchYkw(void*, void*); + /* 80B5FA74 */ void getOtherYkwP(int); + /* 80B5FB50 */ void srchYkm(void*, void*); + /* 80B5FBEC */ void getOtherYkmP(int); + /* 80B5FCC8 */ void getType(); + /* 80B5FD30 */ void isDelete(); + /* 80B5FE6C */ void reset(); + /* 80B601C8 */ void afterJntAnm(int); + /* 80B60290 */ void setParam(); + /* 80B6042C */ void checkChangeEvt(); + /* 80B60520 */ void setAfterTalkMotion(); + /* 80B605C0 */ void srchActors(); + /* 80B60744 */ void evtTalk(); + /* 80B607E4 */ void evtCutProc(); + /* 80B608AC */ void action(); + /* 80B60AFC */ void beforeMove(); + /* 80B60BC0 */ void afterMoved(); + /* 80B60F08 */ void setAttnPos(); + /* 80B614D0 */ void setCollision(); + /* 80B61708 */ bool drawDbgInfo(); + /* 80B61710 */ void selectAction(); + /* 80B61828 */ void chkAction(int (daNpc_ykW_c::*)(void*)); + /* 80B61854 */ void setAction(int (daNpc_ykW_c::*)(void*)); + /* 80B618FC */ void getGoalPos(); + /* 80B61A0C */ void orderGoIntoBossRoomEvt(); + /* 80B61AA4 */ void putUtuwaHeart(cXyz*, f32, f32, s16, cXyz*); + /* 80B61C8C */ void cutShowDoor(int); + /* 80B61E74 */ void cutGoIntoBossRoom(int); + /* 80B62AF8 */ void cutLv5DungeonClear(int); + /* 80B63894 */ void cutFindWolf(int); + /* 80B63AA0 */ void cutStartSnowboardRace(int); + /* 80B63EE0 */ void cutEndSnowboardRace(int); + /* 80B6450C */ void cutHug(int); + /* 80B647E4 */ void setDialogueMotion(); + /* 80B6491C */ void dialogue(); + /* 80B649A8 */ void wait(void*); + /* 80B65278 */ void sitWait(void*); + /* 80B654CC */ void walk(void*); + /* 80B6591C */ void race(void*); + /* 80B6640C */ void talk(void*); + /* 80B67A3C */ daNpc_ykW_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B67B1C */ s32 getEyeballMaterialNo(); + /* 80B67B24 */ s32 getHeadJointNo(); + /* 80B67B2C */ s32 getNeckJointNo(); + /* 80B67B34 */ bool getBackboneJointNo(); + /* 80B67B3C */ void checkChangeJoint(int); + /* 80B67B4C */ void checkRemoveJoint(int); + /* 80B67B5C */ s32 getFootLJointNo(); + /* 80B67B64 */ s32 getFootRJointNo(); + + static void* mCutNameList[8]; + static u8 mCutList[96]; +private: + /* 0x568 */ u8 field_0x568[0x1078 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_ykW_c) == 0x1078); + +class daNpc_ykW_Param_c { +public: + /* 80B67B6C */ ~daNpc_ykW_Param_c(); + + static u8 const m[180]; +}; #endif /* D_A_NPC_YKW_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h b/include/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h index 3b158d4230..3ba9aec453 100644 --- a/include/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h +++ b/include/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h @@ -1,6 +1,72 @@ #ifndef D_A_NPC_ZANB_H #define D_A_NPC_ZANB_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_zanB_c + * @brief Zant Boss (Unused?) + * + * @details + * + */ +class daNpc_zanB_c : public fopAc_ac_c { +public: + /* 80B68F2C */ ~daNpc_zanB_c(); + /* 80B6904C */ void create(); + /* 80B69330 */ void CreateHeap(); + /* 80B6975C */ void Delete(); + /* 80B69790 */ void Execute(); + /* 80B697B0 */ void Draw(); + /* 80B69844 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B69864 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B698BC */ void getType(); + /* 80B698DC */ bool isDelete(); + /* 80B698E4 */ void reset(); + /* 80B69A3C */ void afterJntAnm(int); + /* 80B69AC8 */ void checkChangeEvt(); + /* 80B69B7C */ void setParam(); + /* 80B69CA8 */ void setAfterTalkMotion(); + /* 80B69D08 */ void srchActors(); + /* 80B69D0C */ void evtTalk(); + /* 80B69DAC */ void evtCutProc(); + /* 80B69E74 */ void action(); + /* 80B69F60 */ void beforeMove(); + /* 80B69FD8 */ void setAttnPos(); + /* 80B6A268 */ void setCollision(); + /* 80B6A408 */ bool drawDbgInfo(); + /* 80B6A410 */ void drawGhost(); + /* 80B6A47C */ void selectAction(); + /* 80B6A4C4 */ void chkAction(int (daNpc_zanB_c::*)(void*)); + /* 80B6A4F0 */ void setAction(int (daNpc_zanB_c::*)(void*)); + /* 80B6A598 */ void wait(void*); + /* 80B6A874 */ void talk(void*); + /* 80B6BADC */ daNpc_zanB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B6BC18 */ s32 getEyeballMaterialNo(); + /* 80B6BC20 */ s32 getHeadJointNo(); + /* 80B6BC28 */ s32 getNeckJointNo(); + /* 80B6BC30 */ bool getBackboneJointNo(); + /* 80B6BC38 */ void checkChangeJoint(int); + /* 80B6BC48 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_zanB_c) == 0xfa0); + +class daNpc_zanB_Param_c { +public: + /* 80B6BC58 */ ~daNpc_zanB_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_ZANB_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h b/include/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h index abcfb86743..4d27cb7cfe 100644 --- a/include/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h +++ b/include/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h @@ -1,6 +1,66 @@ #ifndef D_A_NPC_ZANT_H #define D_A_NPC_ZANT_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Zant_c + * @brief Zant + * + * @details + * + */ +class daNpc_Zant_c : public fopAc_ac_c { +public: + /* 80B6C1AC */ ~daNpc_Zant_c(); + /* 80B6C2D0 */ void create(); + /* 80B6C574 */ void CreateHeap(); + /* 80B6C700 */ void Delete(); + /* 80B6C734 */ void Execute(); + /* 80B6C754 */ void Draw(); + /* 80B6C7E8 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B6C808 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B6C860 */ void getType(); + /* 80B6C880 */ void getFlowNodeNo(); + /* 80B6C89C */ void isDelete(); + /* 80B6C8CC */ void reset(); + /* 80B6C9F0 */ void afterJntAnm(int); + /* 80B6C9F4 */ void setParam(); + /* 80B6CAF0 */ void setAfterTalkMotion(); + /* 80B6CB50 */ void srchActors(); + /* 80B6CB54 */ void evtTalk(); + /* 80B6CC54 */ void evtCutProc(); + /* 80B6CD1C */ void action(); + /* 80B6CE08 */ void beforeMove(); + /* 80B6CE80 */ void setAttnPos(); + /* 80B6D074 */ void setCollision(); + /* 80B6D1A8 */ bool drawDbgInfo(); + /* 80B6D1B0 */ void drawGhost(); + /* 80B6D21C */ void selectAction(); + /* 80B6D264 */ void chkAction(int (daNpc_Zant_c::*)(void*)); + /* 80B6D290 */ void setAction(int (daNpc_Zant_c::*)(void*)); + /* 80B6D338 */ void wait(void*); + /* 80B6D584 */ void talk(void*); + /* 80B6E800 */ daNpc_Zant_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Zant_c) == 0xfa0); + +class daNpc_Zant_Param_c { +public: + /* 80B6E93C */ ~daNpc_Zant_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_ZANT_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h b/include/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h index bbed832dec..4cdb7cd2f3 100644 --- a/include/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h +++ b/include/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_ZELR_H #define D_A_NPC_ZELR_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_ZelR_c + * @brief Zelda (Cloaked & Hooded) + * + * @details + * + */ +class daNpc_ZelR_c : public fopAc_ac_c { +public: + /* 80B6EE2C */ ~daNpc_ZelR_c(); + /* 80B6EF64 */ void create(); + /* 80B6F1F8 */ void CreateHeap(); + /* 80B6F664 */ void Delete(); + /* 80B6F698 */ void Execute(); + /* 80B6F6B8 */ void Draw(); + /* 80B6F77C */ void createHeapCallBack(fopAc_ac_c*); + /* 80B6F79C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B6F7F4 */ void getType(); + /* 80B6F814 */ void getFlowNodeNo(); + /* 80B6F830 */ void getPath(); + /* 80B6F83C */ void isDelete(); + /* 80B6F894 */ void reset(); + /* 80B6FA10 */ void afterJntAnm(int); + /* 80B6FA9C */ void ctrlBtk(); + /* 80B6FBA8 */ void setParam(); + /* 80B6FC9C */ void setAfterTalkMotion(); + /* 80B6FCFC */ void srchActors(); + /* 80B6FD00 */ void evtTalk(); + /* 80B6FE00 */ void evtCutProc(); + /* 80B6FEC8 */ void action(); + /* 80B70018 */ void beforeMove(); + /* 80B70090 */ void setAttnPos(); + /* 80B702B0 */ void setCollision(); + /* 80B703E0 */ bool drawDbgInfo(); + /* 80B703E8 */ void selectAction(); + /* 80B70430 */ void chkAction(int (daNpc_ZelR_c::*)(void*)); + /* 80B7045C */ void setAction(int (daNpc_ZelR_c::*)(void*)); + /* 80B70504 */ void wait(void*); + /* 80B706B0 */ void talk(void*); + /* 80B71974 */ daNpc_ZelR_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B71A34 */ s32 getEyeballRMaterialNo(); + /* 80B71A3C */ s32 getEyeballLMaterialNo(); + /* 80B71A44 */ s32 getHeadJointNo(); + /* 80B71A4C */ bool getBackboneJointNo(); + /* 80B71A54 */ void checkChangeJoint(int); + /* 80B71A64 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfc8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_ZelR_c) == 0xfc8); + +class daNpc_ZelR_Param_c { +public: + /* 80B71A74 */ ~daNpc_ZelR_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_ZELR_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h b/include/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h index 06b323f817..408e765533 100644 --- a/include/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h +++ b/include/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h @@ -1,6 +1,74 @@ #ifndef D_A_NPC_ZELRO_H #define D_A_NPC_ZELRO_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_ZelRo_c + * @brief Zelda (Cloaked) + * + * @details + * + */ +class daNpc_ZelRo_c : public fopAc_ac_c { +public: + /* 80B71FAC */ ~daNpc_ZelRo_c(); + /* 80B720E4 */ void create(); + /* 80B72378 */ void CreateHeap(); + /* 80B727E4 */ void Delete(); + /* 80B72818 */ void Execute(); + /* 80B72838 */ void Draw(); + /* 80B728FC */ void createHeapCallBack(fopAc_ac_c*); + /* 80B7291C */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B72974 */ void getType(); + /* 80B72994 */ void getFlowNodeNo(); + /* 80B729B0 */ void getPath(); + /* 80B729BC */ void isDelete(); + /* 80B72A10 */ void reset(); + /* 80B72B8C */ void afterJntAnm(int); + /* 80B72C18 */ void ctrlBtk(); + /* 80B72D24 */ void setParam(); + /* 80B72E18 */ void setAfterTalkMotion(); + /* 80B72E78 */ void srchActors(); + /* 80B72E7C */ void evtTalk(); + /* 80B72F7C */ void evtCutProc(); + /* 80B73044 */ void action(); + /* 80B73194 */ void beforeMove(); + /* 80B7320C */ void setAttnPos(); + /* 80B7342C */ void setCollision(); + /* 80B7355C */ bool drawDbgInfo(); + /* 80B73564 */ void selectAction(); + /* 80B735AC */ void chkAction(int (daNpc_ZelRo_c::*)(void*)); + /* 80B735D8 */ void setAction(int (daNpc_ZelRo_c::*)(void*)); + /* 80B73680 */ void wait(void*); + /* 80B7382C */ void talk(void*); + /* 80B74AE8 */ daNpc_ZelRo_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B74BA8 */ s32 getEyeballRMaterialNo(); + /* 80B74BB0 */ s32 getEyeballLMaterialNo(); + /* 80B74BB8 */ s32 getHeadJointNo(); + /* 80B74BC0 */ s32 getNeckJointNo(); + /* 80B74BC8 */ bool getBackboneJointNo(); + /* 80B74BD0 */ void checkChangeJoint(int); + /* 80B74BE0 */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfc8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_ZelRo_c) == 0xfc8); + +class daNpc_ZelRo_Param_c { +public: + /* 80B74BF0 */ ~daNpc_ZelRo_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_ZELRO_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h b/include/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h index a72b35d005..97d5f3c18a 100644 --- a/include/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h +++ b/include/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h @@ -1,6 +1,73 @@ #ifndef D_A_NPC_ZELDA_H #define D_A_NPC_ZELDA_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_Zelda_c + * @brief Zelda + * + * @details + * + */ +class daNpc_Zelda_c : public fopAc_ac_c { +public: + /* 80B7512C */ ~daNpc_Zelda_c(); + /* 80B7524C */ void create(); + /* 80B75530 */ void CreateHeap(); + /* 80B75978 */ void Delete(); + /* 80B759AC */ void Execute(); + /* 80B759CC */ void Draw(); + /* 80B75A90 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B75AB0 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B75B08 */ void getType(); + /* 80B75B28 */ bool isDelete(); + /* 80B75B30 */ void reset(); + /* 80B75C9C */ void afterJntAnm(int); + /* 80B75D28 */ void ctrlBtk(); + /* 80B75E34 */ void checkChangeEvt(); + /* 80B75EE8 */ void setParam(); + /* 80B76014 */ void setAfterTalkMotion(); + /* 80B76074 */ void srchActors(); + /* 80B76078 */ void evtTalk(); + /* 80B76118 */ void evtCutProc(); + /* 80B761E0 */ void action(); + /* 80B762CC */ void beforeMove(); + /* 80B76344 */ void setAttnPos(); + /* 80B765D4 */ void setCollision(); + /* 80B76774 */ bool drawDbgInfo(); + /* 80B7677C */ void selectAction(); + /* 80B767C4 */ void chkAction(int (daNpc_Zelda_c::*)(void*)); + /* 80B767F0 */ void setAction(int (daNpc_Zelda_c::*)(void*)); + /* 80B76898 */ void wait(void*); + /* 80B76B74 */ void talk(void*); + /* 80B77DD8 */ daNpc_Zelda_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, + daNpcT_evtData_c const*, char**); + /* 80B77F14 */ s32 getEyeballRMaterialNo(); + /* 80B77F1C */ s32 getEyeballLMaterialNo(); + /* 80B77F24 */ s32 getHeadJointNo(); + /* 80B77F2C */ s32 getNeckJointNo(); + /* 80B77F34 */ bool getBackboneJointNo(); + /* 80B77F3C */ void checkChangeJoint(int); + /* 80B77F4C */ void checkRemoveJoint(int); + + static void* mCutNameList; + static u8 mCutList[12]; + +private: + /* 0x568 */ u8 field_0x568[0xfa0 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_Zelda_c) == 0xfa0); + +class daNpc_Zelda_Param_c { +public: + /* 80B77F5C */ ~daNpc_Zelda_Param_c(); + + static u8 const m[140]; +}; + #endif /* D_A_NPC_ZELDA_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h b/include/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h index 7ec9c9424c..21071c2e90 100644 --- a/include/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h +++ b/include/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h @@ -3,6 +3,14 @@ #include "d/a/d_a_npc.h" +/** + * @ingroup actors-npcs + * @class daNpc_zrA_Path_c + * @brief Zora (Adult) + * + * @details + * + */ class daNpc_zrA_Path_c : public daNpcF_Path_c { public: /* 80B7850C */ BOOL getDstPosDst2(cXyz, cXyz&); diff --git a/include/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h b/include/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h index e54e864570..a383c810c9 100644 --- a/include/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h +++ b/include/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h @@ -1,6 +1,76 @@ #ifndef D_A_NPC_ZRC_H #define D_A_NPC_ZRC_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_zrC_c + * @brief Ralis + * + * @details + * + */ +class daNpc_zrC_c : public fopAc_ac_c { +public: + /* 80B8DC0C */ daNpc_zrC_c(); + /* 80B8DE20 */ ~daNpc_zrC_c(); + /* 80B8E03C */ void create(); + /* 80B8E338 */ void CreateHeap(); + /* 80B8E830 */ void Delete(); + /* 80B8E864 */ void Execute(); + /* 80B8E884 */ void Draw(); + /* 80B8E914 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80B8EB48 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B8EB68 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B8EBB4 */ void setParam(); + /* 80B8ED94 */ void main(); + /* 80B8EF2C */ void ctrlBtk(); + /* 80B8F00C */ void setAttnPos(); + /* 80B8F56C */ void setExpressionAnm(int, bool); + /* 80B8F898 */ void setExpressionBtp(int); + /* 80B8F9CC */ void setExpression(int, f32); + /* 80B8F9F8 */ void setMotionAnm(int, f32); + /* 80B8FBE4 */ void setMotion(int, f32, int); + /* 80B8FC28 */ bool drawDbgInfo(); + /* 80B8FC30 */ void drawOtherMdls(); + /* 80B8FC34 */ void getTypeFromParam(); + /* 80B8FC8C */ void isDelete(); + /* 80B8FD10 */ void reset(); + /* 80B8FF14 */ void playExpression(); + /* 80B904DC */ void playMotion(); + /* 80B90940 */ void playMotionAnm2(daNpcF_c::daNpcF_anmPlayData***); + /* 80B90A6C */ void chkAction(int (daNpc_zrC_c::*)(void*)); + /* 80B90A98 */ void setAction(int (daNpc_zrC_c::*)(void*)); + /* 80B90B40 */ void selectAction(); + /* 80B90C34 */ void doNormalAction(int); + /* 80B90D48 */ void doEvent(); + /* 80B9113C */ void setLookMode(int); + /* 80B91160 */ void lookat(); + /* 80B91418 */ void setExpressionTalkAfter(); + /* 80B914F4 */ void wait(void*); + /* 80B916FC */ void waitSick(void*); + /* 80B91808 */ void waitPray(void*); + /* 80B91F78 */ void waitThrone(void*); + /* 80B920EC */ void talk(void*); + /* 80B922D8 */ void test(void*); + /* 80B923BC */ void ECut_earringGet(int); + /* 80B9318C */ void adjustShapeAngle(); + + static void* mEvtCutNameList[2]; + static u8 mEvtCutList[24]; + +private: + /* 0x568 */ u8 field_0x568[0xe3c - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_zrC_c) == 0xe3c); + +class daNpc_zrC_Param_c { +public: + /* 80B93190 */ ~daNpc_zrC_Param_c(); + + static u8 const m[116]; +}; + #endif /* D_A_NPC_ZRC_H */ diff --git a/include/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h b/include/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h index abb0d7f189..f26a0cc457 100644 --- a/include/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h +++ b/include/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h @@ -1,6 +1,89 @@ #ifndef D_A_NPC_ZRZ_H #define D_A_NPC_ZRZ_H -#include "dolphin/types.h" +#include "d/a/d_a_npc.h" + +/** + * @ingroup actors-npcs + * @class daNpc_zrZ_c + * @brief Rutela + * + * @details + * + */ +class daNpc_zrZ_c : public fopAc_ac_c { +public: + /* 80B93DCC */ daNpc_zrZ_c(); + /* 80B94014 */ ~daNpc_zrZ_c(); + /* 80B9423C */ void create(); + /* 80B9453C */ void CreateHeap(); + /* 80B949F4 */ void Delete(); + /* 80B94A28 */ void Execute(); + /* 80B94A48 */ void Draw(); + /* 80B94B34 */ void draw(int, int, f32, _GXColorS10*, int); + /* 80B94E18 */ void ctrlJoint(J3DJoint*, J3DModel*); + /* 80B950F4 */ void createHeapCallBack(fopAc_ac_c*); + /* 80B95114 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80B95244 */ void setParam(); + /* 80B953CC */ void main(); + /* 80B95598 */ void ctrlBtk(); + /* 80B956B4 */ void setAttnPos(); + /* 80B95BB8 */ void setMtx(); + /* 80B95C6C */ void setExpressionAnm(int, bool); + /* 80B95DD0 */ void setExpressionBtp(int); + /* 80B95F10 */ void setExpression(int, f32); + /* 80B95F3C */ void setMotionAnm(int, f32); + /* 80B9612C */ void setMotion(int, f32, int); + /* 80B96170 */ bool drawDbgInfo(); + /* 80B96178 */ void drawOtherMdls(); + /* 80B9617C */ void getTypeFromParam(); + /* 80B961B4 */ void isDelete(); + /* 80B96268 */ void reset(); + /* 80B9652C */ void playExpression(); + /* 80B96618 */ void playMotion(); + /* 80B96740 */ void chkAction(int (daNpc_zrZ_c::*)(void*)); + /* 80B9676C */ void setAction(int (daNpc_zrZ_c::*)(void*)); + /* 80B96814 */ void selectAction(); + /* 80B968E0 */ void doNormalAction(int); + /* 80B969F4 */ void doEvent(); + /* 80B96DF0 */ void setSkipZev(int, int); + /* 80B96E7C */ void setLookMode(int); + /* 80B96EA0 */ void lookat(); + /* 80B97128 */ void setExpressionTalkAfter(); + /* 80B97160 */ void lightReady(); + /* 80B971BC */ void setLightPos(); + /* 80B9723C */ void lightPowerCalc(int); + /* 80B972EC */ void lightColorProc(); + /* 80B974BC */ void ECut_helpPrince(int); + /* 80B97B78 */ void ECut_comeHere(int); + /* 80B97D7C */ void ECut_restoreLink(int); + /* 80B97EB4 */ void ECut_clothesGet(int); + /* 80B98540 */ void ECut_getAfter(int); + /* 80B9877C */ void ECut_sealRelease(int); + /* 80B98ACC */ void ECut_srSkip(int); + /* 80B98C34 */ void pullbackPlayer(f32); + /* 80B98D04 */ void wait(void*); + /* 80B98F84 */ void comeHere(void*); + /* 80B998BC */ void comeHere2(void*); + /* 80B9A0EC */ void talk(void*); + /* 80B9A29C */ void test(void*); + /* 80B9A380 */ void himoCalc(); + /* 80B9AF7C */ void adjustShapeAngle(); + + static void* mEvtCutNameList[8]; + static u8 mEvtCutList[96]; + +private: + /* 0x568 */ u8 field_0x568[0x14c8 - 0x568]; +}; +STATIC_ASSERT(sizeof(daNpc_zrZ_c) == 0x14c8); + +class daNpc_zrZ_Param_c { +public: + /* 80B9AF80 */ ~daNpc_zrZ_Param_c(); + + static u8 const m[132]; +}; + #endif /* D_A_NPC_ZRZ_H */ diff --git a/rel/d/a/b/d_a_b_yo/d_a_b_yo.cpp b/rel/d/a/b/d_a_b_yo/d_a_b_yo.cpp index 73c01c4b40..777f7c2960 100644 --- a/rel/d/a/b/d_a_b_yo/d_a_b_yo.cpp +++ b/rel/d/a/b/d_a_b_yo/d_a_b_yo.cpp @@ -859,7 +859,7 @@ static s32 daB_YO_Draw(daB_YO_c* i_this) { /* 8062FBEC-8062FC08 00086C 001C+00 0/0 0/0 4/4 .text onIceBreak__8daB_YO_cFUs */ void daB_YO_c::onIceBreak(u16 param_0) { - field_0xf6e |= (1 << param_0); + mIceBreak |= (1 << param_0); } /* ############################################################################################## */ diff --git a/rel/d/a/d_a_peru/d_a_peru.cpp b/rel/d/a/d_a_peru/d_a_peru.cpp index deb90b2cc1..260a868157 100644 --- a/rel/d/a/d_a_peru/d_a_peru.cpp +++ b/rel/d/a/d_a_peru/d_a_peru.cpp @@ -2302,11 +2302,12 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/d_a_peru/d_a_peru/func_80D4B2B4.s" } @@ -2386,8 +2387,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/d_a_peru/d_a_peru/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2420,13 +2422,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80D4BCC0-80D4BCC8 004EC0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80D4BCC8-80D4BCD0 004EC8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2441,7 +2445,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80D4BCDC-80D4BCE4 004EDC 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2451,7 +2456,8 @@ void daNpcT_c::afterMoved() { } /* 80D4BCE8-80D4BCF0 004EE8 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2476,13 +2482,15 @@ void daNpcT_c::drawGhost() { } /* 80D4BD10-80D4BD18 004F10 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80D4BD18-80D4BD20 004F18 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } diff --git a/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.cpp b/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.cpp index f3aeedfa8f..84ac63d5bf 100644 --- a/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.cpp +++ b/rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.cpp @@ -1,7 +1,7 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_door_mbossL1 -// +/** + * @file d_a_door_mbossL1.cpp + * +*/ #include "rel/d/a/door/d_a_door_mbossL1/d_a_door_mbossL1.h" #include "rel/d/a/obj/d_a_obj_stopper/d_a_obj_stopper.h" @@ -940,25 +940,30 @@ SECTION_DATA static u8 l_action[84] = { #pragma pop /* 80677C78-80677C98 -00001 0020+00 1/0 0/0 0/0 .data l_daMBdoorL1_Method */ -SECTION_DATA static void* l_daMBdoorL1_Method[8] = { - (void*)daMBdoorL1_Create__FP10fopAc_ac_c, - (void*)daMBdoorL1_Delete__FP12daMBdoorL1_c, - (void*)daMBdoorL1_Execute__FP12daMBdoorL1_c, - (void*)NULL, - (void*)daMBdoorL1_Draw__FP12daMBdoorL1_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daMBdoorL1_Method = { + (process_method_func)daMBdoorL1_Create__FP10fopAc_ac_c, + (process_method_func)daMBdoorL1_Delete__FP12daMBdoorL1_c, + (process_method_func)daMBdoorL1_Execute__FP12daMBdoorL1_c, + 0, + (process_method_func)daMBdoorL1_Draw__FP12daMBdoorL1_c, }; /* 80677C98-80677CC8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_L1MBOSS_DOOR */ -SECTION_DATA extern void* g_profile_L1MBOSS_DOOR[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x022A0000, (void*)&g_fpcLf_Method, - (void*)0x00000834, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x012B0000, (void*)&l_daMBdoorL1_Method, - (void*)0x00044000, (void*)0x00060000, +extern actor_process_profile_definition g_profile_L1MBOSS_DOOR = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_L1MBOSS_DOOR, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daMBdoorL1_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 299, // mPriority + &l_daMBdoorL1_Method, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_6_e, // cullType }; /* 80677CC8-80677CF8 000358 0030+00 1/1 0/0 0/0 .data __vt__14dBgS_ObjGndChk */ diff --git a/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.cpp b/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.cpp index c48876dc11..2cd93184b3 100644 --- a/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.cpp +++ b/rel/d/a/kytag/d_a_kytag12/d_a_kytag12.cpp @@ -1,7 +1,7 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_kytag12 -// +/** + * @file d_a_kytag12.cpp + * +*/ #include "rel/d/a/kytag/d_a_kytag12/d_a_kytag12.h" #include "SSystem/SComponent/c_math.h" @@ -11,19 +11,6 @@ #include "d/kankyo/d_kankyo_wether.h" #include "dol2asm.h" -// -// Types: -// - -class kytag12_class : public fopAc_ac_c { -public: - /* 0x568 */ u8 field_0x568[0x574 - 0x568]; - /* 0x574 */ u8 field_0x574; - /* 0x575 */ u8 field_0x575; - /* 0x576 */ u16 field_0x576; - /* 0x578 */ s16 field_0x578; - /* 0x57C */ cXyz field_0x57c[5]; -}; // // Forward References: @@ -43,7 +30,6 @@ extern "C" static void daKytag12_Delete__FP13kytag12_class(); extern "C" static void daKytag12_Create__FP10fopAc_ac_c(); extern "C" void __ct__4cXyzFv(); extern "C" extern char const* const d_a_kytag12__stringBase0; -extern "C" extern void* g_profile_KYTAG12[12]; // // External References: @@ -2014,23 +2000,28 @@ extern "C" void __ct__4cXyzFv() { /* ############################################################################################## */ /* 8085F118-8085F138 -00001 0020+00 1/0 0/0 0/0 .data l_daKytag12_Method */ -SECTION_DATA static void* l_daKytag12_Method[8] = { - (void*)daKytag12_Create__FP10fopAc_ac_c, - (void*)daKytag12_Delete__FP13kytag12_class, - (void*)daKytag12_Execute__FP13kytag12_class, - (void*)daKytag12_IsDelete__FP13kytag12_class, - (void*)daKytag12_Draw__FP13kytag12_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daKytag12_Method = { + (process_method_func)daKytag12_Create__FP10fopAc_ac_c, + (process_method_func)daKytag12_Delete__FP13kytag12_class, + (process_method_func)daKytag12_Execute__FP13kytag12_class, + (process_method_func)daKytag12_IsDelete__FP13kytag12_class, + (process_method_func)daKytag12_Draw__FP13kytag12_class, }; /* 8085F138-8085F168 -00001 0030+00 0/0 0/0 1/0 .data g_profile_KYTAG12 */ -SECTION_DATA extern void* g_profile_KYTAG12[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02B60000, (void*)&g_fpcLf_Method, - (void*)0x000005B8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x006A0000, (void*)&l_daKytag12_Method, - (void*)0x00044000, (void*)NULL, +extern actor_process_profile_definition g_profile_KYTAG12 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_KYTAG12, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(kytag12_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 106, // mPriority + &l_daKytag12_Method, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; diff --git a/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.cpp b/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.cpp index 8070122766..e9a20d008d 100644 --- a/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.cpp +++ b/rel/d/a/kytag/d_a_kytag13/d_a_kytag13.cpp @@ -9,19 +9,6 @@ #include "d/kankyo/d_kankyo_rain.h" #include "dol2asm.h" -// -// Types: -// - -class kytag13_class : public fopAc_ac_c { -public: - /* 0x568 */ u8 field_0x568[0x574 - 0x568]; - /* 0x574 */ f32 mSpeed; - /* 0x578 */ u16 mMax; - /* 0x57A */ u8 field_0x57a; - /* 0x57C */ u16 field_0x57c; - /* 0x57E */ u16 field_0x57e; -}; // // Forward References: @@ -426,25 +413,30 @@ SECTION_DEAD static char const* const stringBase_80860538 = "D_MN11"; #pragma pop /* 80860540-80860560 -00001 0020+00 1/0 0/0 0/0 .data l_daKytag13_Method */ -SECTION_DATA static void* l_daKytag13_Method[8] = { - (void*)daKytag13_Create__FP10fopAc_ac_c, - (void*)daKytag13_Delete__FP13kytag13_class, - (void*)daKytag13_Execute__FP13kytag13_class, - (void*)daKytag13_IsDelete__FP13kytag13_class, - (void*)daKytag13_Draw__FP13kytag13_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daKytag13_Method = { + (process_method_func)daKytag13_Create__FP10fopAc_ac_c, + (process_method_func)daKytag13_Delete__FP13kytag13_class, + (process_method_func)daKytag13_Execute__FP13kytag13_class, + (process_method_func)daKytag13_IsDelete__FP13kytag13_class, + (process_method_func)daKytag13_Draw__FP13kytag13_class, }; /* 80860560-80860590 -00001 0030+00 0/0 0/0 1/0 .data g_profile_KYTAG13 */ -SECTION_DATA extern void* g_profile_KYTAG13[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02B70000, (void*)&g_fpcLf_Method, - (void*)0x00000580, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x006B0000, (void*)&l_daKytag13_Method, - (void*)0x00060000, (void*)NULL, +extern actor_process_profile_definition g_profile_KYTAG13 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_KYTAG13, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(kytag13_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 107, // mPriority + &l_daKytag13_Method, // sub_method + 0x00060000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80860590-808605C0 000050 0030+00 2/2 0/0 0/0 .data __vt__14dBgS_ObjGndChk */ diff --git a/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.cpp b/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.cpp index 0682236cad..9514960cc1 100644 --- a/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.cpp +++ b/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.cpp @@ -1,437 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_aru -// +/** + * @file d_a_npc_aru.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_aru/d_a_npc_aru.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80956748 */ ~cXyz(); - /* 80956DD8 */ cXyz(); -}; - -struct daTag_EvtArea_c { - /* 8095765C */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80956DDC */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Aru_c { - /* 8095178C */ ~daNpc_Aru_c(); - /* 809518C4 */ void create(); - /* 80951BB0 */ void CreateHeap(); - /* 80951FDC */ void Delete(); - /* 80952010 */ void Execute(); - /* 80952030 */ void Draw(); - /* 809520C4 */ void createHeapCallBack(fopAc_ac_c*); - /* 809520E4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8095213C */ void srchCow(void*, void*); - /* 809521E4 */ void srchUDoor(void*, void*); - /* 80952280 */ void chkThrust(fopAc_ac_c*); - /* 80952400 */ void getCowP(int); - /* 8095253C */ void getUDoor_l_P(); - /* 8095260C */ void getUDoor_r_P(); - /* 809526DC */ void getType(); - /* 80952740 */ void isDelete(); - /* 809527CC */ void reset(); - /* 80952B00 */ void afterJntAnm(int); - /* 80952B84 */ void setParam(); - /* 80952CE8 */ void checkChangeEvt(); - /* 80952D9C */ void setAfterTalkMotion(); - /* 80952E64 */ void srchActors(); - /* 809530DC */ void evtTalk(); - /* 8095317C */ void evtCutProc(); - /* 80953244 */ void action(); - /* 809533D8 */ void beforeMove(); - /* 8095349C */ void setAttnPos(); - /* 80953798 */ void setCollision(); - /* 809538F0 */ bool drawDbgInfo(); - /* 809538F8 */ void selectAction(); - /* 80953AB8 */ void chkAction(int (daNpc_Aru_c::*)(void*)); - /* 80953AE4 */ void setAction(int (daNpc_Aru_c::*)(void*)); - /* 80953B8C */ void chkBullRunningStage(); - /* 80953C08 */ void chkSkipFenceStage(); - /* 80953C84 */ void srchActorDirection(fopAc_ac_c*); - /* 80953D58 */ void adjustMoveDir(); - /* 809543F8 */ void duck(int); - /* 80954744 */ void lookround(s16); - /* 80954894 */ void cutRideOnHorse(int); - /* 80954A5C */ void cutGotoBullRunningStage(int); - /* 80954C0C */ void cutEndBullRunning(int); - /* 80954F4C */ void cutGotoSkipFenceStage(int); - /* 80955080 */ void cutSpeakTo(int); - /* 8095533C */ void cutNoEntrance(int); - /* 80955608 */ void wait(void*); - /* 80955B48 */ void bullRunning(void*); - /* 80955DE8 */ void skipFence(void*); - /* 80955F98 */ void talk(void*); - /* 809574E8 */ daNpc_Aru_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809575B4 */ s32 getEyeballMaterialNo(); - /* 809575BC */ s32 getHeadJointNo(); - /* 809575C4 */ s32 getNeckJointNo(); - /* 809575CC */ bool getBackboneJointNo(); - /* 809575D4 */ void checkChangeJoint(int); - /* 809575E4 */ void checkRemoveJoint(int); - /* 809575F4 */ s32 getFootLJointNo(); - /* 809575FC */ s32 getFootRJointNo(); - - static void* mCutNameList[7]; - static u8 mCutList[84]; -}; - -struct daNpc_Aru_Param_c { - /* 80957604 */ ~daNpc_Aru_Param_c(); - - static u8 const m[160]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80956784 */ ~csXyz(); - /* 80956CD8 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 809563C0 */ ~daNpcT_c(); - /* 809568D4 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809572CC */ void ctrlSubFaceMotion(int); - /* 809572D0 */ bool getEyeballLMaterialNo(); - /* 809572D8 */ bool getEyeballRMaterialNo(); - /* 809572E0 */ bool evtEndProc(); - /* 809572E8 */ void afterMoved(); - /* 809572EC */ bool chkXYItems(); - /* 809572F4 */ void decTmr(); - /* 8095730C */ void drawOtherMdl(); - /* 80957310 */ void drawGhost(); - /* 80957314 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8095731C */ bool afterSetMotionAnm(int, int, f32, int); - /* 80957324 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80957354 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80957384 */ void changeAnm(int*, int*); - /* 80957388 */ void changeBck(int*, int*); - /* 8095738C */ void changeBtp(int*, int*); - /* 80957390 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80956CDC */ ~daNpcT_JntAnm_c(); - /* 80956FA8 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809570C4 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809567C0 */ ~daNpcT_ActorMngr_c(); - /* 80956808 */ daNpcT_ActorMngr_c(); -}; - -struct daCow_c { - /* 8065D03C */ void isGuardFad(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80956E24 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); - /* 8002CBBC */ void getTimerMode(); - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80956E94 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80956EF0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGPla { - /* 809543B0 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80956844 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8095688C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80956378 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80951EC8 */ ~J3DTexNoAnm(); - /* 80951F10 */ J3DTexNoAnm(); - /* 80956348 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80951F34 */ ~J3DTexMtxAnm(); - /* 80951F70 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80951E20 */ ~J3DTevKColorAnm(); - /* 80951E5C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80951E74 */ ~J3DTevColorAnm(); - /* 80951EB0 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80951F88 */ ~J3DMatColorAnm(); - /* 80951FC4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80956F60 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -564,7 +138,6 @@ extern "C" u8 mCutList__11daNpc_Aru_c[84]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -700,10 +273,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -723,11 +292,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -738,14 +303,11 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; +// extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void isGuardFad__7daCow_cFv(); @@ -1153,25 +715,30 @@ SECTION_DATA static void* lit_5128[3] = { #pragma pop /* 80957F4C-80957F6C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Aru_MethodTable */ -SECTION_DATA static void* daNpc_Aru_MethodTable[8] = { - (void*)daNpc_Aru_Create__FPv, - (void*)daNpc_Aru_Delete__FPv, - (void*)daNpc_Aru_Execute__FPv, - (void*)daNpc_Aru_IsDelete__FPv, - (void*)daNpc_Aru_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Aru_MethodTable = { + (process_method_func)daNpc_Aru_Create__FPv, + (process_method_func)daNpc_Aru_Delete__FPv, + (process_method_func)daNpc_Aru_Execute__FPv, + (process_method_func)daNpc_Aru_IsDelete__FPv, + (process_method_func)daNpc_Aru_Draw__FPv, }; /* 80957F6C-80957F9C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ARU */ -SECTION_DATA extern void* g_profile_NPC_ARU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02430000, (void*)&g_fpcLf_Method, - (void*)0x00000FD8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01410000, (void*)&daNpc_Aru_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ARU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ARU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Aru_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 321, // mPriority + &daNpc_Aru_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80957F9C-80957FA8 0006B4 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGPla */ @@ -1440,7 +1007,8 @@ asm void daNpc_Aru_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__15J3DTevKColorAnmFv.s" } @@ -1450,7 +1018,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__15J3DTevKColorAnmFv.s" } @@ -1460,7 +1029,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__14J3DTevColorAnmFv.s" } @@ -1470,7 +1040,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__14J3DTevColorAnmFv.s" } @@ -1480,7 +1051,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__11J3DTexNoAnmFv.s" } @@ -1490,7 +1062,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__11J3DTexNoAnmFv.s" } @@ -1500,7 +1073,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__12J3DTexMtxAnmFv.s" } @@ -1510,7 +1084,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__12J3DTexMtxAnmFv.s" } @@ -1520,7 +1095,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__14J3DMatColorAnmFv.s" } @@ -1530,7 +1106,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__14J3DMatColorAnmFv.s" } @@ -2133,7 +1710,8 @@ asm void daNpc_Aru_c::adjustMoveDir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__8cM3dGPlaFv.s" } @@ -2346,7 +1924,8 @@ static bool daNpc_Aru_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/calc__11J3DTexNoAnmCFPUs.s" } @@ -2356,7 +1935,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__10cCcD_GSttsFv.s" } @@ -2366,7 +1946,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__8daNpcT_cFv.s" } @@ -2376,7 +1957,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__4cXyzFv.s" } @@ -2386,7 +1968,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__5csXyzFv.s" } @@ -2396,7 +1979,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2406,7 +1990,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2416,7 +2001,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__8cM3dGCylFv.s" } @@ -2426,7 +2012,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__8cM3dGAabFv.s" } @@ -2438,18 +2025,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/func_809568D4.s" } #pragma pop /* 80956CD8-80956CDC 005638 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2457,14 +2046,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80956DD8-80956DDC 005738 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2472,7 +2063,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2482,7 +2074,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__12dBgS_AcchCirFv.s" } @@ -2492,7 +2085,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__10dCcD_GSttsFv.s" } @@ -2502,7 +2096,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__12dBgS_ObjAcchFv.s" } @@ -2512,7 +2107,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/__dt__12J3DFrameCtrlFv.s" } @@ -2522,8 +2118,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2533,41 +2130,48 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809572CC-809572D0 005C2C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 809572D0-809572D8 005C30 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809572D8-809572E0 005C38 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 809572E0-809572E8 005C40 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 809572E8-809572EC 005C48 0004+00 1/0 0/0 0/0 .text afterMoved__8daNpcT_cFv */ -void daNpcT_c::afterMoved() { +// void daNpcT_c::afterMoved() { +extern "C" asm void afterMoved__8daNpcT_cFv() { /* empty function */ } /* 809572EC-809572F4 005C4C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2575,30 +2179,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8095730C-80957310 005C6C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80957310-80957314 005C70 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80957314-8095731C 005C74 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 8095731C-80957324 005C7C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2607,7 +2216,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2618,29 +2228,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80957384-80957388 005CE4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80957388-8095738C 005CE8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 8095738C-80957390 005CEC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80957390-80957394 005CF0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2790,7 +2405,8 @@ static asm void func_80957654() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_aru/d_a_npc_aru/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.cpp b/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.cpp index 533f8eab76..2252fa4c31 100644 --- a/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.cpp +++ b/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.cpp @@ -1,346 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_ashB -// +/** + * @file d_a_npc_ashB.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80961A68 */ ~daNpcF_c(); - /* 80961CB4 */ daNpcF_c(); - /* 80962028 */ void adjustShapeAngle(); - /* 8096202C */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809619E8 */ ~csXyz(); - /* 80961A24 */ csXyz(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80961A28 */ ~cXyz(); - /* 80961A64 */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80961918 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80961894 */ ~daNpcF_ActorMngr_c(); - /* 809618DC */ daNpcF_ActorMngr_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcAshB_c { - /* 8095DE4C */ daNpcAshB_c(); - /* 8095E060 */ ~daNpcAshB_c(); - /* 8095E224 */ void Create(); - /* 8095E4A0 */ void CreateHeap(); - /* 8095E914 */ void Delete(); - /* 8095E948 */ void Execute(); - /* 8095E96C */ void Draw(); - /* 8095E9C8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8095EB94 */ void createHeapCallBack(fopAc_ac_c*); - /* 8095EBB4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8095EC00 */ void setExpressionAnm(int, bool); - /* 8095EE00 */ void setExpressionBtp(int); - /* 8095EEE0 */ void setMotionAnm(int, f32); - /* 8095F0A4 */ void reset(); - /* 8095F21C */ void setAction(bool (daNpcAshB_c::*)(void*)); - /* 8095F2C4 */ void wait(void*); - /* 8095FC70 */ void setMotion(int, f32, int); - /* 8095FD34 */ void setExpression(int, f32); - /* 8095FD9C */ void talk(void*); - /* 809602E0 */ void demo(void*); - /* 809604C8 */ void EvCut_Appear(int); - /* 80960A60 */ void setParam(); - /* 80960AE8 */ void main(); - /* 80960D64 */ void playMotion(); - /* 80961188 */ void ctrlBtk(); - /* 80961264 */ void setAttnPos(); - /* 80961574 */ void lookat(); - /* 80961770 */ void drawOtherMdls(); - /* 809617F8 */ bool drawDbgInfo(); - - static u8 mEvtSeqList[24]; -}; - -struct daNpcAshB_Param_c { - /* 80962078 */ ~daNpcAshB_Param_c(); - - static u8 const m[112]; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80961F14 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80961F70 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80961EA4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8095DFD0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8095E018 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80962030 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80961800 */ void func_80961800(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 8095E800 */ ~J3DTexNoAnm(); - /* 8095E848 */ J3DTexNoAnm(); - /* 80960A30 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8095E86C */ ~J3DTexMtxAnm(); - /* 8095E8A8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8095E758 */ ~J3DTevKColorAnm(); - /* 8095E794 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8095E7AC */ ~J3DTevColorAnm(); - /* 8095E7E8 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8095E8C0 */ ~J3DMatColorAnm(); - /* 8095E8FC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80961FE0 */ ~J3DFrameCtrl(); -}; // // Forward References: @@ -528,9 +193,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -545,11 +207,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -560,12 +218,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -762,25 +416,30 @@ SECTION_DATA static void* lit_5083[9] = { }; /* 80962680-809626A0 -00001 0020+00 1/0 0/0 0/0 .data daNpcAshB_MethodTable */ -SECTION_DATA static void* daNpcAshB_MethodTable[8] = { - (void*)daNpcAshB_Create__FPv, - (void*)daNpcAshB_Delete__FPv, - (void*)daNpcAshB_Execute__FPv, - (void*)daNpcAshB_IsDelete__FPv, - (void*)daNpcAshB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcAshB_MethodTable = { + (process_method_func)daNpcAshB_Create__FPv, + (process_method_func)daNpcAshB_Delete__FPv, + (process_method_func)daNpcAshB_Execute__FPv, + (process_method_func)daNpcAshB_IsDelete__FPv, + (process_method_func)daNpcAshB_Draw__FPv, }; /* 809626A0-809626D0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ASHB */ -SECTION_DATA extern void* g_profile_NPC_ASHB[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02990000, (void*)&g_fpcLf_Method, - (void*)0x00000DF0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x019C0000, (void*)&daNpcAshB_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ASHB = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ASHB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcAshB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 412, // mPriority + &daNpcAshB_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809626D0-809626DC 0002B8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -895,7 +554,8 @@ asm daNpcAshB_c::daNpcAshB_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__8cM3dGCylFv.s" } @@ -905,7 +565,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__8cM3dGAabFv.s" } @@ -1000,7 +661,8 @@ asm void daNpcAshB_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__15J3DTevKColorAnmFv.s" } @@ -1010,7 +672,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__15J3DTevKColorAnmFv.s" } @@ -1020,7 +683,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__14J3DTevColorAnmFv.s" } @@ -1030,7 +694,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__14J3DTevColorAnmFv.s" } @@ -1040,7 +705,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__11J3DTexNoAnmFv.s" } @@ -1050,7 +716,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__11J3DTexNoAnmFv.s" } @@ -1060,7 +727,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__12J3DTexMtxAnmFv.s" } @@ -1070,7 +738,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__12J3DTexMtxAnmFv.s" } @@ -1080,7 +749,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__14J3DMatColorAnmFv.s" } @@ -1090,7 +760,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__14J3DMatColorAnmFv.s" } @@ -1872,7 +1543,8 @@ static bool daNpcAshB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/calc__11J3DTexNoAnmCFPUs.s" } @@ -2069,7 +1741,8 @@ REGISTER_CTORS(0x8096180C, __sinit_d_a_npc_ashB_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2079,7 +1752,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2089,7 +1763,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__15daNpcF_Lookat_cFv.s" } @@ -2099,14 +1774,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__5csXyzFv.s" } #pragma pop /* 80961A24-80961A28 003CC4 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2114,14 +1791,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__4cXyzFv.s" } #pragma pop /* 80961A64-80961A68 003D04 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2129,7 +1808,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__8daNpcF_cFv.s" } @@ -2139,7 +1819,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__ct__8daNpcF_cFv.s" } @@ -2149,7 +1830,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__12dBgS_AcchCirFv.s" } @@ -2159,7 +1841,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__10dCcD_GSttsFv.s" } @@ -2169,7 +1852,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__12dBgS_ObjAcchFv.s" } @@ -2179,19 +1863,22 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80962028-8096202C 0042C8 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 8096202C-80962030 0042CC 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2199,7 +1886,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ashB/d_a_npc_ashB/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.cpp b/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.cpp index a62b53ffb6..51b48ed701 100644 --- a/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.cpp +++ b/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.cpp @@ -1,467 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_bans -// +/** + * @file d_a_npc_bans.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_bans/d_a_npc_bans.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80966E9C */ ~cXyz(); - /* 80967418 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 80967DAC */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 8096741C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Bans_c { - /* 809628CC */ ~daNpc_Bans_c(); - /* 80962AA0 */ void create(); - /* 80962D6C */ void CreateHeap(); - /* 80963338 */ void Delete(); - /* 8096336C */ void Execute(); - /* 80963444 */ void Draw(); - /* 809634E0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80963500 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80963558 */ void getType(); - /* 809635BC */ void isDelete(); - /* 809636C0 */ void reset(); - /* 80963840 */ void afterJntAnm(int); - /* 809638CC */ void setParam(); - /* 80963A7C */ void checkChangeEvt(); - /* 80963B30 */ void setAfterTalkMotion(); - /* 80963BA8 */ void srchActors(); - /* 80963DB0 */ void evtTalk(); - /* 80963EDC */ void evtCutProc(); - /* 80963FA4 */ void action(); - /* 80964148 */ void beforeMove(); - /* 80964228 */ void setAttnPos(); - /* 809646E0 */ void setCollision(); - /* 80964994 */ bool drawDbgInfo(); - /* 8096499C */ void drawOtherMdl(); - /* 80964AD8 */ void setScoopAnm(int, int, f32); - /* 80964B9C */ void afterSetMotionAnm(int, int, f32, int); - /* 80964BD0 */ void selectAction(); - /* 80964C4C */ void chkAction(int (daNpc_Bans_c::*)(void*)); - /* 80964C78 */ void setAction(int (daNpc_Bans_c::*)(void*)); - /* 80964D20 */ void checkPlayerIn2ndFloorOfBombShop(); - /* 80964DD0 */ void orderAngerEvt(); - /* 80964EB0 */ void getKMsgTagP(); - /* 80964F48 */ void setPrtcls(); - /* 80964FEC */ void cutAnger(int); - /* 809658F8 */ void cutPurchase(int); - /* 80965CCC */ void wait(void*); - /* 809661F0 */ void tend(void*); - /* 80966888 */ void talk(void*); - /* 80966B24 */ void shop(void*); - /* 80967AC4 */ daNpc_Bans_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80967BE4 */ s32 getEyeballMaterialNo(); - /* 80967BEC */ s32 getHeadJointNo(); - /* 80967BF4 */ s32 getNeckJointNo(); - /* 80967BFC */ bool getBackboneJointNo(); - /* 80967C04 */ void checkChangeJoint(int); - /* 80967C14 */ void checkRemoveJoint(int); - - static void* mCutNameList[4]; - static u8 mCutList[48]; -}; - -struct daNpc_Bans_Param_c { - /* 80967C24 */ ~daNpc_Bans_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80966ED8 */ ~csXyz(); - /* 80967318 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80147FD4 */ void srchActor(void*, void*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 8014BFB0 */ void getShopItemTagP(); - /* 80966F14 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8096790C */ void ctrlSubFaceMotion(int); - /* 80967910 */ s32 getFootLJointNo(); - /* 80967918 */ s32 getFootRJointNo(); - /* 80967920 */ bool getEyeballLMaterialNo(); - /* 80967928 */ bool getEyeballRMaterialNo(); - /* 80967930 */ bool evtEndProc(); - /* 80967938 */ void afterMoved(); - /* 8096793C */ bool chkXYItems(); - /* 80967944 */ void decTmr(); - /* 8096795C */ void drawGhost(); - /* 80967960 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80967968 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80967998 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809679C8 */ void changeAnm(int*, int*); - /* 809679CC */ void changeBck(int*, int*); - /* 809679D0 */ void changeBtp(int*, int*); - /* 809679D4 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mSrchName[2 + 2 /* padding */]; - static u8 mFindCount[4]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 8096731C */ ~daNpcT_JntAnm_c(); - /* 809675E8 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80967704 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80966D88 */ ~daNpcT_ActorMngr_c(); - /* 80966DD0 */ daNpcT_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 80967C7C */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80967D94 */ bool getResName2(int); - /* 80967D9C */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80967DA4 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809674D4 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80967530 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80967464 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80966874 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80966E0C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80966E54 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80966D40 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DTexNoAnm { - /* 80963224 */ ~J3DTexNoAnm(); - /* 8096326C */ J3DTexNoAnm(); - /* 80966D10 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80963290 */ ~J3DTexMtxAnm(); - /* 809632CC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8096317C */ ~J3DTevKColorAnm(); - /* 809631B8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809631D0 */ ~J3DTevColorAnm(); - /* 8096320C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809632E4 */ ~J3DMatColorAnm(); - /* 80963320 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809675A0 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; // // Forward References: @@ -588,7 +132,6 @@ extern "C" u8 mCutList__12daNpc_Bans_c[48]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -730,10 +273,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -751,10 +290,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -767,12 +303,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; extern "C" u8 mSrchName__8daNpcT_c[2 + 2 /* padding */]; extern "C" u8 mFindCount__8daNpcT_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; @@ -1131,25 +662,30 @@ SECTION_DATA static void* lit_5251[3] = { }; /* 80968684-809686A4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Bans_MethodTable */ -SECTION_DATA static void* daNpc_Bans_MethodTable[8] = { - (void*)daNpc_Bans_Create__FPv, - (void*)daNpc_Bans_Delete__FPv, - (void*)daNpc_Bans_Execute__FPv, - (void*)daNpc_Bans_IsDelete__FPv, - (void*)daNpc_Bans_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Bans_MethodTable = { + (process_method_func)daNpc_Bans_Create__FPv, + (process_method_func)daNpc_Bans_Delete__FPv, + (process_method_func)daNpc_Bans_Execute__FPv, + (process_method_func)daNpc_Bans_IsDelete__FPv, + (process_method_func)daNpc_Bans_Draw__FPv, }; /* 809686A4-809686D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_BANS */ -SECTION_DATA extern void* g_profile_NPC_BANS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02440000, (void*)&g_fpcLf_Method, - (void*)0x00001270, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01420000, (void*)&daNpc_Bans_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_BANS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_BANS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Bans_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 322, // mPriority + &daNpc_Bans_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809686D4-809686E0 0006D4 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1442,7 +978,8 @@ asm void daNpc_Bans_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__15J3DTevKColorAnmFv.s" } @@ -1452,7 +989,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__15J3DTevKColorAnmFv.s" } @@ -1462,7 +1000,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__14J3DTevColorAnmFv.s" } @@ -1472,7 +1011,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__14J3DTevColorAnmFv.s" } @@ -1482,7 +1022,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__11J3DTexNoAnmFv.s" } @@ -1492,7 +1033,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__11J3DTexNoAnmFv.s" } @@ -1502,7 +1044,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__12J3DTexMtxAnmFv.s" } @@ -1512,7 +1055,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__12J3DTexMtxAnmFv.s" } @@ -1522,7 +1066,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__14J3DMatColorAnmFv.s" } @@ -1532,7 +1077,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__14J3DMatColorAnmFv.s" } @@ -2053,7 +1599,8 @@ asm void daNpc_Bans_c::tend(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/getDistTable__12dAttention_cFi.s" } @@ -2128,7 +1675,8 @@ static bool daNpc_Bans_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/calc__11J3DTexNoAnmCFPUs.s" } @@ -2138,7 +1686,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__10cCcD_GSttsFv.s" } @@ -2148,7 +1697,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2158,7 +1708,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2168,7 +1719,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__8cM3dGCylFv.s" } @@ -2178,7 +1730,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__8cM3dGAabFv.s" } @@ -2188,7 +1741,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__4cXyzFv.s" } @@ -2198,7 +1752,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__5csXyzFv.s" } @@ -2210,18 +1765,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/func_80966F14.s" } #pragma pop /* 80967318-8096731C 004B38 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2229,14 +1786,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80967418-8096741C 004C38 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2244,7 +1803,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2254,7 +1814,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__12dBgS_AcchCirFv.s" } @@ -2264,7 +1825,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__10dCcD_GSttsFv.s" } @@ -2274,7 +1836,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__12dBgS_ObjAcchFv.s" } @@ -2284,7 +1847,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/__dt__12J3DFrameCtrlFv.s" } @@ -2294,8 +1858,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2305,14 +1870,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 8096790C-80967910 00512C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2328,18 +1895,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80967920-80967928 005140 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80967928-80967930 005148 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80967930-80967938 005150 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2349,7 +1919,8 @@ void daNpcT_c::afterMoved() { } /* 8096793C-80967944 00515C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2357,19 +1928,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8096795C-80967960 00517C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80967960-80967968 005180 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2378,7 +1952,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2389,29 +1964,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809679C8-809679CC 0051E8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809679CC-809679D0 0051EC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809679D0-809679D4 0051F0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809679D4-809679D8 0051F4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2559,31 +2139,35 @@ static asm void func_80967C74() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/func_80967C7C.s" } #pragma pop /* 80967D94-80967D9C 0055B4 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 80967D9C-80967DA4 0055BC 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80967DA4-80967DAC 0055C4 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } @@ -2591,7 +2175,8 @@ bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bans/d_a_npc_bans/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.cpp b/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.cpp index 7f9f901a68..83de499954 100644 --- a/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.cpp +++ b/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.cpp @@ -1,424 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_besu -// +/** + * @file d_a_npc_besu.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_besu/d_a_npc_besu.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 8053DDB8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Besu_c { - /* 80536E4C */ ~daNpc_Besu_c(); - /* 8053701C */ void create(); - /* 805372FC */ void CreateHeap(); - /* 80537914 */ void Delete(); - /* 80537948 */ void Execute(); - /* 80537968 */ void Draw(); - /* 805379FC */ void createHeapCallBack(fopAc_ac_c*); - /* 80537A1C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80537A74 */ void getType(); - /* 80537B34 */ void isDelete(); - /* 80537DE4 */ void reset(); - /* 80537FD0 */ void chkNurse(); - /* 80537FFC */ void chkBesu3(); - /* 80538028 */ void afterJntAnm(int); - /* 805380A4 */ void setParam(); - /* 805382D0 */ void checkChangeEvt(); - /* 80538490 */ void setAfterTalkMotion(); - /* 8053853C */ void srchActors(); - /* 805387D0 */ void evtTalk(); - /* 80538870 */ void evtCutProc(); - /* 80538938 */ void action(); - /* 80538B54 */ void beforeMove(); - /* 80538C18 */ void setAttnPos(); - /* 805391B8 */ void setCollision(); - /* 80539494 */ bool drawDbgInfo(); - /* 8053949C */ void drawOtherMdl(); - /* 805395F4 */ void setCupAnm(int, int, f32); - /* 805396C4 */ void afterSetMotionAnm(int, int, f32, int); - /* 805396F8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 805397B0 */ void changeAnm(int*, int*); - /* 80539840 */ void changeBck(int*, int*); - /* 805398DC */ void changeBtp(int*, int*); - /* 80539968 */ void changeBtk(int*, int*); - /* 80539994 */ void selectAction(); - /* 80539ACC */ void chkAction(int (daNpc_Besu_c::*)(void*)); - /* 80539AF8 */ void setAction(int (daNpc_Besu_c::*)(void*)); - /* 80539BA0 */ void mop(int, int); - /* 80539CF4 */ void cutConversationAboutSaru(int); - /* 80539E48 */ void cutConversationAboutPachinko(int); - /* 8053A45C */ void cutConversationAboutWoodSwd(int); - /* 8053A7A0 */ void cutSwdTutorial(int); - /* 8053AA6C */ void cutFindMonkey(int); - /* 8053AF5C */ void cutGetWoodSwd(int); - /* 8053B058 */ void cutCacaricoConversation(int); - /* 8053B250 */ void cutSurprise(int); - /* 8053B530 */ void cutConversationInHotel(int); - /* 8053B820 */ void cutConversationAboutDeathMt(int); - /* 8053BA60 */ void cutConversationAboutGoron(int); - /* 8053BD18 */ void cutNurse(int); - /* 8053BE84 */ void cutClothTry(int); - /* 8053BF60 */ void cutThankYou(int); - /* 8053C08C */ void wait(void*); - /* 8053CAA0 */ void swdTutorial(void*); - /* 8053CBB8 */ void nurse(void*); - /* 8053CF78 */ void giveHotWater(void*); - /* 8053D078 */ void talk(void*); - /* 8053E588 */ daNpc_Besu_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8053E6A8 */ s32 getEyeballMaterialNo(); - /* 8053E6B0 */ s32 getHeadJointNo(); - /* 8053E6B8 */ s32 getNeckJointNo(); - /* 8053E6C0 */ bool getBackboneJointNo(); - /* 8053E6C8 */ void checkChangeJoint(int); - /* 8053E6D8 */ void checkRemoveJoint(int); - - static void* mCutNameList[15]; - static u8 mCutList[180]; -}; - -struct daNpc_Besu_Param_c { - /* 8053E6E8 */ ~daNpc_Besu_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 8053D760 */ ~csXyz(); - /* 8053DCB4 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 8053D724 */ ~cXyz(); - /* 8053DDB4 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8053D39C */ ~daNpcT_c(); - /* 8053D8B0 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8053E2A8 */ void ctrlSubFaceMotion(int); - /* 8053E2AC */ s32 getFootLJointNo(); - /* 8053E2B4 */ s32 getFootRJointNo(); - /* 8053E2BC */ bool getEyeballLMaterialNo(); - /* 8053E2C4 */ bool getEyeballRMaterialNo(); - /* 8053E2CC */ bool evtEndProc(); - /* 8053E2D4 */ void afterMoved(); - /* 8053E2D8 */ bool chkXYItems(); - /* 8053E2E0 */ void decTmr(); - /* 8053E2F8 */ void drawGhost(); - /* 8053E2FC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8053E304 */ void getMotionAnm(daNpcT_motionAnmData_c); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 8053DCB8 */ ~daNpcT_JntAnm_c(); - /* 8053DF84 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 8053E0A0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 8053D79C */ ~daNpcT_ActorMngr_c(); - /* 8053D7E4 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 8053DE70 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8053DECC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 8053DE00 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8053D820 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8053D868 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8053D354 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80537800 */ ~J3DTexNoAnm(); - /* 80537848 */ J3DTexNoAnm(); - /* 8053D324 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8053786C */ ~J3DTexMtxAnm(); - /* 805378A8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80537758 */ ~J3DTevKColorAnm(); - /* 80537794 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 805377AC */ ~J3DTevColorAnm(); - /* 805377E8 */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 805378C0 */ ~J3DMatColorAnm(); - /* 805378FC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8053DF3C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; // // Forward References: @@ -551,7 +138,6 @@ extern "C" u8 mCutList__12daNpc_Besu_c[180]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -685,11 +271,6 @@ extern "C" void show__13J3DShapeTableFv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -711,10 +292,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -725,11 +303,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); extern "C" void checkStartDemo13StbEvt__11daNpc_Len_cFP10fopAc_ac_cfffffff(); @@ -1582,25 +1155,30 @@ SECTION_DATA static void* lit_5770[22] = { }; /* 8053FCAC-8053FCCC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Besu_MethodTable */ -SECTION_DATA static void* daNpc_Besu_MethodTable[8] = { - (void*)daNpc_Besu_Create__FPv, - (void*)daNpc_Besu_Delete__FPv, - (void*)daNpc_Besu_Execute__FPv, - (void*)daNpc_Besu_IsDelete__FPv, - (void*)daNpc_Besu_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Besu_MethodTable = { + (process_method_func)daNpc_Besu_Create__FPv, + (process_method_func)daNpc_Besu_Delete__FPv, + (process_method_func)daNpc_Besu_Execute__FPv, + (process_method_func)daNpc_Besu_IsDelete__FPv, + (process_method_func)daNpc_Besu_Draw__FPv, }; /* 8053FCCC-8053FCFC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_BESU */ -SECTION_DATA extern void* g_profile_NPC_BESU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02450000, (void*)&g_fpcLf_Method, - (void*)0x00001138, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01430000, (void*)&daNpc_Besu_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_BESU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_BESU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Besu_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 323, // mPriority + &daNpc_Besu_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8053FCFC-8053FD08 0011A0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1864,7 +1442,8 @@ asm void daNpc_Besu_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__15J3DTevKColorAnmFv.s" } @@ -1874,7 +1453,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__15J3DTevKColorAnmFv.s" } @@ -1884,7 +1464,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__14J3DTevColorAnmFv.s" } @@ -1894,7 +1475,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__14J3DTevColorAnmFv.s" } @@ -1904,7 +1486,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__11J3DTexNoAnmFv.s" } @@ -1914,7 +1497,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__11J3DTexNoAnmFv.s" } @@ -1924,7 +1508,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__12J3DTexMtxAnmFv.s" } @@ -1934,7 +1519,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__12J3DTexMtxAnmFv.s" } @@ -1944,7 +1530,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__14J3DMatColorAnmFv.s" } @@ -1954,7 +1541,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__14J3DMatColorAnmFv.s" } @@ -2818,7 +2406,8 @@ static bool daNpc_Besu_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/calc__11J3DTexNoAnmCFPUs.s" } @@ -2828,7 +2417,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__10cCcD_GSttsFv.s" } @@ -2838,7 +2428,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__8daNpcT_cFv.s" } @@ -2848,7 +2439,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__4cXyzFv.s" } @@ -2858,7 +2450,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__5csXyzFv.s" } @@ -2868,7 +2461,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2878,7 +2472,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2888,7 +2483,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__8cM3dGCylFv.s" } @@ -2898,7 +2494,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__8cM3dGAabFv.s" } @@ -2910,18 +2507,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/func_8053D8B0.s" } #pragma pop /* 8053DCB4-8053DCB8 006F54 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2929,14 +2528,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 8053DDB4-8053DDB8 007054 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2944,7 +2545,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2954,7 +2556,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__12dBgS_AcchCirFv.s" } @@ -2964,7 +2567,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__10dCcD_GSttsFv.s" } @@ -2974,7 +2578,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__12dBgS_ObjAcchFv.s" } @@ -2984,7 +2589,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/__dt__12J3DFrameCtrlFv.s" } @@ -2994,8 +2600,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3005,14 +2612,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 8053E2A8-8053E2AC 007548 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -3028,18 +2637,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 8053E2BC-8053E2C4 00755C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8053E2C4-8053E2CC 007564 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 8053E2CC-8053E2D4 00756C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -3049,7 +2661,8 @@ void daNpcT_c::afterMoved() { } /* 8053E2D8-8053E2E0 007578 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3057,19 +2670,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8053E2F8-8053E2FC 007598 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 8053E2FC-8053E304 00759C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3078,7 +2694,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_besu/d_a_npc_besu/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } diff --git a/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.cpp b/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.cpp index 35996f4b12..1aa13379ea 100644 --- a/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.cpp +++ b/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.cpp @@ -1,285 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_blue_ns -// +/** + * @file d_a_npc_blue_ns.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80152F40 */ void playAllAnm(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8096C164 */ ~daNpcF_c(); - /* 8096C3B0 */ daNpcF_c(); - /* 8096C724 */ void setCollisions(); - /* 8096C728 */ bool ctrlBtk(); - /* 8096C730 */ bool setExpressionAnm(int, bool); - /* 8096C738 */ bool setExpressionBtp(int); - /* 8096C740 */ void setExpression(int, f32); - /* 8096C744 */ void drawOtherMdls(); -}; - -struct csXyz { - /* 8096C0E4 */ ~csXyz(); - /* 8096C120 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 8096C014 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 8096BF90 */ ~daNpcF_ActorMngr_c(); - /* 8096BFD8 */ daNpcF_ActorMngr_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcBlueNS_c { - /* 8096896C */ daNpcBlueNS_c(); - /* 80968B80 */ ~daNpcBlueNS_c(); - /* 80968D44 */ void Create(); - /* 80968FE4 */ void CreateHeap(); - /* 80969138 */ void isDelete(); - /* 809691A8 */ void Delete(); - /* 809691DC */ void Execute(); - /* 80969200 */ void _Execute(); - /* 80969468 */ void callEvt_changeYami(); - /* 80969504 */ void create_Yamijin(int); - /* 809695F0 */ void col_check(); - /* 80969698 */ void holyball_check_main(fopAc_ac_c*); - /* 80969870 */ void Draw(); - /* 809699D0 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80969B68 */ void createHeapCallBack(fopAc_ac_c*); - /* 80969B88 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80969BD4 */ void setParam(); - /* 80969C48 */ void srchActor(); - /* 80969C90 */ void srchHollyBall(); - /* 80969CF8 */ void srchTagYami(); - /* 80969D60 */ void _search_Tag(void*, void*); - /* 80969DE4 */ void _search_HollyBall_Y(void*, void*); - /* 80969E9C */ void _search_HollyBall_G(void*, void*); - /* 80969F54 */ void main(); - /* 8096A090 */ void setAttnPos(); - /* 8096A238 */ void setMotionAnm(int, f32); - /* 8096A308 */ void setMotion(int, f32, int); - /* 8096A350 */ bool drawDbgInfo(); - /* 8096A358 */ void reset(); - /* 8096A518 */ void playMotion(); - /* 8096A750 */ void setAction(int (daNpcBlueNS_c::*)(int)); - /* 8096A7F8 */ void setLookMode(int); - /* 8096A81C */ void lookat(); - /* 8096A9FC */ void step(s16, int); - /* 8096AAF0 */ void chkFindPlayer(); - /* 8096ABD4 */ void wait(int); - /* 8096AD70 */ void down(int); - /* 8096AE5C */ void talk(int); - /* 8096AFC8 */ void demo(int); - /* 8096B204 */ void ChgPtclDisp(); - /* 8096B320 */ void downSE(); - /* 8096B3D8 */ void lightsowrdSE(); - /* 8096B490 */ void appearSE(); - /* 8096B548 */ void _Evt_ChgYami_Chibi(int); - /* 8096B5F0 */ void _Evt_ChgYami_Chibi_CutInit(int const&); - /* 8096B688 */ void _Evt_ChgYami_Chibi_CutMain(int const&); - /* 8096B7B8 */ void _Evt_ChgYami_Debu(int); - /* 8096B860 */ void _Evt_ChgYami_Debu_CutInit(int const&); - /* 8096B8F8 */ void _Evt_ChgYami_Debu_CutMain(int const&); - /* 8096BA28 */ void _Evt_ChgYami_Noppo(int); - /* 8096BAD0 */ void _Evt_ChgYami_Noppo_CutInit(int const&); - /* 8096BB68 */ void _Evt_ChgYami_Noppo_CutMain(int const&); - /* 8096BC98 */ void _Evt_ChgYami_STNoppo(int); - /* 8096BD40 */ void _Evt_ChgYami_STNoppo_CutInit(int const&); - /* 8096BDD8 */ void _Evt_ChgYami_STNoppo_CutMain(int const&); - /* 8096C8B0 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[84]; -}; - -struct daNpcBlueNS_Param_c { - /* 8096C8B4 */ ~daNpcBlueNS_Param_c(); - - static u8 const m[112]; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8096C66C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 8096C5A0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8096C6DC */ ~J3DFrameCtrl(); -}; // // Forward References: @@ -485,8 +212,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -498,8 +223,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcF_c[18]; @@ -507,10 +230,7 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -730,25 +450,30 @@ SECTION_DATA static void* lit_5193[3] = { #pragma pop /* 8096CD58-8096CD78 -00001 0020+00 1/0 0/0 0/0 .data daNpcBlueNS_MethodTable */ -SECTION_DATA static void* daNpcBlueNS_MethodTable[8] = { - (void*)daNpcBlueNS_Create__FPv, - (void*)daNpcBlueNS_Delete__FPv, - (void*)daNpcBlueNS_Execute__FPv, - (void*)daNpcBlueNS_IsDelete__FPv, - (void*)daNpcBlueNS_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcBlueNS_MethodTable = { + (process_method_func)daNpcBlueNS_Create__FPv, + (process_method_func)daNpcBlueNS_Delete__FPv, + (process_method_func)daNpcBlueNS_Execute__FPv, + (process_method_func)daNpcBlueNS_IsDelete__FPv, + (process_method_func)daNpcBlueNS_Draw__FPv, }; /* 8096CD78-8096CDA8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_BLUENS */ -SECTION_DATA extern void* g_profile_NPC_BLUENS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02400000, (void*)&g_fpcLf_Method, - (void*)0x00000E14, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013E0000, (void*)&daNpcBlueNS_MethodTable, - (void*)0x08044180, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_BLUENS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_BLUENS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcBlueNS_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 318, // mPriority + &daNpcBlueNS_MethodTable, // sub_method + 0x08044180, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8096CDA8-8096CDF0 000208 0048+00 2/2 0/0 0/0 .data __vt__13daNpcBlueNS_c */ @@ -1948,7 +1673,8 @@ static bool daNpcBlueNS_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1958,7 +1684,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1968,7 +1695,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__15daNpcF_Lookat_cFv.s" } @@ -1978,14 +1706,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__5csXyzFv.s" } #pragma pop /* 8096C120-8096C124 0038A0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2010,7 +1740,8 @@ extern "C" asm void __ct__4cXyzFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__8daNpcF_cFv.s" } @@ -2020,7 +1751,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__ct__8daNpcF_cFv.s" } @@ -2030,7 +1762,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__12dBgS_AcchCirFv.s" } @@ -2051,7 +1784,8 @@ extern "C" asm void __dt__10dCcD_GSttsFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__12dBgS_ObjAcchFv.s" } @@ -2061,39 +1795,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 8096C724-8096C728 003EA4 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 8096C728-8096C730 003EA8 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 8096C730-8096C738 003EB0 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 8096C738-8096C740 003EB8 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 8096C740-8096C744 003EC0 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 8096C744-8096C748 003EC4 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.cpp b/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.cpp index 9976ec3aed..ad3649f2fb 100644 --- a/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.cpp +++ b/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.cpp @@ -1,416 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_bou -// +/** + * @file d_a_npc_bou.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_bou/d_a_npc_bou.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpc_Jagar_c { - /* 80A150AC */ void getType(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80971FD0 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Bou_c { - /* 8096CF8C */ ~daNpc_Bou_c(); - /* 8096D0D8 */ void create(); - /* 8096D38C */ void CreateHeap(); - /* 8096D7B8 */ void Delete(); - /* 8096D7EC */ void Execute(); - /* 8096D80C */ void Draw(); - /* 8096D8A0 */ void createHeapCallBack(fopAc_ac_c*); - /* 8096D8C0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8096D918 */ void srchCow(void*, void*); - /* 8096D9B4 */ void getCowP(); - /* 8096DA78 */ void getType(); - /* 8096DADC */ void isDelete(); - /* 8096DBBC */ void reset(); - /* 8096DD44 */ void afterJntAnm(int); - /* 8096DDC8 */ void setParam(); - /* 8096DF9C */ void checkChangeEvt(); - /* 8096E0EC */ void setAfterTalkMotion(); - /* 8096E18C */ void srchActors(); - /* 8096E27C */ void evtTalk(); - /* 8096E31C */ bool evtEndProc(); - /* 8096E324 */ void evtCutProc(); - /* 8096E3EC */ void action(); - /* 8096E7E0 */ void beforeMove(); - /* 8096E8A4 */ void setAttnPos(); - /* 8096EB14 */ void setCollision(); - /* 8096EC6C */ bool drawDbgInfo(); - /* 8096EC74 */ void changeAnm(int*, int*); - /* 8096ECC0 */ void selectAction(); - /* 8096ED3C */ void chkAction(int (daNpc_Bou_c::*)(void*)); - /* 8096ED68 */ void setAction(int (daNpc_Bou_c::*)(void*)); - /* 8096EE10 */ void cutWildGoat(int); - /* 8096F2E4 */ void cutWildGoatSuccess(int); - /* 8096F510 */ void cutWildGoatFailure(int); - /* 8096F758 */ void cutSpeakTo(int); - /* 8096F9A4 */ void cutConversationWithBou(int); - /* 8096FB78 */ void cutConfidentialConversation(int); - /* 8096FE40 */ void cutFindWolf(int); - /* 80970278 */ void cutMeetingAgain(int); - /* 809709EC */ void wait(void*); - /* 80970DFC */ void talkwithJagar(void*); - /* 80970F9C */ void talk(void*); - /* 809726D4 */ daNpc_Bou_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809727B4 */ bool getEyeballMaterialNo(); - /* 809727BC */ s32 getHeadJointNo(); - /* 809727C4 */ s32 getNeckJointNo(); - /* 809727CC */ bool getBackboneJointNo(); - /* 809727D4 */ void checkChangeJoint(int); - /* 809727E4 */ void checkRemoveJoint(int); - - static void* mCutNameList[9]; - static u8 mCutList[108]; -}; - -struct daNpc_Bou_Param_c { - /* 809727F4 */ ~daNpc_Bou_Param_c(); - - static u8 const m[156]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80971930 */ ~csXyz(); - /* 80971ECC */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 809718F4 */ ~cXyz(); - /* 80971FCC */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BB00 */ void getActorDistance(fopAc_ac_c*, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8097156C */ ~daNpcT_c(); - /* 80971AC8 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809724C0 */ void ctrlSubFaceMotion(int); - /* 809724C4 */ s32 getFootLJointNo(); - /* 809724CC */ s32 getFootRJointNo(); - /* 809724D4 */ bool getEyeballLMaterialNo(); - /* 809724DC */ bool getEyeballRMaterialNo(); - /* 809724E4 */ void afterMoved(); - /* 809724E8 */ bool chkXYItems(); - /* 809724F0 */ void decTmr(); - /* 80972508 */ void drawOtherMdl(); - /* 8097250C */ void drawGhost(); - /* 80972510 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80972518 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80972520 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80972550 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80972580 */ void changeBck(int*, int*); - /* 80972584 */ void changeBtp(int*, int*); - /* 80972588 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 809719B4 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80971ED0 */ ~daNpcT_JntAnm_c(); - /* 8097219C */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809722B8 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 8097196C */ ~daNpcT_ActorMngr_c(); - /* 809719FC */ daNpcT_ActorMngr_c(); -}; - -struct dSv_player_collect_c { - /* 80034208 */ void isCollect(int, u8) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80972088 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809720E4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80972018 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80971A38 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80971A80 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80971524 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 8096D6A4 */ ~J3DTexNoAnm(); - /* 8096D6EC */ J3DTexNoAnm(); - /* 809714F4 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8096D710 */ ~J3DTexMtxAnm(); - /* 8096D74C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8096D5FC */ ~J3DTevKColorAnm(); - /* 8096D638 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8096D650 */ ~J3DTevColorAnm(); - /* 8096D68C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8096D764 */ ~J3DMatColorAnm(); - /* 8096D7A0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80972154 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -532,7 +127,6 @@ extern "C" u8 mCutList__11daNpc_Bou_c[108]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -659,11 +253,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -685,10 +274,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -699,11 +285,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1124,25 +707,30 @@ SECTION_DATA static void* lit_5286[9] = { }; /* 80973274-80973294 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Bou_MethodTable */ -SECTION_DATA static void* daNpc_Bou_MethodTable[8] = { - (void*)daNpc_Bou_Create__FPv, - (void*)daNpc_Bou_Delete__FPv, - (void*)daNpc_Bou_Execute__FPv, - (void*)daNpc_Bou_IsDelete__FPv, - (void*)daNpc_Bou_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Bou_MethodTable = { + (process_method_func)daNpc_Bou_Create__FPv, + (process_method_func)daNpc_Bou_Delete__FPv, + (process_method_func)daNpc_Bou_Execute__FPv, + (process_method_func)daNpc_Bou_IsDelete__FPv, + (process_method_func)daNpc_Bou_Draw__FPv, }; /* 80973294-809732C4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_BOU */ -SECTION_DATA extern void* g_profile_NPC_BOU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02460000, (void*)&g_fpcLf_Method, - (void*)0x00000FFC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01440000, (void*)&daNpc_Bou_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_BOU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_BOU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Bou_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 324, // mPriority + &daNpc_Bou_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809732C4-809732D0 000834 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1411,7 +999,8 @@ asm void daNpc_Bou_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__15J3DTevKColorAnmFv.s" } @@ -1421,7 +1010,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__15J3DTevKColorAnmFv.s" } @@ -1431,7 +1021,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__14J3DTevColorAnmFv.s" } @@ -1441,7 +1032,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__14J3DTevColorAnmFv.s" } @@ -1451,7 +1043,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__11J3DTexNoAnmFv.s" } @@ -1461,7 +1054,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__11J3DTexNoAnmFv.s" } @@ -1471,7 +1065,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__12J3DTexMtxAnmFv.s" } @@ -1481,7 +1076,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__12J3DTexMtxAnmFv.s" } @@ -1491,7 +1087,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__14J3DMatColorAnmFv.s" } @@ -1501,7 +1098,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__14J3DMatColorAnmFv.s" } @@ -2080,7 +1678,8 @@ static bool daNpc_Bou_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/calc__11J3DTexNoAnmCFPUs.s" } @@ -2090,7 +1689,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__10cCcD_GSttsFv.s" } @@ -2100,7 +1700,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__8daNpcT_cFv.s" } @@ -2110,7 +1711,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__4cXyzFv.s" } @@ -2120,7 +1722,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__5csXyzFv.s" } @@ -2130,7 +1733,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2140,7 +1744,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__13daNpcT_Path_cFv.s" } @@ -2150,7 +1755,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2160,7 +1766,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__8cM3dGCylFv.s" } @@ -2170,7 +1777,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__8cM3dGAabFv.s" } @@ -2182,18 +1790,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/func_80971AC8.s" } #pragma pop /* 80971ECC-80971ED0 00502C 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2201,14 +1811,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80971FCC-80971FD0 00512C 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2216,7 +1828,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2226,7 +1839,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__12dBgS_AcchCirFv.s" } @@ -2236,7 +1850,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__10dCcD_GSttsFv.s" } @@ -2246,7 +1861,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__12dBgS_ObjAcchFv.s" } @@ -2256,7 +1872,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/__dt__12J3DFrameCtrlFv.s" } @@ -2266,8 +1883,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2277,14 +1895,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809724C0-809724C4 005620 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2300,13 +1920,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 809724D4-809724DC 005634 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809724DC-809724E4 00563C 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2316,7 +1938,8 @@ void daNpcT_c::afterMoved() { } /* 809724E8-809724F0 005648 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2324,30 +1947,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80972508-8097250C 005668 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 8097250C-80972510 00566C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80972510-80972518 005670 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80972518-80972520 005678 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2356,7 +1984,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2367,24 +1996,28 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bou/d_a_npc_bou/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80972580-80972584 0056E0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80972584-80972588 0056E4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80972588-8097258C 0056E8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.cpp b/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.cpp index f0ffa4e6b1..7391fd09a8 100644 --- a/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.cpp +++ b/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.cpp @@ -1,363 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_bouS -// +/** + * @file d_a_npc_bouS.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS.h" #include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80977D54 */ ~cXyz(); - /* 80977D90 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoGph_gInf_c { - /* 800080D0 */ void fadeOut(f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcWrestler_c { - /* 80B301BC */ void checkStartUp(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80977D94 */ ~daNpcF_c(); - /* 80977FE0 */ daNpcF_c(); - /* 80978354 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80977D14 */ ~csXyz(); - /* 80977D50 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80977C44 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80977BC0 */ ~daNpcF_ActorMngr_c(); - /* 80977C08 */ daNpcF_ActorMngr_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcBouS_c { - /* 8097354C */ daNpcBouS_c(); - /* 80973760 */ ~daNpcBouS_c(); - /* 80973948 */ void Create(); - /* 80973B9C */ void CreateHeap(); - /* 80973FC8 */ void Delete(); - /* 80973FFC */ void Execute(); - /* 80974020 */ void Draw(); - /* 80974090 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809742BC */ void createHeapCallBack(fopAc_ac_c*); - /* 809742DC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80974328 */ void setExpressionAnm(int, bool); - /* 80974514 */ void setExpressionBtp(int); - /* 809745F4 */ void setMotionAnm(int, f32); - /* 80974730 */ void reset(); - /* 809748F0 */ void setAction(bool (daNpcBouS_c::*)(void*)); - /* 80974A04 */ void checkInstructionTag(fopAc_ac_c*); - /* 80974A28 */ void wait(void*); - /* 809750BC */ void setMotion(int, f32, int); - /* 80975104 */ void setExpression(int, f32); - /* 80975130 */ void talk(void*); - /* 80975748 */ void demo(void*); - /* 80975930 */ void instruction(void*); - /* 80975ED8 */ void checkIntroDemoStart(); - /* 80975FDC */ void EvCut_BousIntroSumo1(int); - /* 80976284 */ void EvCut_BousIntroSumo2(int); - /* 80976654 */ void EvCut_BousIntroSumo3(int); - /* 80976C00 */ void setParam(); - /* 80976C9C */ void main(); - /* 80976EEC */ void playMotion(); - /* 80977368 */ void ctrlBtk(); - /* 80977444 */ void setAttnPos(); - /* 809778D8 */ void lookat(); - /* 80977AB8 */ bool drawDbgInfo(); - /* 80977AC0 */ void drawOtherMdls(); - /* 809783A0 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[48]; -}; - -struct daNpcBouS_Param_c { - /* 809783A4 */ ~daNpcBouS_Param_c(); - - static u8 const m[140]; -}; - -struct dSv_memBit_c { - /* 800347E8 */ void isTbox(int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80978240 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dCamera_c { - /* 801614D0 */ void Stop(); - /* 80180AE0 */ void Set(cXyz, cXyz, f32, s16); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8097829C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809781D0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809736D0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80973718 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80978358 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80977AC4 */ void func_80977AC4(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80973EB4 */ ~J3DTexNoAnm(); - /* 80973EFC */ J3DTexNoAnm(); - /* 80976BD0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80973F20 */ ~J3DTexMtxAnm(); - /* 80973F5C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80973E0C */ ~J3DTevKColorAnm(); - /* 80973E48 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80973E60 */ ~J3DTevColorAnm(); - /* 80973E9C */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80973F74 */ ~J3DMatColorAnm(); - /* 80973FB0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8097830C */ ~J3DFrameCtrl(); -}; +#include "d/d_camera.h" // // Forward References: @@ -563,9 +211,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -580,11 +225,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -595,11 +236,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); extern "C" void checkStartUp__15daNpcWrestler_cFv(); @@ -849,25 +487,30 @@ SECTION_DATA static void* lit_5429[3] = { }; /* 80978A3C-80978A5C -00001 0020+00 1/0 0/0 0/0 .data daNpcBouS_MethodTable */ -SECTION_DATA static void* daNpcBouS_MethodTable[8] = { - (void*)daNpcBouS_Create__FPv, - (void*)daNpcBouS_Delete__FPv, - (void*)daNpcBouS_Execute__FPv, - (void*)daNpcBouS_IsDelete__FPv, - (void*)daNpcBouS_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcBouS_MethodTable = { + (process_method_func)daNpcBouS_Create__FPv, + (process_method_func)daNpcBouS_Delete__FPv, + (process_method_func)daNpcBouS_Execute__FPv, + (process_method_func)daNpcBouS_IsDelete__FPv, + (process_method_func)daNpcBouS_Draw__FPv, }; /* 80978A5C-80978A8C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_BOU_S */ -SECTION_DATA extern void* g_profile_NPC_BOU_S[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02470000, (void*)&g_fpcLf_Method, - (void*)0x00000E00, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01450000, (void*)&daNpcBouS_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_BOU_S = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_BOU_S, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcBouS_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 325, // mPriority + &daNpcBouS_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80978A8C-80978A98 0002E8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -982,7 +625,8 @@ asm daNpcBouS_c::daNpcBouS_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__8cM3dGCylFv.s" } @@ -992,7 +636,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__8cM3dGAabFv.s" } @@ -1089,7 +734,8 @@ asm void daNpcBouS_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__15J3DTevKColorAnmFv.s" } @@ -1099,7 +745,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__15J3DTevKColorAnmFv.s" } @@ -1109,7 +756,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__14J3DTevColorAnmFv.s" } @@ -1119,7 +767,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__14J3DTevColorAnmFv.s" } @@ -1129,7 +778,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__11J3DTexNoAnmFv.s" } @@ -1139,7 +789,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__11J3DTexNoAnmFv.s" } @@ -1149,7 +800,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__12J3DTexMtxAnmFv.s" } @@ -1159,7 +811,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__12J3DTexMtxAnmFv.s" } @@ -1169,7 +822,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__14J3DMatColorAnmFv.s" } @@ -1179,7 +833,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__14J3DMatColorAnmFv.s" } @@ -2137,7 +1792,8 @@ static bool daNpcBouS_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/calc__11J3DTexNoAnmCFPUs.s" } @@ -2534,7 +2190,8 @@ REGISTER_CTORS(0x80977AD0, __sinit_d_a_npc_bouS_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2544,7 +2201,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2554,7 +2212,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__15daNpcF_Lookat_cFv.s" } @@ -2564,14 +2223,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__5csXyzFv.s" } #pragma pop /* 80977D50-80977D54 0048F0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2579,14 +2240,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__4cXyzFv.s" } #pragma pop /* 80977D90-80977D94 004930 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2594,7 +2257,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__8daNpcF_cFv.s" } @@ -2604,7 +2268,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__ct__8daNpcF_cFv.s" } @@ -2614,7 +2279,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__12dBgS_AcchCirFv.s" } @@ -2624,7 +2290,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__10dCcD_GSttsFv.s" } @@ -2634,7 +2301,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__12dBgS_ObjAcchFv.s" } @@ -2644,14 +2312,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80978354-80978358 004EF4 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2659,7 +2329,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_bouS/d_a_npc_bouS/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.cpp b/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.cpp index a9aed2e64f..9aa311247c 100644 --- a/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.cpp +++ b/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.cpp @@ -1,358 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_cdn3 -// +/** + * @file d_a_npc_cdn3.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfSO { - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTagSchedule_c {}; - -struct daPy_py_c { - /* 8015F424 */ void checkNowWolfEyeUp(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 8097EFE8 */ ~daNpcT_ActorMngr_c(); -}; - -struct daNpcCdn3_c { - struct Mode_e {}; - - /* 80978DD4 */ void setAction(daNpcCdn3_c::Mode_e); - /* 80978E18 */ void callInit(); - /* 80978E40 */ void callExecute(); - /* 80978E6C */ void initWait(); - /* 80978ED0 */ void executeWait(); - /* 80979080 */ void initPath(); - /* 80979144 */ void executePath(); - /* 80979A34 */ void initTalk(); - /* 80979B2C */ void executeTalk(); - /* 80979F08 */ void initEscape(); - /* 8097A028 */ void executeEscape(); - /* 8097A398 */ void initFear(); - /* 8097A518 */ void executeFear(); - /* 8097A60C */ void initFear2(); - /* 8097A6AC */ void executeFear2(); - /* 8097A724 */ void initFight(); - /* 8097A7E0 */ void executeFight(); - /* 8097A960 */ void initRelief(); - /* 8097A9E4 */ void executeRelief(); - /* 8097ABDC */ void setAngle(); - /* 8097ABE8 */ void pathMoveF(); - /* 8097AF14 */ void ctrlMsgAnm(); - /* 8097B04C */ void searchNextScheduleTagSub(fopAc_ac_c*); - /* 8097B194 */ void searchFirstScheduleTagSub(fopAc_ac_c*); - /* 8097B288 */ void checkSchedule(); - /* 8097B38C */ void setSchedule(daTagSchedule_c*); - /* 8097B5A8 */ void isInShop(); - /* 8097B60C */ void isChairStyle(); - /* 8097B684 */ void isNoTurnTalk(); - /* 8097B6D0 */ void waita(void*); - /* 8097B754 */ void talka(void*); - /* 8097B7D8 */ void waitwall(void*); - /* 8097B85C */ void talkwall(void*); - /* 8097B8E0 */ void talkbwall(void*); - /* 8097B964 */ void talkb(void*); - /* 8097B9E8 */ void talkc(void*); - /* 8097BA6C */ void waitb(void*); - /* 8097BAF0 */ void sitwaita(void*); - /* 8097BB74 */ void sittalka(void*); - /* 8097BBF8 */ void sittalkab(void*); - /* 8097BC7C */ void sitwaitb(void*); - /* 8097BD00 */ void sittalkb(void*); - /* 8097BD84 */ void sittalkbb(void*); - /* 8097BE08 */ void looka(void*); - /* 8097BE8C */ void lookb(void*); - /* 8097BF10 */ void playm(void*); - /* 8097C070 */ void turnr(void*); - /* 8097C12C */ void turnl(void*); - /* 8097C1E8 */ void walka(void*); - /* 8097C250 */ void walkb(void*); - /* 8097C2B8 */ void runa(void*); - /* 8097C320 */ void runb(void*); - /* 8097C388 */ void browsea(void*); - /* 8097C40C */ void browseb(void*); - /* 8097C490 */ void dance(void*); - /* 8097C5B0 */ void ladytalka(void*); - /* 8097C634 */ void ladytalkb(void*); - /* 8097C6B8 */ void normtalka(void*); - /* 8097C73C */ void normtalkb(void*); - /* 8097C7C0 */ void sellme(void*); - /* 8097C844 */ void sing(void*); - /* 8097C910 */ void create(); - /* 8097CC58 */ void create_init(); - /* 8097D078 */ void setMtx(); - /* 8097D120 */ void lookat(); - /* 8097D684 */ ~daNpcCdn3_c(); - /* 8097D748 */ void execute(); - /* 8097DABC */ void checkTimeSchedule(); - - static u8 ActionTable[192]; - static void* m_funcTbl[44]; - static u8 m_seq00_funcTbl[24]; - static u8 m_seq01_funcTbl[24]; - static u8 m_seq02_funcTbl[24]; - static u8 m_seq03_funcTbl[24]; - static u8 m_seq04_funcTbl[24]; - static u8 m_seq05_funcTbl[48]; - static u8 m_seq06_funcTbl[48]; - static u8 m_seq07_funcTbl[24]; - static u8 m_seq08_funcTbl[84]; - static u8 m_seq09_funcTbl[24]; - static u8 m_seq10_funcTbl[24]; - static u8 m_seq11_funcTbl[72]; - static u8 m_seq12_funcTbl[24]; - static u8 m_seq13_funcTbl[72]; - static u8 m_seq14_funcTbl[24]; - static u8 m_seq15_funcTbl[24]; - static u8 m_seq16_funcTbl[84]; - static u8 m_seq17_funcTbl[24]; - static u8 m_seq18_funcTbl[24]; - static u8 m_seq19_funcTbl[84]; - static u8 m_seq20_funcTbl[24]; - static u8 m_seq21_funcTbl[24]; - static u8 m_seq22_funcTbl[48]; - static u8 m_seq23_funcTbl[84]; - static u8 m_seq24_funcTbl[60]; - static u8 m_seq25_funcTbl[84]; - static u8 m_seq26_funcTbl[36]; - static u8 m_seq27_funcTbl[24]; - static u8 m_seq28_funcTbl[36]; - static u8 m_seq29_funcTbl[36]; - static u8 m_seq30_funcTbl[72]; - static u8 m_seq31_funcTbl[72]; - static u8 m_seq32_funcTbl[84]; - static u8 m_seq33_funcTbl[84]; - static u8 m_seq34_funcTbl[108]; - static u8 m_seq35_funcTbl[24]; - static u8 m_seq36_funcTbl[48]; - static u8 m_seq37_funcTbl[24]; - static u8 m_seq38_funcTbl[24]; - static u8 m_seq39_funcTbl[24]; - static u8 m_seq40_funcTbl[36]; - static u8 m_seq41_funcTbl[24]; - static u8 m_seq42_funcTbl[24]; - static u8 m_seq43_funcTbl[36]; -}; - -struct J3DModel {}; - -struct J3DAnmTransformKey {}; - -struct daNpcCd2_c { - /* 80157D00 */ void NpcCreate(int); - /* 80157F28 */ void ObjCreate(int); - /* 80157F68 */ void ChairCreate(f32); - /* 801580A8 */ void isM_(); - /* 801580F0 */ void getAnmP(int, int); - /* 80158420 */ void setAttention(int); - /* 80158BB8 */ void loadResrc(int, int); - /* 80158CBC */ void removeResrc(int, int); - /* 80158D88 */ void setEnvTevCol(); - /* 80158DE4 */ void setRoomNo(); - /* 80158E28 */ void animation(int); - /* 80158F00 */ void setAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80158F6C */ void drawShadow(f32); - /* 80158FF0 */ void drawObj(int, J3DModel*, f32); - /* 801590FC */ void drawNpc(); - /* 801597C0 */ void getEscapeTag(); - /* 80159818 */ void checkFearSituation(); - /* 8097F030 */ ~daNpcCd2_c(); - - static u8 const m_cylDat[68]; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); - /* 8097D614 */ ~csXyz(); -}; - -struct cXyz { - /* 809799F8 */ ~cXyz(); - - static f32 Zero[3]; -}; - -struct dNpcLib_lookat_c { - /* 80251314 */ dNpcLib_lookat_c(); - /* 8025140C */ void init(J3DModel*, int*, csXyz*, csXyz*); - /* 80251534 */ void action(cXyz, cXyz, fopAc_ac_c*, f32 (*)[4], int); - /* 80251B60 */ void dbView(); - /* 8097F280 */ ~dNpcLib_lookat_c(); -}; - -struct dMsgObject_c { - /* 8023819C */ void getActor(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 800432EC */ void convPId(unsigned int); -}; - -struct dEvent_manager_c { - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 8097F3F8 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8097F4C4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 8097F454 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGPla { - /* 809799B0 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8097F368 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8097F3B0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8097E008 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0E18 */ void playVoice(int); -}; - -struct Vec {}; - -struct PathTrace_c { - /* 80159A38 */ void setPath(int, int, int, cXyz*, bool); - /* 80159C14 */ void checkPoint(cXyz, f32); - /* 80159DC0 */ void checkPathEnd(cXyz, f32); - /* 80159E54 */ void getTargetPoint(Vec*); - /* 80159F98 */ void setNextPoint(cXyz&); - /* 8015A370 */ void checkObstacle(fopAc_ac_c*); -}; - -struct J3DFrameCtrl { - /* 8032842C */ void checkPass(f32); -}; // // Forward References: @@ -501,7 +154,6 @@ extern "C" u8 m_seq43_funcTbl__11daNpcCdn3_c[36]; // External References: // -extern "C" void OSReport_Error(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); extern "C" void setMorf__13mDoExt_morf_cFf(); @@ -601,9 +253,6 @@ extern "C" void __dt__17Z2CreatureCitizenFv(); extern "C" void playVoice__17Z2CreatureCitizenFi(); extern "C" void __dl__FPv(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __ptmf_test(); extern "C" void __ptmf_scall(); @@ -611,12 +260,8 @@ extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); extern "C" u8 const m_cylDat__10daNpcCd2_c[68]; extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -624,12 +269,8 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 l_Cd2_HIO[16396]; -extern "C" extern u8 g_env_light[4880]; extern "C" f32 Zero__4cXyz[3]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -2650,25 +2291,30 @@ SECTION_DATA static void* lit_5487[8] = { }; /* 80980658-80980678 -00001 0020+00 1/0 0/0 0/0 .data daNpcCdn3_METHODS */ -SECTION_DATA static void* daNpcCdn3_METHODS[8] = { - (void*)daNpcCdn3_Create__FPv, - (void*)daNpcCdn3_Delete__FPv, - (void*)daNpcCdn3_Execute__FPv, - (void*)daNpcCdn3_IsDelete__FPv, - (void*)daNpcCdn3_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcCdn3_METHODS = { + (process_method_func)daNpcCdn3_Create__FPv, + (process_method_func)daNpcCdn3_Delete__FPv, + (process_method_func)daNpcCdn3_Execute__FPv, + (process_method_func)daNpcCdn3_IsDelete__FPv, + (process_method_func)daNpcCdn3_Draw__FPv, }; /* 80980678-809806A8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CD3 */ -SECTION_DATA extern void* g_profile_NPC_CD3[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02880000, (void*)&g_fpcLf_Method, - (void*)0x00000B9C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x018B0000, (void*)&daNpcCdn3_METHODS, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CD3 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CD3, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcCdn3_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 395, // mPriority + &daNpcCdn3_METHODS, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809806A8-809806B4 001000 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */ @@ -2768,7 +2414,8 @@ asm void daNpcCdn3_c::executePath() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__8cM3dGPlaFv.s" } @@ -2778,7 +2425,8 @@ asm cM3dGPla::~cM3dGPla() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__4cXyzFv.s" } @@ -3524,7 +3172,8 @@ asm void daNpcCdn3_c::lookat() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__5csXyzFv.s" } @@ -3614,7 +3263,8 @@ static bool daNpcCdn3_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__10cCcD_GSttsFv.s" } @@ -3659,7 +3309,8 @@ static asm void func_8097EFE0() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3669,7 +3320,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcCd2_c::~daNpcCd2_c() { +// asm daNpcCd2_c::~daNpcCd2_c() { +extern "C" asm void __dt__10daNpcCd2_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__10daNpcCd2_cFv.s" } @@ -3679,7 +3331,8 @@ asm daNpcCd2_c::~daNpcCd2_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +// asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +extern "C" asm void __dt__16dNpcLib_lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__16dNpcLib_lookat_cFv.s" } @@ -3689,7 +3342,8 @@ asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__8cM3dGCylFv.s" } @@ -3699,7 +3353,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__8cM3dGAabFv.s" } @@ -3709,7 +3364,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__10dCcD_GSttsFv.s" } @@ -3719,7 +3375,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__12dBgS_AcchCirFv.s" } @@ -3729,7 +3386,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_cdn3/d_a_npc_cdn3/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.cpp b/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.cpp index 28bafc32ba..8f7dc0ea58 100644 --- a/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.cpp +++ b/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.cpp @@ -1,347 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_chat -// +/** + * @file d_a_npc_chat.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_chat/d_a_npc_chat.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); - /* 80985DE4 */ csXyz(); - /* 80985DA8 */ ~csXyz(); -}; - -struct cXyz { - /* 80266C18 */ void operator/(f32) const; - /* 80985DE8 */ ~cXyz(); - /* 80985E24 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CDD4 */ void transM(cXyz const&); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTexPattern {}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btpAnm { - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_btkAnm { - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80985E28 */ ~daNpcF_c(); - /* 80986074 */ daNpcF_c(); - /* 809863E8 */ bool ctrlBtk(); - /* 809863F0 */ void setCollisions(); - /* 809863F4 */ bool setExpressionAnm(int, bool); - /* 809863FC */ void setExpression(int, f32); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 80985CD8 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 80985C54 */ ~daNpcF_ActorMngr_c(); - /* 80985C9C */ daNpcF_ActorMngr_c(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcChat_c { - /* 8098084C */ daNpcChat_c(); - /* 80980A60 */ ~daNpcChat_c(); - /* 80980C1C */ void NpcCreate(int); - /* 80980E20 */ void getObjNum(); - /* 80980F88 */ void ObjCreate(int); - /* 80980FC8 */ void ChairCreate(f32); - /* 80981108 */ void isM_(); - /* 80981140 */ void loadResrc(int, int); - /* 80981280 */ void getNpcMdlDataP(int); - /* 809812FC */ void getObjMdlDataP(int); - /* 80981374 */ void getTexAnmP(int); - /* 809813E8 */ void removeResrc(int, int); - /* 809814DC */ void setAttention(int); - /* 80981E90 */ void Create(); - /* 809822A0 */ void CreateHeap(); - /* 809823B4 */ void Delete(); - /* 809823E8 */ void Execute(); - /* 809824CC */ void Draw(); - /* 8098250C */ void draw(int, int, f32, _GXColorS10*, int); - /* 80982780 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80982A98 */ void createHeapCallBack(fopAc_ac_c*); - /* 80982AB8 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80982B60 */ void searchGroup(); - /* 80982C10 */ void appearTimeCheck(); - /* 80982D20 */ void appearCheck(); - /* 80982EB4 */ void setParam(); - /* 80982F4C */ void main(); - /* 80982FA4 */ void setAttnPos(); - /* 809830EC */ void setExpressionBtp(int); - /* 80983168 */ void setMotionAnm(int, f32); - /* 80983584 */ void setMotion(int, f32, int); - /* 809835C8 */ bool drawDbgInfo(); - /* 809835D0 */ void drawOtherMdls(); - /* 809837A4 */ void getTalkMotionNo(); - /* 809837C0 */ void getLookPlayerCheck(); - /* 809837EC */ void reset(); - /* 809839E0 */ void playMotion(); - /* 80984DD0 */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); - /* 80984F34 */ void setAction(bool (daNpcChat_c::*)(void*)); - /* 80984FDC */ void step(s16, int); - /* 809850D0 */ void setTalkMember(daNpcChat_c*); - /* 80985104 */ void wait(void*); - /* 8098552C */ void fear(void*); - /* 809856C8 */ void talk(void*); - /* 80985A84 */ void demo(void*); - /* 8098692C */ void adjustShapeAngle(); - - static u8 mEvtSeqList[12]; -}; - -struct daNpcChat_Param_c { - /* 80986930 */ ~daNpcChat_Param_c(); - - static u8 const m[108]; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 800432EC */ void convPId(unsigned int); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809862D4 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80986330 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80986264 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809809D0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80980A18 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80986400 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct Vec {}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); - /* 802C0D48 */ void setMdlType(s8, bool, bool); - /* 802C0E18 */ void playVoice(int); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809863A0 */ ~J3DFrameCtrl(); -}; // // Forward References: @@ -532,9 +196,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -550,10 +211,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -563,10 +221,7 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -2497,25 +2152,30 @@ SECTION_DATA static void* lit_6309[3] = { #pragma pop /* 8098B94C-8098B96C -00001 0020+00 1/0 0/0 0/0 .data daNpcChat_MethodTable */ -SECTION_DATA static void* daNpcChat_MethodTable[8] = { - (void*)daNpcChat_Create__FPv, - (void*)daNpcChat_Delete__FPv, - (void*)daNpcChat_Execute__FPv, - (void*)daNpcChat_IsDelete__FPv, - (void*)daNpcChat_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcChat_MethodTable = { + (process_method_func)daNpcChat_Create__FPv, + (process_method_func)daNpcChat_Delete__FPv, + (process_method_func)daNpcChat_Execute__FPv, + (process_method_func)daNpcChat_IsDelete__FPv, + (process_method_func)daNpcChat_Draw__FPv, }; /* 8098B96C-8098B99C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CHAT */ -SECTION_DATA extern void* g_profile_NPC_CHAT[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x028B0000, (void*)&g_fpcLf_Method, - (void*)0x00000E54, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x018E0000, (void*)&daNpcChat_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CHAT = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CHAT, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcChat_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 398, // mPriority + &daNpcChat_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8098B99C-8098B9E4 004040 0048+00 2/2 0/0 0/0 .data __vt__11daNpcChat_c */ @@ -2623,7 +2283,8 @@ asm daNpcChat_c::daNpcChat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__8cM3dGCylFv.s" } @@ -2633,7 +2294,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__8cM3dGAabFv.s" } @@ -5077,7 +4739,8 @@ static bool daNpcChat_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -5087,7 +4750,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -5097,7 +4761,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__15daNpcF_Lookat_cFv.s" } @@ -5107,14 +4772,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__5csXyzFv.s" } #pragma pop /* 80985DE4-80985DE8 005684 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -5122,14 +4789,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__4cXyzFv.s" } #pragma pop /* 80985E24-80985E28 0056C4 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -5137,7 +4806,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__8daNpcF_cFv.s" } @@ -5147,7 +4817,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__ct__8daNpcF_cFv.s" } @@ -5157,7 +4828,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__12dBgS_AcchCirFv.s" } @@ -5167,7 +4839,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__10dCcD_GSttsFv.s" } @@ -5177,7 +4850,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__12dBgS_ObjAcchFv.s" } @@ -5187,29 +4861,34 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809863E8-809863F0 005C88 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 809863F0-809863F4 005C90 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 809863F4-809863FC 005C94 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 809863FC-80986400 005C9C 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } @@ -5217,7 +4896,8 @@ void daNpcF_c::setExpression(int param_0, f32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chat/d_a_npc_chat/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.cpp b/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.cpp index 9ca10c6dd8..ddc8634563 100644 --- a/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.cpp +++ b/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.cpp @@ -1,430 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_chin -// +/** + * @file d_a_npc_chin.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_chin/d_a_npc_chin.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80991020 */ ~csXyz(); - /* 8099105C */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80991060 */ ~cXyz(); - /* 8099109C */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DMaterialTable { - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); -}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 809910A0 */ ~daNpcF_c(); - /* 809912EC */ daNpcF_c(); - /* 80991618 */ void adjustShapeAngle(); - /* 8099161C */ void setCollisions(); - /* 80991620 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80990F50 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80990ECC */ ~daNpcF_ActorMngr_c(); - /* 80990F14 */ daNpcF_ActorMngr_c(); -}; - -struct J3DModel {}; - -struct dKy_tevstr_c {}; - -struct J3DJoint {}; - -struct daNpcChin_c { - struct _SpotLight_c { - /* 8098BF0C */ void loadModel(); - /* 8098C000 */ void setMtx(); - /* 8098C060 */ void draw(dKy_tevstr_c*); - }; - - /* 8098C104 */ daNpcChin_c(); - /* 8098C2D8 */ ~daNpcChin_c(); - /* 8098C510 */ void Create(); - /* 8098C858 */ void CreateHeap(); - /* 8098CCE4 */ void Delete(); - /* 8098CD18 */ void Execute(); - /* 8098CD74 */ void Draw(); - /* 8098CDE8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8098CFB8 */ void createHeapCallBack(fopAc_ac_c*); - /* 8098CFD8 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8098D024 */ void setParam(); - /* 8098D0F8 */ void main(); - /* 8098D198 */ void ctrlBtk(); - /* 8098D26C */ void setAttnPos(); - /* 8098D58C */ void setExpressionAnm(int, bool); - /* 8098D848 */ void setExpressionBtp(int); - /* 8098D938 */ void setMotionAnm(int, f32); - /* 8098DB44 */ void setExpression(int, f32); - /* 8098DB70 */ void setMotion(int, f32, int); - /* 8098DBB4 */ bool drawDbgInfo(); - /* 8098DBBC */ void reset(); - /* 8098DCD0 */ void playExpression(); - /* 8098E04C */ void playMotion(); - /* 8098E5C4 */ void setAction(bool (daNpcChin_c::*)(void*)); - /* 8098E66C */ void setLookMode(int); - /* 8098E690 */ void lookat(); - /* 8098E870 */ void step(s16, int, int); - /* 8098EA00 */ void chkFindPlayer(); - /* 8098EACC */ void setExpressionTalkAfter(); - /* 8098EBE8 */ void wait(void*); - /* 8098EFE4 */ void talk(void*); - /* 8098F208 */ void _talk_motion(); - /* 8098F2BC */ void demo(void*); - /* 8098F414 */ void watch_game(void*); - /* 8098F758 */ void Event_DT(); - /* 8098FB3C */ void isGameEnd(int&); - /* 8098FD38 */ void _chkGameClear(); - /* 8098FD5C */ void SphereReset(); - /* 8098FD80 */ void _Evt_GameStart(int); - /* 8098FE28 */ void _Evt_GameStart_CutInit(int const&); - /* 8098FF30 */ void _Evt_GameStart_CutMain(int const&); - /* 8098FFD0 */ void _Evt_GameFailed(int); - /* 80990078 */ void _Evt_GameFailed_CutInit(int const&); - /* 80990174 */ void _Evt_GameFailed_CutMain(int const&); - /* 80990218 */ void _Evt_GameSucceed(int); - /* 809902C0 */ void _Evt_GameSucceed_CutInit(int const&); - /* 8099041C */ void _Evt_GameSucceed_CutMain(int const&); - /* 809905C4 */ void _Evt_SelectGiveUp(int); - /* 8099066C */ void _Evt_SelectGiveUp_CutInit(int const&); - /* 8099071C */ void _Evt_SelectGiveUp_CutMain(int const&); - /* 809907AC */ void _Evt_GameGiveUp(int); - /* 80990854 */ void _Evt_GameGiveUp_CutInit(int const&); - /* 80990950 */ void _Evt_GameGiveUp_CutMain(int const&); - /* 809909F4 */ void _Evt_Appear(int); - /* 80990A9C */ void _Evt_Appear_CutInit(int const&); - /* 80990BD8 */ void _Evt_Appear_CutMain(int const&); - /* 80990C9C */ void _Evt_SpotLight_Off(int); - /* 80990D44 */ void _Evt_SpotLight_Off_CutInit(int const&); - /* 80990DDC */ void _Evt_SpotLight_Off_CutMain(int const&); - /* 80991858 */ void setMtx(); - - static u8 mEvtSeqList[96]; -}; - -struct daNpcChin_Param_c { - /* 8099188C */ ~daNpcChin_Param_c(); - - static u8 const m[108]; -}; - -struct daGlwSph_c { - /* 80BF9430 */ void getSphMng(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 8099154C */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809915A8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 809914DC */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809917C8 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80991810 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80991624 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GlSph_Mng_c { - /* 80BFA55C */ void _setting_main(); - /* 80BFA5C4 */ void _chkAllGet_main(); - /* 80BFA60C */ void SphSeProc(); -}; - -struct Z2SeqMgr { - /* 802AF010 */ void bgmStart(u32, u32, s32); - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 8098CBD0 */ ~J3DTexNoAnm(); - /* 8098CC18 */ J3DTexNoAnm(); - /* 80990E9C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8098CC3C */ ~J3DTexMtxAnm(); - /* 8098CC78 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8098CB28 */ ~J3DTevKColorAnm(); - /* 8098CB64 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8098CB7C */ ~J3DTevColorAnm(); - /* 8098CBB8 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8098CC90 */ ~J3DMatColorAnm(); - /* 8098CCCC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80991780 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -667,9 +248,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -685,8 +263,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -697,13 +273,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); extern "C" void getSphMng__10daGlwSph_cFv(); @@ -1190,25 +762,30 @@ SECTION_DATA static void* lit_5397[3] = { #pragma pop /* 809922DC-809922FC -00001 0020+00 1/0 0/0 0/0 .data daNpcChin_MethodTable */ -SECTION_DATA static void* daNpcChin_MethodTable[8] = { - (void*)daNpcChin_Create__FPv, - (void*)daNpcChin_Delete__FPv, - (void*)daNpcChin_Execute__FPv, - (void*)daNpcChin_IsDelete__FPv, - (void*)daNpcChin_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcChin_MethodTable = { + (process_method_func)daNpcChin_Create__FPv, + (process_method_func)daNpcChin_Delete__FPv, + (process_method_func)daNpcChin_Execute__FPv, + (process_method_func)daNpcChin_IsDelete__FPv, + (process_method_func)daNpcChin_Draw__FPv, }; /* 809922FC-8099232C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CHIN */ -SECTION_DATA extern void* g_profile_NPC_CHIN[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A50000, (void*)&g_fpcLf_Method, - (void*)0x00000E78, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A80000, (void*)&daNpcChin_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CHIN = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CHIN, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcChin_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 424, // mPriority + &daNpcChin_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8099232C-80992338 000550 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1396,7 +973,8 @@ asm void daNpcChin_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__15J3DTevKColorAnmFv.s" } @@ -1406,7 +984,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__15J3DTevKColorAnmFv.s" } @@ -1416,7 +995,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__14J3DTevColorAnmFv.s" } @@ -1426,7 +1006,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__14J3DTevColorAnmFv.s" } @@ -1436,7 +1017,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__11J3DTexNoAnmFv.s" } @@ -1446,7 +1028,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__11J3DTexNoAnmFv.s" } @@ -1456,7 +1039,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__12J3DTexMtxAnmFv.s" } @@ -1466,7 +1050,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__12J3DTexMtxAnmFv.s" } @@ -1476,7 +1061,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__14J3DMatColorAnmFv.s" } @@ -1486,7 +1072,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__14J3DMatColorAnmFv.s" } @@ -3065,7 +2652,8 @@ static bool daNpcChin_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/calc__11J3DTexNoAnmCFPUs.s" } @@ -3075,7 +2663,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -3085,7 +2674,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -3095,7 +2685,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__15daNpcF_Lookat_cFv.s" } @@ -3105,14 +2696,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__5csXyzFv.s" } #pragma pop /* 8099105C-80991060 00523C 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3120,14 +2713,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__4cXyzFv.s" } #pragma pop /* 8099109C-809910A0 00527C 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3135,7 +2730,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__8daNpcF_cFv.s" } @@ -3145,7 +2741,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__ct__8daNpcF_cFv.s" } @@ -3155,7 +2752,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__12dBgS_AcchCirFv.s" } @@ -3165,7 +2763,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__10dCcD_GSttsFv.s" } @@ -3175,24 +2774,28 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__12dBgS_ObjAcchFv.s" } #pragma pop /* 80991618-8099161C 0057F8 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 8099161C-80991620 0057FC 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80991620-80991624 005800 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -3200,7 +2803,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__10cCcD_GSttsFv.s" } @@ -3239,7 +2843,8 @@ REGISTER_CTORS(0x8099166C, __sinit_d_a_npc_chin_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__12J3DFrameCtrlFv.s" } @@ -3249,7 +2854,8 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__8cM3dGCylFv.s" } @@ -3259,7 +2865,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_chin/d_a_npc_chin/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.cpp b/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.cpp index c4770eb6bf..e9b17bf12b 100644 --- a/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.cpp +++ b/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.cpp @@ -1,396 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_clerka -// +/** + * @file d_a_npc_clerka.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809949F8 */ ~cXyz(); - /* 80994F74 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80994F78 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_clerkA_c { - /* 8099252C */ ~daNpc_clerkA_c(); - /* 8099266C */ void create(); - /* 80992914 */ void CreateHeap(); - /* 80992D50 */ void Delete(); - /* 80992D84 */ void Execute(); - /* 80992E5C */ void Draw(); - /* 80992EF0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80992F10 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80992F68 */ void getType(); - /* 80992F88 */ void isDelete(); - /* 80992FB8 */ void reset(); - /* 809930EC */ void afterJntAnm(int); - /* 80993170 */ void setParam(); - /* 809932A4 */ void setAfterTalkMotion(); - /* 80993330 */ void srchActors(); - /* 8099338C */ void evtTalk(); - /* 80993568 */ void evtCutProc(); - /* 80993630 */ void action(); - /* 8099371C */ void beforeMove(); - /* 80993794 */ void setAttnPos(); - /* 80993A40 */ void setCollision(); - /* 80993B74 */ bool drawDbgInfo(); - /* 80993B7C */ void drawOtherMdl(); - /* 80993BDC */ void selectAction(); - /* 80993C58 */ void chkAction(int (daNpc_clerkA_c::*)(void*)); - /* 80993C84 */ void setAction(int (daNpc_clerkA_c::*)(void*)); - /* 80993D2C */ void wait(void*); - /* 80993F84 */ void tend(void*); - /* 809941B8 */ void talk(void*); - /* 809943B0 */ void shop(void*); - /* 809955C8 */ daNpc_clerkA_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80995694 */ s32 getEyeballMaterialNo(); - /* 8099569C */ s32 getHeadJointNo(); - /* 809956A4 */ s32 getNeckJointNo(); - /* 809956AC */ bool getBackboneJointNo(); - /* 809956B4 */ void checkChangeJoint(int); - /* 809956C4 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_clerkA_Param_c { - /* 809956D4 */ ~daNpc_clerkA_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BFB0 */ void getShopItemTagP(); - /* 80994A70 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80995468 */ void ctrlSubFaceMotion(int); - /* 8099546C */ s32 getFootLJointNo(); - /* 80995474 */ s32 getFootRJointNo(); - /* 8099547C */ bool getEyeballLMaterialNo(); - /* 80995484 */ bool getEyeballRMaterialNo(); - /* 8099548C */ bool checkChangeEvt(); - /* 80995494 */ bool evtEndProc(); - /* 8099549C */ void afterMoved(); - /* 809954A0 */ bool chkXYItems(); - /* 809954A8 */ void decTmr(); - /* 809954C0 */ void drawGhost(); - /* 809954C4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809954CC */ bool afterSetMotionAnm(int, int, f32, int); - /* 809954D4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80995504 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80995534 */ void changeAnm(int*, int*); - /* 80995538 */ void changeBck(int*, int*); - /* 8099553C */ void changeBtp(int*, int*); - /* 80995540 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80994E78 */ ~daNpcT_JntAnm_c(); - /* 80995144 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80995260 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809948E4 */ ~daNpcT_ActorMngr_c(); - /* 8099492C */ daNpcT_ActorMngr_c(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 8099572C */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80995844 */ bool getResName2(int); - /* 8099584C */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80995854 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); - /* 801969A0 */ void getCurrentPos(int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 8023822C */ void getStatus(); - /* 802383A4 */ void isMouthCheck(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80995030 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8099508C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80994FC0 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80994A34 */ ~csXyz(); - /* 80994E74 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80994968 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809949B0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8099489C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); - /* 801968B8 */ void setMasterCamCtrPos(cXyz*); -}; - -struct J3DTexNoAnm { - /* 80992C3C */ ~J3DTexNoAnm(); - /* 80992C84 */ J3DTexNoAnm(); - /* 8099486C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80992CA8 */ ~J3DTexMtxAnm(); - /* 80992CE4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80992B94 */ ~J3DTevKColorAnm(); - /* 80992BD0 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80992BE8 */ ~J3DTevColorAnm(); - /* 80992C24 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80992CFC */ ~J3DMatColorAnm(); - /* 80992D38 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809950FC */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -506,7 +121,6 @@ extern "C" u8 mCutList__14daNpc_clerkA_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -619,10 +233,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -637,8 +247,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -650,9 +258,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -849,25 +454,30 @@ SECTION_DATA static void* lit_4963[3] = { }; /* 80995C50-80995C70 -00001 0020+00 1/0 0/0 0/0 .data daNpc_clerkA_MethodTable */ -SECTION_DATA static void* daNpc_clerkA_MethodTable[8] = { - (void*)daNpc_clerkA_Create__FPv, - (void*)daNpc_clerkA_Delete__FPv, - (void*)daNpc_clerkA_Execute__FPv, - (void*)daNpc_clerkA_IsDelete__FPv, - (void*)daNpc_clerkA_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_clerkA_MethodTable = { + (process_method_func)daNpc_clerkA_Create__FPv, + (process_method_func)daNpc_clerkA_Delete__FPv, + (process_method_func)daNpc_clerkA_Execute__FPv, + (process_method_func)daNpc_clerkA_IsDelete__FPv, + (process_method_func)daNpc_clerkA_Draw__FPv, }; /* 80995C70-80995CA0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CLERKA */ -SECTION_DATA extern void* g_profile_NPC_CLERKA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02480000, (void*)&g_fpcLf_Method, - (void*)0x000010F4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01460000, (void*)&daNpc_clerkA_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CLERKA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CLERKA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_clerkA_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 326, // mPriority + &daNpc_clerkA_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80995CA0-80995CAC 00030C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1153,7 +763,8 @@ asm void daNpc_clerkA_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__15J3DTevKColorAnmFv.s" } @@ -1163,7 +774,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__15J3DTevKColorAnmFv.s" } @@ -1173,7 +785,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__14J3DTevColorAnmFv.s" } @@ -1183,7 +796,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__14J3DTevColorAnmFv.s" } @@ -1193,7 +807,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__11J3DTexNoAnmFv.s" } @@ -1203,7 +818,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__11J3DTexNoAnmFv.s" } @@ -1213,7 +829,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__12J3DTexMtxAnmFv.s" } @@ -1223,7 +840,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__12J3DTexMtxAnmFv.s" } @@ -1233,7 +851,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__14J3DMatColorAnmFv.s" } @@ -1243,7 +862,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__14J3DMatColorAnmFv.s" } @@ -1643,7 +1263,8 @@ static bool daNpc_clerkA_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/calc__11J3DTexNoAnmCFPUs.s" } @@ -1653,7 +1274,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__10cCcD_GSttsFv.s" } @@ -1663,7 +1285,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1673,7 +1296,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1683,7 +1307,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__8cM3dGCylFv.s" } @@ -1693,7 +1318,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__8cM3dGAabFv.s" } @@ -1703,7 +1329,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__4cXyzFv.s" } @@ -1713,7 +1340,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__5csXyzFv.s" } @@ -1725,18 +1353,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/func_80994A70.s" } #pragma pop /* 80994E74-80994E78 002A34 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1744,14 +1374,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80994F74-80994F78 002B34 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1759,7 +1391,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1769,7 +1402,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__12dBgS_AcchCirFv.s" } @@ -1779,7 +1413,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__10dCcD_GSttsFv.s" } @@ -1789,7 +1424,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__12dBgS_ObjAcchFv.s" } @@ -1799,7 +1435,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/__dt__12J3DFrameCtrlFv.s" } @@ -1809,8 +1446,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1820,14 +1458,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80995468-8099546C 003028 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1843,13 +1483,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 8099547C-80995484 00303C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80995484-8099548C 003044 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1859,7 +1501,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80995494-8099549C 003054 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1869,7 +1512,8 @@ void daNpcT_c::afterMoved() { } /* 809954A0-809954A8 003060 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1877,25 +1521,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809954C0-809954C4 003080 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809954C4-809954CC 003084 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 809954CC-809954D4 00308C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1904,7 +1552,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1915,29 +1564,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80995534-80995538 0030F4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80995538-8099553C 0030F8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 8099553C-80995540 0030FC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80995540-80995544 003100 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2075,31 +1729,35 @@ static asm void func_80995724() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerka/d_a_npc_clerka/func_8099572C.s" } #pragma pop /* 80995844-8099584C 003404 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 8099584C-80995854 00340C 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80995854-8099585C 003414 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } diff --git a/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.cpp b/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.cpp index 64c64e19a7..a561716d29 100644 --- a/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.cpp +++ b/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.cpp @@ -1,422 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_clerkb -// +/** + * @file d_a_npc_clerkb.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80998AF0 */ ~cXyz(); - /* 80999078 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmColor {}; - -struct J3DMaterialTable { - /* 8032F64C */ void removeMatColorAnimator(J3DAnmColor*); -}; - -struct mDoExt_bpkAnm { - /* 8000D47C */ void init(J3DMaterialTable*, J3DAnmColor*, int, int, f32, s16, s16); - /* 8000D518 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 8099907C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); -}; - -struct daNpc_clerkB_c { - /* 80995F2C */ ~daNpc_clerkB_c(); - /* 80996090 */ void create(); - /* 80996338 */ void CreateHeap(); - /* 809967C4 */ void Delete(); - /* 809967F8 */ void Execute(); - /* 809968D0 */ void Draw(); - /* 80996964 */ void createHeapCallBack(fopAc_ac_c*); - /* 80996984 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809969DC */ void getType(); - /* 809969FC */ void beforeStartSeqAction(dMsgFlow_c*, int); - /* 80996CCC */ void beforeSelectSeqAction(dMsgFlow_c*, int); - /* 80996F7C */ void isDelete(); - /* 80996FAC */ void reset(); - /* 809970E0 */ void afterJntAnm(int); - /* 80997188 */ void setParam(); - /* 809972BC */ void setAfterTalkMotion(); - /* 80997360 */ void srchActors(); - /* 809973BC */ void evtTalk(); - /* 80997598 */ void evtCutProc(); - /* 80997660 */ void action(); - /* 8099774C */ void beforeMove(); - /* 809977C4 */ void setAttnPos(); - /* 80997A1C */ void setCollision(); - /* 80997B50 */ bool drawDbgInfo(); - /* 80997B58 */ void drawOtherMdl(); - /* 80997BB8 */ void drawGhost(); - /* 80997C44 */ void selectAction(); - /* 80997CC0 */ void chkAction(int (daNpc_clerkB_c::*)(void*)); - /* 80997CEC */ void setAction(int (daNpc_clerkB_c::*)(void*)); - /* 80997D94 */ void setSe(); - /* 80997E54 */ void wait(void*); - /* 809980AC */ void tend(void*); - /* 80998328 */ void talk(void*); - /* 80998520 */ void shop(void*); - /* 80999680 */ daNpc_clerkB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809997AC */ s32 getEyeballMaterialNo(); - /* 809997B4 */ s32 getHeadJointNo(); - /* 809997BC */ s32 getNeckJointNo(); - /* 809997C4 */ bool getBackboneJointNo(); - /* 809997CC */ void checkChangeJoint(int); - /* 809997DC */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_clerkB_Param_c { - /* 809997EC */ ~daNpc_clerkB_Param_c(); - - static u8 const m[148]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BFB0 */ void getShopItemTagP(); - /* 80998B74 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80999524 */ void ctrlSubFaceMotion(int); - /* 80999528 */ s32 getFootLJointNo(); - /* 80999530 */ s32 getFootRJointNo(); - /* 80999538 */ bool getEyeballLMaterialNo(); - /* 80999540 */ bool getEyeballRMaterialNo(); - /* 80999548 */ bool checkChangeEvt(); - /* 80999550 */ bool evtEndProc(); - /* 80999558 */ void afterMoved(); - /* 8099955C */ bool chkXYItems(); - /* 80999564 */ void decTmr(); - /* 8099957C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80999584 */ bool afterSetMotionAnm(int, int, f32, int); - /* 8099958C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809995BC */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809995EC */ void changeAnm(int*, int*); - /* 809995F0 */ void changeBck(int*, int*); - /* 809995F4 */ void changeBtp(int*, int*); - /* 809995F8 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80998F7C */ ~daNpcT_JntAnm_c(); - /* 80999200 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 8099931C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809989DC */ ~daNpcT_ActorMngr_c(); - /* 80998A24 */ daNpcT_ActorMngr_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 80999844 */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8099995C */ bool getResName2(int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); - /* 801969A0 */ void getCurrentPos(int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 802381FC */ void setStatus(u16); - /* 8023822C */ void getStatus(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80999134 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80999190 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809990C4 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80998F78 */ csXyz(); - /* 80999770 */ ~csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80998A60 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80998AA8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80998994 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); - /* 801968B8 */ void setMasterCamCtrPos(cXyz*); -}; - -struct J3DTexNoAnm { - /* 809966B0 */ ~J3DTexNoAnm(); - /* 809966F8 */ J3DTexNoAnm(); - /* 80998964 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8099671C */ ~J3DTexMtxAnm(); - /* 80996758 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80996608 */ ~J3DTevKColorAnm(); - /* 80996644 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8099665C */ ~J3DTevColorAnm(); - /* 80996698 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80996770 */ ~J3DMatColorAnm(); - /* 809967AC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80998B2C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -533,7 +122,6 @@ extern "C" u8 mCutList__14daNpc_clerkB_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_XrotM__FPA4_fs(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); @@ -656,10 +244,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -674,8 +258,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -687,11 +269,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -901,25 +478,30 @@ SECTION_DATA static void* lit_5167[3] = { }; /* 80999E74-80999E94 -00001 0020+00 1/0 0/0 0/0 .data daNpc_clerkB_MethodTable */ -SECTION_DATA static void* daNpc_clerkB_MethodTable[8] = { - (void*)daNpc_clerkB_Create__FPv, - (void*)daNpc_clerkB_Delete__FPv, - (void*)daNpc_clerkB_Execute__FPv, - (void*)daNpc_clerkB_IsDelete__FPv, - (void*)daNpc_clerkB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_clerkB_MethodTable = { + (process_method_func)daNpc_clerkB_Create__FPv, + (process_method_func)daNpc_clerkB_Delete__FPv, + (process_method_func)daNpc_clerkB_Execute__FPv, + (process_method_func)daNpc_clerkB_IsDelete__FPv, + (process_method_func)daNpc_clerkB_Draw__FPv, }; /* 80999E94-80999EC4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CLERKB */ -SECTION_DATA extern void* g_profile_NPC_CLERKB[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02490000, (void*)&g_fpcLf_Method, - (void*)0x00001118, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01470000, (void*)&daNpc_clerkB_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CLERKB = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CLERKB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_clerkB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 327, // mPriority + &daNpc_clerkB_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80999EC4-80999ED0 000414 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1209,7 +791,8 @@ asm void daNpc_clerkB_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__15J3DTevKColorAnmFv.s" } @@ -1219,7 +802,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__15J3DTevKColorAnmFv.s" } @@ -1229,7 +813,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__14J3DTevColorAnmFv.s" } @@ -1239,7 +824,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__14J3DTevColorAnmFv.s" } @@ -1249,7 +835,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__11J3DTexNoAnmFv.s" } @@ -1259,7 +846,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__11J3DTexNoAnmFv.s" } @@ -1269,7 +857,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__12J3DTexMtxAnmFv.s" } @@ -1279,7 +868,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__12J3DTexMtxAnmFv.s" } @@ -1289,7 +879,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__14J3DMatColorAnmFv.s" } @@ -1299,7 +890,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__14J3DMatColorAnmFv.s" } @@ -1762,7 +1354,8 @@ static bool daNpc_clerkB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/calc__11J3DTexNoAnmCFPUs.s" } @@ -1772,7 +1365,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__10cCcD_GSttsFv.s" } @@ -1782,7 +1376,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1792,7 +1387,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1802,7 +1398,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__8cM3dGCylFv.s" } @@ -1812,7 +1409,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__8cM3dGAabFv.s" } @@ -1822,7 +1420,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__4cXyzFv.s" } @@ -1832,7 +1431,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__12J3DFrameCtrlFv.s" } @@ -1844,18 +1444,20 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/func_80998B74.s" } #pragma pop /* 80998F78-80998F7C 003138 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1863,14 +1465,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80999078-8099907C 003238 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1878,7 +1482,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1888,7 +1493,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__12dBgS_AcchCirFv.s" } @@ -1898,7 +1504,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__10dCcD_GSttsFv.s" } @@ -1908,7 +1515,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__12dBgS_ObjAcchFv.s" } @@ -1918,8 +1526,9 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1929,14 +1538,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80999524-80999528 0036E4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1952,13 +1563,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80999538-80999540 0036F8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80999540-80999548 003700 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1968,7 +1581,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80999550-80999558 003710 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1978,7 +1592,8 @@ void daNpcT_c::afterMoved() { } /* 8099955C-80999564 00371C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1986,20 +1601,23 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8099957C-80999584 00373C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80999584-8099958C 003744 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2008,7 +1626,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2019,29 +1638,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809995EC-809995F0 0037AC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809995F0-809995F4 0037B0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809995F4-809995F8 0037B4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809995F8-809995FC 0037B8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2105,7 +1729,8 @@ asm daNpc_clerkB_c::daNpc_clerkB_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/__dt__5csXyzFv.s" } @@ -2189,19 +1814,21 @@ static asm void func_8099983C() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkb/d_a_npc_clerkb/func_80999844.s" } #pragma pop /* 8099995C-80999964 003B1C 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } diff --git a/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.cpp b/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.cpp index 2de618a771..9155cb07cf 100644 --- a/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.cpp +++ b/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.cpp @@ -1,392 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_clerkt -// +/** + * @file d_a_npc_clerkt.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 8099C3E8 */ ~cXyz(); - /* 8099C964 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 8099C968 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BFB0 */ void getShopItemTagP(); - /* 8099C460 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8099CE58 */ void ctrlSubFaceMotion(int); - /* 8099CE5C */ s32 getFootLJointNo(); - /* 8099CE64 */ s32 getFootRJointNo(); - /* 8099CE6C */ bool getEyeballLMaterialNo(); - /* 8099CE74 */ bool getEyeballRMaterialNo(); - /* 8099CE7C */ bool checkChangeEvt(); - /* 8099CE84 */ bool evtEndProc(); - /* 8099CE8C */ void afterMoved(); - /* 8099CE90 */ bool chkXYItems(); - /* 8099CE98 */ void decTmr(); - /* 8099CEB0 */ void drawGhost(); - /* 8099CEB4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8099CEBC */ bool afterSetMotionAnm(int, int, f32, int); - /* 8099CEC4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 8099CEF4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 8099CF24 */ void changeAnm(int*, int*); - /* 8099CF28 */ void changeBck(int*, int*); - /* 8099CF2C */ void changeBtp(int*, int*); - /* 8099CF30 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 8099C868 */ ~daNpcT_JntAnm_c(); - /* 8099CB34 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 8099CC50 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 8099C2D4 */ ~daNpcT_ActorMngr_c(); - /* 8099C31C */ daNpcT_ActorMngr_c(); -}; - -struct daNpcClerkt_Param_c { - /* 8099D0A8 */ ~daNpcClerkt_Param_c(); - - static u8 const m[140]; -}; - -struct daNpcClerkT_c { - /* 8099A14C */ ~daNpcClerkT_c(); - /* 8099A28C */ void create(); - /* 8099A530 */ void CreateHeap(); - /* 8099A96C */ void Delete(); - /* 8099A9A0 */ void Execute(); - /* 8099AA80 */ void Draw(); - /* 8099AB14 */ void createHeapCallBack(fopAc_ac_c*); - /* 8099AB34 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8099AB8C */ void isDelete(); - /* 8099ABBC */ void reset(); - /* 8099ACF0 */ void afterJntAnm(int); - /* 8099AD74 */ void evtTalk(); - /* 8099AF18 */ void evtCutProc(); - /* 8099AFE0 */ void action(); - /* 8099B0CC */ bool drawDbgInfo(); - /* 8099B0D4 */ void drawOtherMdl(); - /* 8099B134 */ void selectAction(); - /* 8099B1B0 */ void chkAction(int (daNpcClerkT_c::*)(void*)); - /* 8099B1DC */ void setAction(int (daNpcClerkT_c::*)(void*)); - /* 8099B284 */ void wait(void*); - /* 8099B4DC */ void tend(void*); - /* 8099B60C */ void talk(void*); - /* 8099B804 */ void shop(void*); - /* 8099BCE8 */ void setParam(); - /* 8099BE48 */ void setAfterTalkMotion(); - /* 8099BEA8 */ void beforeMove(); - /* 8099BF20 */ void setAttnPos(); - /* 8099C1A0 */ void setCollision(); - /* 8099CF9C */ daNpcClerkT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8099D068 */ s32 getEyeballMaterialNo(); - /* 8099D070 */ void checkChangeJoint(int); - /* 8099D080 */ void checkRemoveJoint(int); - /* 8099D090 */ s32 getBackboneJointNo(); - /* 8099D098 */ s32 getNeckJointNo(); - /* 8099D0A0 */ s32 getHeadJointNo(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 8099D100 */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8099D218 */ bool getResName2(int); - /* 8099D220 */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 8099D228 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); - /* 801969A0 */ void getCurrentPos(int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 8023822C */ void getStatus(); - /* 802383A4 */ void isMouthCheck(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 8099CA20 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8099CA7C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 8099C9B0 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 8099C424 */ ~csXyz(); - /* 8099C864 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8099C358 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8099C3A0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8099BCA0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); - /* 801968B8 */ void setMasterCamCtrPos(cXyz*); -}; - -struct J3DTexNoAnm { - /* 8099A858 */ ~J3DTexNoAnm(); - /* 8099A8A0 */ J3DTexNoAnm(); - /* 8099BC70 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8099A8C4 */ ~J3DTexMtxAnm(); - /* 8099A900 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8099A7B0 */ ~J3DTevKColorAnm(); - /* 8099A7EC */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8099A804 */ ~J3DTevColorAnm(); - /* 8099A840 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8099A918 */ ~J3DMatColorAnm(); - /* 8099A954 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8099CAEC */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -499,7 +118,6 @@ extern "C" u8 mCutList__13daNpcClerkT_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -609,10 +227,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -627,8 +241,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -640,9 +252,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -811,25 +420,30 @@ SECTION_DATA static void* lit_4751[3] = { }; /* 8099D480-8099D4A0 -00001 0020+00 1/0 0/0 0/0 .data daNpcClerkt_MethodTable */ -SECTION_DATA static void* daNpcClerkt_MethodTable[8] = { - (void*)daNpcClerkt_Create__FPv, - (void*)daNpcClerkt_Delete__FPv, - (void*)daNpcClerkt_Execute__FPv, - (void*)daNpcClerkt_IsDelete__FPv, - (void*)daNpcClerkt_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcClerkt_MethodTable = { + (process_method_func)daNpcClerkt_Create__FPv, + (process_method_func)daNpcClerkt_Delete__FPv, + (process_method_func)daNpcClerkt_Execute__FPv, + (process_method_func)daNpcClerkt_IsDelete__FPv, + (process_method_func)daNpcClerkt_Draw__FPv, }; /* 8099D4A0-8099D4D0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_CLERKT */ -SECTION_DATA extern void* g_profile_NPC_CLERKT[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x024A0000, (void*)&g_fpcLf_Method, - (void*)0x000010F0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01480000, (void*)&daNpcClerkt_MethodTable, - (void*)0x08044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_CLERKT = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_CLERKT, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcClerkT_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 328, // mPriority + &daNpcClerkt_MethodTable, // sub_method + 0x08044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8099D4D0-8099D4DC 000178 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1115,7 +729,8 @@ asm void daNpcClerkT_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__15J3DTevKColorAnmFv.s" } @@ -1125,7 +740,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__15J3DTevKColorAnmFv.s" } @@ -1135,7 +751,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__14J3DTevColorAnmFv.s" } @@ -1145,7 +762,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__14J3DTevColorAnmFv.s" } @@ -1155,7 +773,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__11J3DTexNoAnmFv.s" } @@ -1165,7 +784,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__11J3DTexNoAnmFv.s" } @@ -1175,7 +795,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__12J3DTexMtxAnmFv.s" } @@ -1185,7 +806,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__12J3DTexMtxAnmFv.s" } @@ -1195,7 +817,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__14J3DMatColorAnmFv.s" } @@ -1205,7 +828,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__14J3DMatColorAnmFv.s" } @@ -1471,7 +1095,8 @@ static bool daNpcClerkt_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/calc__11J3DTexNoAnmCFPUs.s" } @@ -1481,7 +1106,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__10cCcD_GSttsFv.s" } @@ -1576,7 +1202,8 @@ asm void daNpcClerkT_c::setCollision() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1586,7 +1213,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1596,7 +1224,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__8cM3dGCylFv.s" } @@ -1606,7 +1235,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__8cM3dGAabFv.s" } @@ -1616,7 +1246,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__4cXyzFv.s" } @@ -1626,7 +1257,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__5csXyzFv.s" } @@ -1638,18 +1270,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/func_8099C460.s" } #pragma pop /* 8099C864-8099C868 002804 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1657,14 +1291,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 8099C964-8099C968 002904 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1672,7 +1308,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1682,7 +1319,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__12dBgS_AcchCirFv.s" } @@ -1692,7 +1330,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__10dCcD_GSttsFv.s" } @@ -1702,7 +1341,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__12dBgS_ObjAcchFv.s" } @@ -1712,7 +1352,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/__dt__12J3DFrameCtrlFv.s" } @@ -1722,8 +1363,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1761,14 +1403,16 @@ COMPILER_STRIP_GATE(0x8099D334, &lit_5241); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 8099CE58-8099CE5C 002DF8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1784,13 +1428,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 8099CE6C-8099CE74 002E0C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8099CE74-8099CE7C 002E14 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1800,7 +1446,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 8099CE84-8099CE8C 002E24 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1810,7 +1457,8 @@ void daNpcT_c::afterMoved() { } /* 8099CE90-8099CE98 002E30 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1818,25 +1466,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8099CEB0-8099CEB4 002E50 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 8099CEB4-8099CEBC 002E54 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 8099CEBC-8099CEC4 002E5C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1845,7 +1497,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1856,29 +1509,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 8099CF24-8099CF28 002EC4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 8099CF28-8099CF2C 002EC8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 8099CF2C-8099CF30 002ECC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 8099CF30-8099CF34 002ED0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2008,31 +1666,35 @@ static asm void func_8099D0F8() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_clerkt/d_a_npc_clerkt/func_8099D100.s" } #pragma pop /* 8099D218-8099D220 0031B8 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 8099D220-8099D228 0031C0 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 8099D228-8099D230 0031C8 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } diff --git a/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.cpp b/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.cpp index f276629b04..cf01109820 100644 --- a/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.cpp +++ b/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.cpp @@ -1,388 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_coach -// +/** + * @file d_a_npc_coach.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_coach/d_a_npc_coach.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266B84 */ void operator*(f32) const; - /* 80266C18 */ void operator/(f32) const; - /* 80266F48 */ void normalizeZP(); - /* 8099DA24 */ ~cXyz(); - /* 809A4D78 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTexPattern {}; - -struct J3DMaterialTable { - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); -}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct mDoExt_McaMorf2 { - /* 80011348 */ mDoExt_McaMorf2(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, J3DAnmTransform*, - int, f32, int, int, Z2Creature*, u32, u32); - /* 80011D70 */ void setAnm(J3DAnmTransform*, J3DAnmTransform*, f32, int, f32, f32, f32, f32); - /* 80011FCC */ void setAnmRate(f32); - /* 800120A0 */ void play(u32, s8); - /* 80012144 */ void entryDL(); - /* 80012170 */ void modelCalc(); - /* 800121E8 */ void stopZelAnime(); -}; - -struct mDoExt_3DlineMat_c {}; - -struct mDoExt_3DlineMatSortPacket { - /* 80014738 */ void setMat(mDoExt_3DlineMat_c*); -}; - -struct ResTIMG {}; - -struct _GXColor {}; - -struct dKy_tevstr_c {}; - -struct mDoExt_3DlineMat1_c { - /* 80013360 */ void init(u16, u16, ResTIMG*, int); - /* 80013FB0 */ void update(int, _GXColor&, dKy_tevstr_c*); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct daNpcTheB_c { - /* 80AFD508 */ void getHandPos1(int); - /* 80AFD5F0 */ void getHandPos2(int); -}; - -struct J3DModel {}; - -struct SVec {}; - -struct J3DJoint {}; - -struct daNpcCoach_c { - /* 8099DA60 */ void hitFireArrow(cXyz); - /* 8099DBA4 */ void deleteFireArrow(unsigned int); - /* 8099DCE8 */ void deleteFireArrowFromList(unsigned int); - /* 8099DD28 */ void setPosAngle(cXyz&, csXyz&); - /* 8099DD7C */ void ctrlJointHorse(J3DJoint*, J3DModel*); - /* 8099DE18 */ void initCoachPosition(Vec&, SVec&); - /* 8099E138 */ void changeAtherPath(s8, cXyz&, csXyz&); - /* 8099E4C0 */ void createHeap(); - /* 8099EB40 */ void execute(); - /* 8099EEA0 */ void checkCoachDamage(); - /* 8099F1B8 */ void setCoachBlazing(u8); - /* 8099F4BC */ void reinsExecute(); - /* 8099F988 */ void reinsInit(); - /* 8099FCF4 */ void calcCoachMotion(); - /* 809A0728 */ void calcRearWheelRotate(); - /* 809A0E00 */ void calcHarnessMotion(); - /* 809A1180 */ void calcFrontWheelRotate(); - /* 809A1810 */ void calcHorseMotion(); - /* 809A1BE0 */ void calcHorseAnm(); - /* 809A2740 */ void calcHorsePath(); - /* 809A2EB8 */ void draw(); - /* 809A3330 */ ~daNpcCoach_c(); - /* 809A3884 */ void create(); - /* 809A3928 */ void create_init(); - /* 809A4078 */ void initCollision(); - /* 809A43A0 */ void initBaseMtx(); - /* 809A43DC */ void setBaseMtx(); - /* 809A46C4 */ void initCoachBlazing(); - /* 809A48A8 */ daNpcCoach_c(); - - static u8 const M_attr[160]; -}; - -struct daNpcChHarness_c { - /* 809A3570 */ ~daNpcChHarness_c(); -}; - -struct daNpcChCoach_c { - /* 809A3674 */ ~daNpcChCoach_c(); -}; - -struct dTres_c { - /* 8009C3CC */ void setPosition(int, u8, Vec const*, int); -}; - -struct dSv_memBit_c { - /* 800347A0 */ void onTbox(int); - /* 800347C4 */ void offTbox(int); -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); - /* 80034BC0 */ void offSwitch(int); - /* 80034BE8 */ void isSwitch(int) const; -}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dPa_levelEcallBack {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); - - static u8 mParticleTracePCB[4 + 4 /* padding */]; -}; - -struct dMeter2Info_c { - /* 8021C0E0 */ void setFloatingMessage(u16, s16, bool); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809A4B9C */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); - /* 809A3798 */ ~dCcD_Cyl(); - /* 809A4D7C */ dCcD_Cyl(); -}; - -struct dBgW_Base {}; - -struct dBgW { - /* 8007B970 */ dBgW(); - /* 8007B9C0 */ void Move(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809A4E00 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 809A4BF8 */ ~dBgS_AcchCir(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dBgS { - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); - /* 80075100 */ void GetRoomId(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 809A4C68 */ ~cM3dGSph(); -}; - -struct cM3dGPla { - /* 809A0DB8 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809A4CB0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809A4CF8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809A4E70 */ ~cCcD_GStts(); -}; - -struct cBgW_BgId { - /* 802681D4 */ void ChkUsed() const; -}; - -struct cBgD_t {}; - -struct cBgW { - /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct _GXTexObj {}; - -struct Z2SoundObjCoach { - /* 802C54B8 */ Z2SoundObjCoach(); - /* 802C551C */ void startWheelSound(f32); - /* 802C56C0 */ void startFireSound(u16); -}; - -struct Z2SoundObjBase { - /* 802BDF48 */ ~Z2SoundObjBase(); -}; - -struct Z2CreatureRide { - /* 802C4FFC */ Z2CreatureRide(); - /* 802C5114 */ ~Z2CreatureRide(); - /* 802C520C */ void init(Vec*, Vec*, u8, u8); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DLightObj { - /* 809A4D40 */ J3DLightObj(); -}; - -struct J3DLightInfo { - /* 803256C4 */ void operator=(J3DLightInfo const&); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8099EAD8 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -582,13 +205,6 @@ extern "C" void __dl__FPv(); extern "C" void __as__12J3DLightInfoFRC12J3DLightInfo(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXInverse(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void _savegpr_17(); @@ -609,12 +225,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); -extern "C" extern u8 const j3dDefaultLightInfo[52]; extern "C" extern void* __vt__19mDoExt_3DlineMat1_c[5]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -624,14 +235,10 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__15Z2SoundObjCoach[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */]; extern "C" void getHandPos1__11daNpcTheB_cFi(); @@ -722,7 +329,8 @@ static asm void arrowStickCallBack(dBgW* param_0, fopAc_ac_c* param_1, fopAc_ac_ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__4cXyzFv.s" } @@ -932,25 +540,30 @@ SECTION_DATA static u8 data_809A51AC[4] = { }; /* 809A51B0-809A51D0 -00001 0020+00 1/0 0/0 0/0 .data l_daNpcCoach_Method */ -SECTION_DATA static void* l_daNpcCoach_Method[8] = { - (void*)daNpcCoach_Create__FP10fopAc_ac_c, - (void*)daNpcCoach_Delete__FP12daNpcCoach_c, - (void*)daNpcCoach_Execute__FP12daNpcCoach_c, - (void*)daNpcCoach_IsDelete__FP12daNpcCoach_c, - (void*)daNpcCoach_Draw__FP12daNpcCoach_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpcCoach_Method = { + (process_method_func)daNpcCoach_Create__FP10fopAc_ac_c, + (process_method_func)daNpcCoach_Delete__FP12daNpcCoach_c, + (process_method_func)daNpcCoach_Execute__FP12daNpcCoach_c, + (process_method_func)daNpcCoach_IsDelete__FP12daNpcCoach_c, + (process_method_func)daNpcCoach_Draw__FP12daNpcCoach_c, }; /* 809A51D0-809A5200 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_COACH */ -SECTION_DATA extern void* g_profile_NPC_COACH[12] = { - (void*)0xFFFFFFFD, (void*)0x0003FFFD, - (void*)0x00560000, (void*)&g_fpcLf_Method, - (void*)0x00002570, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x014A0000, (void*)&l_daNpcCoach_Method, - (void*)0x00040100, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_COACH = { + fpcLy_CURRENT_e, // mLayerID + 3, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_COACH, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcCoach_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 330, // mPriority + &l_daNpcCoach_Method, // sub_method + 0x00040100, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809A5200-809A5214 0000D0 0014+00 1/1 0/0 0/0 .data __vt__18mDoExt_3DlineMat_c */ @@ -1041,7 +654,8 @@ asm void daNpcCoach_c::createHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__12J3DFrameCtrlFv.s" } @@ -1346,7 +960,8 @@ asm void daNpcCoach_c::calcRearWheelRotate() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__8cM3dGPlaFv.s" } @@ -1621,7 +1236,8 @@ asm daNpcChCoach_c::~daNpcChCoach_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Cyl::~dCcD_Cyl() { +// asm dCcD_Cyl::~dCcD_Cyl() { +extern "C" asm void __dt__8dCcD_CylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__8dCcD_CylFv.s" } @@ -1791,7 +1407,8 @@ asm daNpcCoach_c::daNpcCoach_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__10dCcD_GSttsFv.s" } @@ -1801,7 +1418,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__12dBgS_AcchCirFv.s" } @@ -1811,7 +1429,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__8cM3dGSphFv.s" } @@ -1821,7 +1440,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__8cM3dGCylFv.s" } @@ -1831,7 +1451,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__8cM3dGAabFv.s" } @@ -1841,14 +1462,16 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DLightObj::J3DLightObj() { +// asm J3DLightObj::J3DLightObj() { +extern "C" asm void __ct__11J3DLightObjFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__ct__11J3DLightObjFv.s" } #pragma pop /* 809A4D78-809A4D7C 007718 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1856,7 +1479,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Cyl::dCcD_Cyl() { +// asm dCcD_Cyl::dCcD_Cyl() { +extern "C" asm void __ct__8dCcD_CylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__ct__8dCcD_CylFv.s" } @@ -1866,7 +1490,8 @@ asm dCcD_Cyl::dCcD_Cyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__12dBgS_ObjAcchFv.s" } @@ -1876,7 +1501,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_coach/d_a_npc_coach/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_df/d_a_npc_df.cpp b/rel/d/a/npc/d_a_npc_df/d_a_npc_df.cpp index 291a27f5da..ed71c304a8 100644 --- a/rel/d/a/npc/d_a_npc_df/d_a_npc_df.cpp +++ b/rel/d/a/npc/d_a_npc_df/d_a_npc_df.cpp @@ -1,93 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_df -// +/** + * @file d_a_npc_df.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_df/d_a_npc_df.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_df_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct df_s { - /* 809A6728 */ ~df_s(); - /* 809A6764 */ df_s(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct J3DModel {}; - -struct J3DModelData {}; - -struct dComIfG_play_c { - /* 8002CAF0 */ void addSimpleModel(J3DModelData*, int, u8); - /* 8002CB30 */ void removeSimpleModel(J3DModelData*, int); - /* 8002CB68 */ void entrySimpleModel(J3DModel*, int); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk { - /* 809A6800 */ ~dBgS_ObjGndChk(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266B84 */ void operator*(f32) const; -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - // // Forward References: // @@ -153,10 +71,6 @@ extern "C" void cLib_addCalc2__FPffff(); extern "C" void cLib_addCalcAngleS2__FPssss(); extern "C" void MtxPosition__FP4cXyzP4cXyz(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __construct_array(); extern "C" void _savegpr_24(); extern "C" void _savegpr_26(); @@ -168,13 +82,8 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -779,25 +688,30 @@ df_s::df_s() { /* ############################################################################################## */ /* 809A6984-809A69A4 -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Df_Method */ -SECTION_DATA static void* l_daNpc_Df_Method[8] = { - (void*)daNpc_Df_Create__FP10fopAc_ac_c, - (void*)daNpc_Df_Delete__FP12npc_df_class, - (void*)daNpc_Df_Execute__FP12npc_df_class, - (void*)daNpc_Df_IsDelete__FP12npc_df_class, - (void*)daNpc_Df_Draw__FP12npc_df_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Df_Method = { + (process_method_func)daNpc_Df_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Df_Delete__FP12npc_df_class, + (process_method_func)daNpc_Df_Execute__FP12npc_df_class, + (process_method_func)daNpc_Df_IsDelete__FP12npc_df_class, + (process_method_func)daNpc_Df_Draw__FP12npc_df_class, }; /* 809A69A4-809A69D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_DF */ -SECTION_DATA extern void* g_profile_NPC_DF[12] = { - (void*)0xFFFFFFFD, (void*)0x0009FFFD, - (void*)0x03070000, (void*)&g_fpcLf_Method, - (void*)0x00000D44, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01B70000, (void*)&l_daNpc_Df_Method, - (void*)0x00040000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_DF = { + fpcLy_CURRENT_e, // mLayerID + 9, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_DF, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_df_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 439, // mPriority + &l_daNpc_Df_Method, // sub_method + 0x00040000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809A69D4-809A6A04 000050 0030+00 2/2 0/0 0/0 .data __vt__14dBgS_ObjGndChk */ @@ -835,7 +749,8 @@ REGISTER_CTORS(0x809A6768, __sinit_d_a_npc_df_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +// asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +extern "C" asm void __dt__14dBgS_ObjGndChkFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_df/d_a_npc_df/__dt__14dBgS_ObjGndChkFv.s" } diff --git a/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.cpp b/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.cpp index 023cd6eb31..92a01aafc0 100644 --- a/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.cpp +++ b/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.cpp @@ -1,377 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_doc -// +/** + * @file d_a_npc_doc.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_doc/d_a_npc_doc.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 809A9B74 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Doc_c { - /* 809A6C8C */ ~daNpc_Doc_c(); - /* 809A6DC0 */ void create(); - /* 809A7088 */ void CreateHeap(); - /* 809A74C8 */ void Delete(); - /* 809A74FC */ void Execute(); - /* 809A751C */ void Draw(); - /* 809A75B0 */ void createHeapCallBack(fopAc_ac_c*); - /* 809A75D0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809A7628 */ void getType(); - /* 809A7660 */ void isDelete(); - /* 809A7694 */ void reset(); - /* 809A7918 */ void afterJntAnm(int); - /* 809A79A4 */ void setParam(); - /* 809A7ABC */ void checkChangeEvt(); - /* 809A7BC4 */ void setAfterTalkMotion(); - /* 809A7C3C */ void srchActors(); - /* 809A7C40 */ void evtTalk(); - /* 809A7CE0 */ void evtCutProc(); - /* 809A7DA8 */ void action(); - /* 809A7F3C */ void beforeMove(); - /* 809A80B8 */ void setAttnPos(); - /* 809A83A8 */ void setCollision(); - /* 809A8530 */ bool drawDbgInfo(); - /* 809A8538 */ void selectAction(); - /* 809A8620 */ void chkAction(int (daNpc_Doc_c::*)(void*)); - /* 809A864C */ void setAction(int (daNpc_Doc_c::*)(void*)); - /* 809A86F4 */ void wait(void*); - /* 809A8A9C */ void walk(void*); - /* 809A8C78 */ void talk(void*); - /* 809AA18C */ daNpc_Doc_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809AA24C */ s32 getEyeballMaterialNo(); - /* 809AA254 */ s32 getHeadJointNo(); - /* 809AA25C */ s32 getNeckJointNo(); - /* 809AA264 */ bool getBackboneJointNo(); - /* 809AA26C */ void checkChangeJoint(int); - /* 809AA27C */ void checkRemoveJoint(int); - /* 809AA28C */ s32 getFootLJointNo(); - /* 809AA294 */ s32 getFootRJointNo(); - /* 809AA29C */ void chkXYItems(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Doc_Param_c { - /* 809AA2B0 */ ~daNpc_Doc_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 809A9510 */ ~csXyz(); - /* 809A9A28 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 809A94D4 */ ~cXyz(); - /* 809A9B28 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 809A914C */ ~daNpcT_c(); - /* 809A9624 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809AA064 */ void ctrlSubFaceMotion(int); - /* 809AA068 */ bool getEyeballLMaterialNo(); - /* 809AA070 */ bool getEyeballRMaterialNo(); - /* 809AA078 */ bool evtEndProc(); - /* 809AA080 */ void afterMoved(); - /* 809AA084 */ void decTmr(); - /* 809AA09C */ void drawOtherMdl(); - /* 809AA0A0 */ void drawGhost(); - /* 809AA0A4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809AA0AC */ bool afterSetMotionAnm(int, int, f32, int); - /* 809AA0B4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809AA0E4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809AA114 */ void changeAnm(int*, int*); - /* 809AA118 */ void changeBck(int*, int*); - /* 809AA11C */ void changeBtp(int*, int*); - /* 809AA120 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 809A954C */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809A9A2C */ ~daNpcT_JntAnm_c(); - /* 809A9D40 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809A9E5C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809A9B2C */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809A9BBC */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809A9C2C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809A9C88 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809A9594 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809A95DC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809A9104 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 809A73B4 */ ~J3DTexNoAnm(); - /* 809A73FC */ J3DTexNoAnm(); - /* 809A90D4 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809A7420 */ ~J3DTexMtxAnm(); - /* 809A745C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809A730C */ ~J3DTevKColorAnm(); - /* 809A7348 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809A7360 */ ~J3DTevColorAnm(); - /* 809A739C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809A7474 */ ~J3DMatColorAnm(); - /* 809A74B0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809A9CF8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -481,7 +115,6 @@ extern "C" u8 mCutList__11daNpc_Doc_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -591,10 +224,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -609,8 +238,6 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -621,10 +248,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -852,25 +475,30 @@ SECTION_DATA static void* lit_4895[3] = { #pragma pop /* 809AA8FC-809AA91C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Doc_MethodTable */ -SECTION_DATA static void* daNpc_Doc_MethodTable[8] = { - (void*)daNpc_Doc_Create__FPv, - (void*)daNpc_Doc_Delete__FPv, - (void*)daNpc_Doc_Execute__FPv, - (void*)daNpc_Doc_IsDelete__FPv, - (void*)daNpc_Doc_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Doc_MethodTable = { + (process_method_func)daNpc_Doc_Create__FPv, + (process_method_func)daNpc_Doc_Delete__FPv, + (process_method_func)daNpc_Doc_Execute__FPv, + (process_method_func)daNpc_Doc_IsDelete__FPv, + (process_method_func)daNpc_Doc_Draw__FPv, }; /* 809AA91C-809AA94C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_DOC */ -SECTION_DATA extern void* g_profile_NPC_DOC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x024E0000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x014F0000, (void*)&daNpc_Doc_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_DOC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_DOC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Doc_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 335, // mPriority + &daNpc_Doc_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809AA94C-809AA958 00050C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1130,7 +758,8 @@ asm void daNpc_Doc_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__15J3DTevKColorAnmFv.s" } @@ -1140,7 +769,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__ct__15J3DTevKColorAnmFv.s" } @@ -1150,7 +780,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__14J3DTevColorAnmFv.s" } @@ -1160,7 +791,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__ct__14J3DTevColorAnmFv.s" } @@ -1170,7 +802,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__11J3DTexNoAnmFv.s" } @@ -1180,7 +813,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__ct__11J3DTexNoAnmFv.s" } @@ -1190,7 +824,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__12J3DTexMtxAnmFv.s" } @@ -1200,7 +835,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__ct__12J3DTexMtxAnmFv.s" } @@ -1210,7 +846,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__14J3DMatColorAnmFv.s" } @@ -1220,7 +857,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__ct__14J3DMatColorAnmFv.s" } @@ -1749,7 +1387,8 @@ static bool daNpc_Doc_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/calc__11J3DTexNoAnmCFPUs.s" } @@ -1759,7 +1398,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__10cCcD_GSttsFv.s" } @@ -1769,7 +1409,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__8daNpcT_cFv.s" } @@ -1779,7 +1420,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__4cXyzFv.s" } @@ -1789,7 +1431,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__5csXyzFv.s" } @@ -1799,7 +1442,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__13daNpcT_Path_cFv.s" } @@ -1809,7 +1453,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__8cM3dGCylFv.s" } @@ -1819,7 +1464,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__8cM3dGAabFv.s" } @@ -1831,18 +1477,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/func_809A9624.s" } #pragma pop /* 809A9A28-809A9A2C 002E88 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1850,14 +1498,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809A9B28-809A9B2C 002F88 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1865,7 +1515,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1875,7 +1526,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1885,7 +1537,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__12dBgS_AcchCirFv.s" } @@ -1895,7 +1548,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__10dCcD_GSttsFv.s" } @@ -1905,7 +1559,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__12dBgS_ObjAcchFv.s" } @@ -1915,7 +1570,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/__dt__12J3DFrameCtrlFv.s" } @@ -1925,8 +1581,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1936,31 +1593,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809AA064-809AA068 0034C4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 809AA068-809AA070 0034C8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809AA070-809AA078 0034D0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 809AA078-809AA080 0034D8 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1973,30 +1635,35 @@ void daNpcT_c::afterMoved() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809AA09C-809AA0A0 0034FC 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 809AA0A0-809AA0A4 003500 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809AA0A4-809AA0AC 003504 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 809AA0AC-809AA0B4 00350C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2005,7 +1672,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2016,29 +1684,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doc/d_a_npc_doc/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809AA114-809AA118 003574 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809AA118-809AA11C 003578 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809AA11C-809AA120 00357C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809AA120-809AA124 003580 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.cpp b/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.cpp index 0e1e975a67..a241b194a5 100644 --- a/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.cpp +++ b/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.cpp @@ -1,303 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_doorboy -// +/** + * @file d_a_npc_doorboy.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 809AD2A4 */ ~daNpcF_c(); - /* 809AD4F0 */ daNpcF_c(); - /* 809AD864 */ bool ctrlBtk(); - /* 809AD86C */ void setCollisions(); - /* 809AD870 */ bool setExpressionAnm(int, bool); - /* 809AD878 */ bool setExpressionBtp(int); - /* 809AD880 */ void setExpression(int, f32); - /* 809AD884 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct csXyz { - /* 809AD224 */ ~csXyz(); - /* 809AD260 */ csXyz(); -}; - -struct cXyz { - /* 809AD264 */ ~cXyz(); - /* 809AD2A0 */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809AD154 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809AD0D0 */ ~daNpcF_ActorMngr_c(); - /* 809AD118 */ daNpcF_ActorMngr_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcDoorBoy_c { - /* 809AAC8C */ daNpcDoorBoy_c(); - /* 809AAEA0 */ ~daNpcDoorBoy_c(); - /* 809AB088 */ void Create(); - /* 809AB320 */ void CreateHeap(); - /* 809AB4A4 */ void Delete(); - /* 809AB4D8 */ void Execute(); - /* 809AB4FC */ void Draw(); - /* 809AB578 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809AB704 */ void createHeapCallBack(fopAc_ac_c*); - /* 809AB724 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809AB770 */ void setMotion(int, f32, int); - /* 809AB7B8 */ void reset(); - /* 809AB984 */ void setAction(bool (daNpcDoorBoy_c::*)(void*)); - /* 809ABA2C */ void wait(void*); - /* 809AC064 */ void fear(void*); - /* 809AC114 */ void talk(void*); - /* 809AC528 */ void demo(void*); - /* 809AC6F4 */ void dummyTalk(void*); - /* 809AC994 */ void setParam(); - /* 809ACA58 */ void main(); - /* 809ACC5C */ void setAttnPos(); - /* 809ACE18 */ void lookat(); - /* 809ACFF8 */ void setMotionAnm(int, f32); - /* 809AD0C8 */ bool drawDbgInfo(); - /* 809AD938 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[12]; -}; - -struct daNpcDoorBoy_Param_c { - /* 809AD93C */ ~daNpcDoorBoy_Param_c(); - - static u8 const m[108]; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 80237A9C */ void getNowTalkFlowNo(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809AD750 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809AD7AC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809AD6E0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809AAE10 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809AAE58 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809AD888 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct Vec {}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); - /* 802C0D48 */ void setMdlType(s8, bool, bool); - /* 802C0E18 */ void playVoice(int); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809AD81C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -461,8 +169,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -477,10 +183,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -490,9 +193,7 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -650,25 +351,30 @@ SECTION_DATA static void* lit_4799[3] = { }; /* 809ADC24-809ADC44 -00001 0020+00 1/0 0/0 0/0 .data daNpcDoorBoy_MethodTable */ -SECTION_DATA static void* daNpcDoorBoy_MethodTable[8] = { - (void*)daNpcDoorBoy_Create__FPv, - (void*)daNpcDoorBoy_Delete__FPv, - (void*)daNpcDoorBoy_Execute__FPv, - (void*)daNpcDoorBoy_IsDelete__FPv, - (void*)daNpcDoorBoy_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcDoorBoy_MethodTable = { + (process_method_func)daNpcDoorBoy_Create__FPv, + (process_method_func)daNpcDoorBoy_Delete__FPv, + (process_method_func)daNpcDoorBoy_Execute__FPv, + (process_method_func)daNpcDoorBoy_IsDelete__FPv, + (process_method_func)daNpcDoorBoy_Draw__FPv, }; /* 809ADC44-809ADC74 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_DOORBOY */ -SECTION_DATA extern void* g_profile_NPC_DOORBOY[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029F0000, (void*)&g_fpcLf_Method, - (void*)0x00000E08, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A20000, (void*)&daNpcDoorBoy_MethodTable, - (void*)0x00044187, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_DOORBOY = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_DOORBOY, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcDoorBoy_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 418, // mPriority + &daNpcDoorBoy_MethodTable, // sub_method + 0x00044187, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809ADC74-809ADCBC 00014C 0048+00 2/2 0/0 0/0 .data __vt__14daNpcDoorBoy_c */ @@ -776,7 +482,8 @@ asm daNpcDoorBoy_c::daNpcDoorBoy_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__8cM3dGCylFv.s" } @@ -786,7 +493,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__8cM3dGAabFv.s" } @@ -1358,7 +1066,8 @@ bool daNpcDoorBoy_c::drawDbgInfo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1368,7 +1077,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1378,7 +1088,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__15daNpcF_Lookat_cFv.s" } @@ -1388,14 +1099,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__5csXyzFv.s" } #pragma pop /* 809AD260-809AD264 0026C0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1403,14 +1116,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__4cXyzFv.s" } #pragma pop /* 809AD2A0-809AD2A4 002700 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1418,7 +1133,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__8daNpcF_cFv.s" } @@ -1428,7 +1144,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__ct__8daNpcF_cFv.s" } @@ -1438,7 +1155,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__12dBgS_AcchCirFv.s" } @@ -1448,7 +1166,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__10dCcD_GSttsFv.s" } @@ -1458,7 +1177,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__12dBgS_ObjAcchFv.s" } @@ -1468,39 +1188,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809AD864-809AD86C 002CC4 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 809AD86C-809AD870 002CCC 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 809AD870-809AD878 002CD0 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 809AD878-809AD880 002CD8 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 809AD880-809AD884 002CE0 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 809AD884-809AD888 002CE4 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -1508,7 +1235,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_doorboy/d_a_npc_doorboy/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.cpp b/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.cpp index 13813270a3..9374a857f8 100644 --- a/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.cpp +++ b/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.cpp @@ -1,262 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_drainSol -// +/** + * @file d_a_npc_drainSol.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daPy_py_c { - /* 8015F424 */ void checkNowWolfEyeUp(); -}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80154278 */ void getDistTableIdx(int, int); - /* 809AF204 */ ~daNpcF_c(); - /* 809AF4D4 */ daNpcF_c(); - /* 809AF88C */ bool ctrlBtk(); - /* 809AF894 */ void setCollisions(); - /* 809AF898 */ bool setExpressionAnm(int, bool); - /* 809AF8A0 */ bool setExpressionBtp(int); - /* 809AF8A8 */ void setExpression(int, f32); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 809AF450 */ ~daNpcF_ActorMngr_c(); - /* 809AF6CC */ daNpcF_ActorMngr_c(); -}; - -struct daNpcDrSol_c { - /* 809ADE6C */ daNpcDrSol_c(); - /* 809ADFE4 */ ~daNpcDrSol_c(); - /* 809AE10C */ void Create(); - /* 809AE354 */ void CreateHeap(); - /* 809AE51C */ void Delete(); - /* 809AE550 */ void Execute(); - /* 809AE5CC */ void Draw(); - /* 809AE60C */ void drawOtherMdls(); - /* 809AE69C */ void createHeapCallBack(fopAc_ac_c*); - /* 809AE6BC */ void reset(); - /* 809AE844 */ void setAction(bool (daNpcDrSol_c::*)(void*)); - /* 809AE8EC */ void chkFindPlayer(); - /* 809AE994 */ void wait(void*); - /* 809AEB18 */ void setMotion(int, f32, int); - /* 809AEB94 */ void talk(void*); - /* 809AEDA8 */ void setParam(); - /* 809AEE24 */ void main(); - /* 809AEFDC */ void setAttnPos(); - /* 809AF12C */ void setMotionAnm(int, f32); - /* 809AF1FC */ bool drawDbgInfo(); - /* 809AF934 */ void adjustShapeAngle(); -}; - -struct daNpcDrSol_Param_c { - /* 809AF938 */ ~daNpcDrSol_Param_c(); - - static u8 const m[108]; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809AF778 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809AF7D4 */ ~dBgS_ObjAcch(); -}; - -struct cXyz { - /* 809ADFA8 */ ~cXyz(); - /* 809AF6C8 */ cXyz(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 809AF708 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 809AF498 */ ~csXyz(); - /* 809AF6C4 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809ADF18 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809ADF60 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809AF8AC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809AF844 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -387,8 +136,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -396,8 +143,6 @@ extern "C" void __ptmf_scall(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -406,8 +151,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" void __register_global_object(); // @@ -461,25 +204,30 @@ SECTION_DATA static void* lit_4385[3] = { }; /* 809AFB18-809AFB38 -00001 0020+00 1/0 0/0 0/0 .data daNpcDrSol_MethodTable */ -SECTION_DATA static void* daNpcDrSol_MethodTable[8] = { - (void*)daNpcDrSol_Create__FPv, - (void*)daNpcDrSol_Delete__FPv, - (void*)daNpcDrSol_Execute__FPv, - (void*)daNpcDrSol_IsDelete__FPv, - (void*)daNpcDrSol_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcDrSol_MethodTable = { + (process_method_func)daNpcDrSol_Create__FPv, + (process_method_func)daNpcDrSol_Delete__FPv, + (process_method_func)daNpcDrSol_Execute__FPv, + (process_method_func)daNpcDrSol_IsDelete__FPv, + (process_method_func)daNpcDrSol_Draw__FPv, }; /* 809AFB38-809AFB68 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_DRSOL */ -SECTION_DATA extern void* g_profile_NPC_DRSOL[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A40000, (void*)&g_fpcLf_Method, - (void*)0x00000D3C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A70000, (void*)&daNpcDrSol_MethodTable, - (void*)0x00044187, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_DRSOL = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_DRSOL, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcDrSol_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 423, // mPriority + &daNpcDrSol_MethodTable, // sub_method + 0x00044187, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809AFB68-809AFBB0 00009C 0048+00 2/2 0/0 0/0 .data __vt__12daNpcDrSol_c */ @@ -580,7 +328,8 @@ asm daNpcDrSol_c::daNpcDrSol_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__8cM3dGCylFv.s" } @@ -590,7 +339,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__8cM3dGAabFv.s" } @@ -600,7 +350,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__4cXyzFv.s" } @@ -1025,7 +776,8 @@ bool daNpcDrSol_c::drawDbgInfo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__8daNpcF_cFv.s" } @@ -1035,7 +787,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1045,7 +798,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__5csXyzFv.s" } @@ -1055,19 +809,22 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__ct__8daNpcF_cFv.s" } #pragma pop /* 809AF6C4-809AF6C8 001944 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } /* 809AF6C8-809AF6CC 001948 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1075,7 +832,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1085,7 +843,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__12dBgS_AcchCirFv.s" } @@ -1095,7 +854,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__10dCcD_GSttsFv.s" } @@ -1105,7 +865,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__12dBgS_ObjAcchFv.s" } @@ -1115,34 +876,40 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809AF88C-809AF894 001B0C 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 809AF894-809AF898 001B14 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 809AF898-809AF8A0 001B18 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 809AF8A0-809AF8A8 001B20 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 809AF8A8-809AF8AC 001B28 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } @@ -1150,7 +917,8 @@ void daNpcF_c::setExpression(int param_0, f32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_drainSol/d_a_npc_drainSol/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_du/d_a_npc_du.cpp b/rel/d/a/npc/d_a_npc_du/d_a_npc_du.cpp index 8974fbb31f..182b7e5bf6 100644 --- a/rel/d/a/npc/d_a_npc_du/d_a_npc_du.cpp +++ b/rel/d/a/npc/d_a_npc_du/d_a_npc_du.cpp @@ -1,156 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_du -// +/** + * @file d_a_npc_du.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_du/d_a_npc_du.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_du_class {}; - -struct mDoMtx_stack_c { - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTexPattern {}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct mDoExt_McaMorf { - /* 8000FC4C */ mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, int, - int, void*, u32, u32); - /* 8001037C */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32, void*); - /* 800105C8 */ void play(Vec*, u32, s8); - /* 80010680 */ void entryDL(); - /* 800106AC */ void modelCalc(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpc_Du_HIO_c { - /* 809AFD4C */ daNpc_Du_HIO_c(); - /* 809B17A0 */ ~daNpc_Du_HIO_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk_Spl { - /* 800777B0 */ dBgS_ObjGndChk_Spl(); - /* 80077848 */ ~dBgS_ObjGndChk_Spl(); -}; - -struct dBgS_ObjAcch { - /* 809B1730 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); -}; - -struct csXyz {}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct _GXTexObj {}; - -struct Z2SoundObjSimple { - /* 802BE844 */ Z2SoundObjSimple(); -}; - -struct Z2SoundObjBase { - /* 802BDFF8 */ void deleteObject(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809B13C8 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -249,28 +105,20 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_SphAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -307,25 +155,30 @@ static dCcD_SrcSph cc_sph_src = { }; /* 809B193C-809B195C -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Du_Method */ -SECTION_DATA static void* l_daNpc_Du_Method[8] = { - (void*)daNpc_Du_Create__FP10fopAc_ac_c, - (void*)daNpc_Du_Delete__FP12npc_du_class, - (void*)daNpc_Du_Execute__FP12npc_du_class, - (void*)daNpc_Du_IsDelete__FP12npc_du_class, - (void*)daNpc_Du_Draw__FP12npc_du_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Du_Method = { + (process_method_func)daNpc_Du_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Du_Delete__FP12npc_du_class, + (process_method_func)daNpc_Du_Execute__FP12npc_du_class, + (process_method_func)daNpc_Du_IsDelete__FP12npc_du_class, + (process_method_func)daNpc_Du_Draw__FP12npc_du_class, }; /* 809B195C-809B198C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_DU */ -SECTION_DATA extern void* g_profile_NPC_DU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x01380000, (void*)&g_fpcLf_Method, - (void*)0x00000A00, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02D20000, (void*)&l_daNpc_Du_Method, - (void*)0x08044100, (void*)0x04000000, +extern actor_process_profile_definition g_profile_NPC_DU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_DU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_du_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 722, // mPriority + &l_daNpc_Du_Method, // sub_method + 0x08044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 809B198C-809B1998 0000A0 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */ @@ -766,7 +619,8 @@ static asm void useHeapInit(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_du/d_a_npc_du/__dt__12J3DFrameCtrlFv.s" } @@ -830,7 +684,8 @@ extern "C" asm void __dt__8cM3dGAabFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_du/d_a_npc_du/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.cpp b/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.cpp index 9dfcb2b61f..564b117c58 100644 --- a/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.cpp +++ b/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.cpp @@ -1,516 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_fairy -// +/** + * @file d_a_npc_fairy.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 809B88E8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Fairy_c { - /* 809B228C */ ~daNpc_Fairy_c(); - /* 809B2430 */ void Create(); - /* 809B26E8 */ void CreateHeap(); - /* 809B2B44 */ void setAnmData(); - /* 809B2C20 */ void setMotionAnm(int, f32, int); - /* 809B2E78 */ void afterSetMotionAnm(int, int, f32, int); - /* 809B2EFC */ void Delete(); - /* 809B2F30 */ void Execute(); - /* 809B2F8C */ void Draw(); - /* 809B3034 */ void drawOtherMdl(); - /* 809B3074 */ void createHeapCallBack(fopAc_ac_c*); - /* 809B3094 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809B30EC */ bool isDelete(); - /* 809B30F4 */ void reset(); - /* 809B32C4 */ void initStatus(); - /* 809B32D0 */ void afterJntAnm(int); - /* 809B335C */ void setParam(); - /* 809B349C */ bool checkChangeEvt(); - /* 809B34A4 */ void setAfterTalkMotion(); - /* 809B3520 */ void srchActors(); - /* 809B3524 */ void evtTalk(); - /* 809B3630 */ void evtCutProc(); - /* 809B36F8 */ void evtEndProc(); - /* 809B379C */ void action(); - /* 809B384C */ void ptcl_water(); - /* 809B38E8 */ void ptcl_sprit(); - /* 809B39FC */ void _to_FairyField(); - /* 809B3AB0 */ void chk_tempbit(); - /* 809B3B20 */ void beforeMove(); - /* 809B3B98 */ void afterMoved(); - /* 809B3C64 */ void setAttnPos(); - /* 809B3EA0 */ void setCollision(); - /* 809B3FD8 */ bool drawDbgInfo(); - /* 809B3FE0 */ void setAction(int (daNpc_Fairy_c::*)(int), int); - /* 809B4090 */ void wait(int); - /* 809B4360 */ void talk(int); - /* 809B4450 */ void AppearDemoCall(); - /* 809B4588 */ void ReturnDemoCall(); - /* 809B45BC */ void PresentDemoCall(); - /* 809B464C */ void cutAppear_10F_01(int); - /* 809B46E0 */ void _cutAppear_10F_01_Init(int const&); - /* 809B48C4 */ void _cutAppear_10F_01_Main(int const&); - /* 809B4A44 */ void cutAppear_10F_02(int); - /* 809B4AD8 */ void _cutAppear_10F_02_Init(int const&); - /* 809B4BF8 */ void _cutAppear_10F_02_Main(int const&); - /* 809B4CC0 */ void cutAppear_20F_01(int); - /* 809B4D54 */ void _cutAppear_20F_01_Init(int const&); - /* 809B4EB4 */ void _cutAppear_20F_01_Main(int const&); - /* 809B5000 */ void cutAppear_20F_02(int); - /* 809B5094 */ void _cutAppear_20F_02_Init(int const&); - /* 809B51F4 */ void _cutAppear_20F_02_Main(int const&); - /* 809B5340 */ void cutAppear_30F_01(int); - /* 809B53D4 */ void _cutAppear_30F_01_Init(int const&); - /* 809B54F4 */ void _cutAppear_30F_01_Main(int const&); - /* 809B55BC */ void cutAppear_30F_02(int); - /* 809B5650 */ void _cutAppear_30F_02_Init(int const&); - /* 809B5770 */ void _cutAppear_30F_02_Main(int const&); - /* 809B5838 */ void cutAppear_40F_01(int); - /* 809B58CC */ void _cutAppear_40F_01_Init(int const&); - /* 809B59EC */ void _cutAppear_40F_01_Main(int const&); - /* 809B5AB4 */ void cutAppear_40F_02(int); - /* 809B5B48 */ void _cutAppear_40F_02_Init(int const&); - /* 809B5C68 */ void _cutAppear_40F_02_Main(int const&); - /* 809B5D30 */ void cutAppear_50F_01(int); - /* 809B5E00 */ void _cutAppear_50F_01_Init(int const&, int const&); - /* 809B6084 */ void _cutAppear_50F_01_Main(int const&, int const&); - /* 809B631C */ void cutAppear_50F_02(int); - /* 809B63EC */ void _cutAppear_50F_02_Init(int const&, int const&); - /* 809B662C */ void _cutAppear_50F_02_Main(int const&, int const&); - /* 809B6830 */ void cutAppear_50F_03(int); - /* 809B6900 */ void _cutAppear_50F_03_Init(int const&, int const&); - /* 809B6ADC */ void _cutAppear_50F_03_Main(int const&, int const&); - /* 809B6C30 */ void cutAppear_50F_04(int); - /* 809B6D00 */ void _cutAppear_50F_04_Init(int const&, int const&); - /* 809B6F40 */ void _cutAppear_50F_04_Main(int const&, int const&); - /* 809B7168 */ void cutAppear_50F_05(int); - /* 809B7238 */ void _cutAppear_50F_05_Init(int const&, int const&); - /* 809B74AC */ void _cutAppear_50F_05_Main(int const&, int const&); - /* 809B7718 */ void cutSelect_Return1(int); - /* 809B77AC */ void _cutSelect_Return1_Init(int const&); - /* 809B78F0 */ void _cutSelect_Return1_Main(int const&); - /* 809B79A4 */ void cutSelect_Return2(int); - /* 809B7A38 */ void _cutSelect_Return2_Init(int const&); - /* 809B7A9C */ void _cutSelect_Return2_Main(int const&); - /* 809B7BA4 */ void cutSelect_Return3(int); - /* 809B7C38 */ void _cutSelect_Return3_Init(int const&); - /* 809B7D7C */ void _cutSelect_Return3_Main(int const&); - /* 809B7E30 */ void cutReturnCancel(int); - /* 809B7EC4 */ bool _cutReturnCancel_Init(int const&); - /* 809B7ECC */ bool _cutReturnCancel_Main(int const&); - /* 809B9054 */ daNpc_Fairy_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809B9238 */ bool getEyeballMaterialNo(); - /* 809B9240 */ s32 getHeadJointNo(); - /* 809B9248 */ s32 getNeckJointNo(); - /* 809B9250 */ bool getBackboneJointNo(); - /* 809B9258 */ void checkChangeJoint(int); - /* 809B9268 */ void checkRemoveJoint(int); - - static void* mCutNameList[18]; - static u8 mCutList[216]; -}; - -struct daNpc_Fairy_Param_c { - /* 809B9278 */ ~daNpc_Fairy_Param_c(); - - static u8 const m[148]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DAnmColor {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809B2250 */ ~cXyz(); - /* 809B889C */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 8014810C */ void getTexSRTKeyAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148184 */ void getColorAnmP(char const*, int); - /* 80148204 */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80148338 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483B8 */ void setBpkAnm(J3DAnmColor*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 809B7FD4 */ ~daNpcT_c(); - /* 809B8398 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809B8A6C */ void changeBtk(int*, int*); - /* 809B8A70 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809B8DC4 */ void ctrlSubFaceMotion(int); - /* 809B8DC8 */ s32 getFootLJointNo(); - /* 809B8DD0 */ s32 getFootRJointNo(); - /* 809B8DD8 */ bool getEyeballLMaterialNo(); - /* 809B8DE0 */ bool getEyeballRMaterialNo(); - /* 809B8DE8 */ bool chkXYItems(); - /* 809B8DF0 */ void decTmr(); - /* 809B8E08 */ void drawGhost(); - /* 809B8E0C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809B8E14 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809B8E44 */ void changeAnm(int*, int*); - /* 809B8E48 */ void changeBck(int*, int*); - /* 809B8E4C */ void changeBtp(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809B87A0 */ ~daNpcT_JntAnm_c(); - /* 809B8AA0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809B8BBC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809B88A0 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_player_item_c { - /* 800337EC */ void checkEmptyBottle(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct csXyz { - /* 809B835C */ ~csXyz(); - /* 809B879C */ csXyz(); -}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809B8930 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); - /* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - csXyz const*, cXyz const*, s8, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809B89A0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809B89FC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809B91A8 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809B91F0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809B7F8C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _Fairy_Feather_c { - /* 809B1B0C */ void create(); - /* 809B1BC0 */ void loadModel(); - /* 809B1CE4 */ void setAnm(int); - /* 809B1DEC */ void setBrk(int); - /* 809B1EA8 */ void setBtk(int); - /* 809B1F64 */ bool ctrlJointCallBack(J3DJoint*, int); - /* 809B1F6C */ void connect(daNpc_Fairy_c*); - /* 809B1FD4 */ void draw(daNpc_Fairy_c*); -}; - -struct Z2SeqMgr { - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 809B2A30 */ ~J3DTexNoAnm(); - /* 809B2A78 */ J3DTexNoAnm(); - /* 809B7F5C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809B2A9C */ ~J3DTexMtxAnm(); - /* 809B2AD8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809B2988 */ ~J3DTevKColorAnm(); - /* 809B29C4 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809B29DC */ ~J3DTevColorAnm(); - /* 809B2A18 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809B2AF0 */ ~J3DMatColorAnm(); - /* 809B2B2C */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809B9160 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -684,7 +179,6 @@ extern "C" u8 mCutList__13daNpc_Fairy_c[216]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void play__14mDoExt_baseAnmFv(); @@ -817,9 +311,6 @@ extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -836,8 +327,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -848,10 +337,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1039,7 +524,8 @@ asm void _Fairy_Feather_c::draw(daNpc_Fairy_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__4cXyzFv.s" } @@ -1905,25 +1391,30 @@ SECTION_DATA static void* lit_6512[51] = { }; /* 809BA254-809BA274 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Fairy_MethodTable */ -SECTION_DATA static void* daNpc_Fairy_MethodTable[8] = { - (void*)daNpc_Fairy_Create__FPv, - (void*)daNpc_Fairy_Delete__FPv, - (void*)daNpc_Fairy_Execute__FPv, - (void*)daNpc_Fairy_IsDelete__FPv, - (void*)daNpc_Fairy_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Fairy_MethodTable = { + (process_method_func)daNpc_Fairy_Create__FPv, + (process_method_func)daNpc_Fairy_Delete__FPv, + (process_method_func)daNpc_Fairy_Execute__FPv, + (process_method_func)daNpc_Fairy_IsDelete__FPv, + (process_method_func)daNpc_Fairy_Draw__FPv, }; /* 809BA274-809BA2A4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_FAIRY */ -SECTION_DATA extern void* g_profile_NPC_FAIRY[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02530000, (void*)&g_fpcLf_Method, - (void*)0x000010C8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01540000, (void*)&daNpc_Fairy_MethodTable, - (void*)0x08044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_FAIRY = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_FAIRY, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Fairy_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 340, // mPriority + &daNpc_Fairy_MethodTable, // sub_method + 0x08044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809BA2A4-809BA2B0 000CCC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -2139,7 +1630,8 @@ asm void daNpc_Fairy_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__15J3DTevKColorAnmFv.s" } @@ -2149,7 +1641,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__ct__15J3DTevKColorAnmFv.s" } @@ -2159,7 +1652,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__14J3DTevColorAnmFv.s" } @@ -2169,7 +1663,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__ct__14J3DTevColorAnmFv.s" } @@ -2179,7 +1674,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__11J3DTexNoAnmFv.s" } @@ -2189,7 +1685,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__ct__11J3DTexNoAnmFv.s" } @@ -2199,7 +1696,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__12J3DTexMtxAnmFv.s" } @@ -2209,7 +1707,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__ct__12J3DTexMtxAnmFv.s" } @@ -2219,7 +1718,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__14J3DMatColorAnmFv.s" } @@ -2229,7 +1729,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__ct__14J3DMatColorAnmFv.s" } @@ -3498,7 +2999,8 @@ static bool daNpc_Fairy_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/calc__11J3DTexNoAnmCFPUs.s" } @@ -3508,7 +3010,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__10cCcD_GSttsFv.s" } @@ -3518,7 +3021,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__8daNpcT_cFv.s" } @@ -3528,7 +3032,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__5csXyzFv.s" } @@ -3540,18 +3045,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/func_809B8398.s" } #pragma pop /* 809B879C-809B87A0 006D7C 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3559,14 +3066,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809B889C-809B88A0 006E7C 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3574,7 +3083,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3584,7 +3094,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3594,7 +3105,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__12dBgS_AcchCirFv.s" } @@ -3604,7 +3116,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__10dCcD_GSttsFv.s" } @@ -3614,14 +3127,16 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__12dBgS_ObjAcchFv.s" } #pragma pop /* 809B8A6C-809B8A70 00704C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -3630,7 +3145,8 @@ void daNpcT_c::changeBtk(int* param_0, int* param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } @@ -3640,8 +3156,9 @@ asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3651,14 +3168,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809B8DC4-809B8DC8 0073A4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -3674,18 +3193,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 809B8DD8-809B8DE0 0073B8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809B8DE0-809B8DE8 0073C0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 809B8DE8-809B8DF0 0073C8 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3693,19 +3215,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809B8E08-809B8E0C 0073E8 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809B8E0C-809B8E14 0073EC 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3714,24 +3239,28 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } #pragma pop /* 809B8E44-809B8E48 007424 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809B8E48-809B8E4C 007428 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809B8E4C-809B8E50 00742C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } @@ -3785,7 +3314,8 @@ asm daNpc_Fairy_c::daNpc_Fairy_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__12J3DFrameCtrlFv.s" } @@ -3795,7 +3325,8 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__8cM3dGCylFv.s" } @@ -3805,7 +3336,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy/d_a_npc_fairy/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.cpp b/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.cpp index 445bcb0a20..b74c1e9557 100644 --- a/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.cpp +++ b/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.cpp @@ -1,295 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_fairy_seirei -// +/** + * @file d_a_npc_fairy_seirei.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfSO { - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80541898 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_FairySeirei_c { - /* 8053FF6C */ ~daNpc_FairySeirei_c(); - /* 8054006C */ void create(); - /* 80540298 */ void Delete(); - /* 805402CC */ void Execute(); - /* 805402EC */ bool Draw(); - /* 805402F4 */ void isDelete(); - /* 80540334 */ void reset(); - /* 8054048C */ void setParam(); - /* 805405B0 */ void srchActors(); - /* 805405B4 */ void evtTalk(); - /* 805406BC */ void evtCutProc(); - /* 80540784 */ void action(); - /* 8054080C */ void beforeMove(); - /* 80540884 */ void setCollision(); - /* 80540988 */ void setAttnPos(); - /* 80540A30 */ bool drawDbgInfo(); - /* 80540A38 */ void selectAction(); - /* 80540A80 */ void setAction(int (daNpc_FairySeirei_c::*)(int)); - /* 80540B28 */ void setPrtcls(); - /* 80540C54 */ void wait(int); - /* 80540CC0 */ void talk(int); - /* 80540E10 */ void _to_FairyCave(); - /* 80541BE4 */ daNpc_FairySeirei_c(daNpcT_faceMotionAnmData_c const*, - daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_FairySeirei_Param_c { - /* 80541D20 */ ~daNpc_FairySeirei_Param_c(); - - static u8 const m[148]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct cXyz { - /* 805412D0 */ ~cXyz(); - /* 8054184C */ cXyz(); -}; - -struct daNpcT_c { - /* 8014852C */ void execute(); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80540F48 */ ~daNpcT_c(); - /* 80541348 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80541A64 */ void ctrlSubFaceMotion(int); - /* 80541A68 */ bool checkChangeJoint(int); - /* 80541A70 */ bool checkRemoveJoint(int); - /* 80541A78 */ s32 getBackboneJointNo(); - /* 80541A80 */ s32 getNeckJointNo(); - /* 80541A88 */ s32 getHeadJointNo(); - /* 80541A90 */ s32 getFootLJointNo(); - /* 80541A98 */ s32 getFootRJointNo(); - /* 80541AA0 */ bool getEyeballLMaterialNo(); - /* 80541AA8 */ bool getEyeballRMaterialNo(); - /* 80541AB0 */ bool getEyeballMaterialNo(); - /* 80541AB8 */ void afterJntAnm(int); - /* 80541ABC */ bool checkChangeEvt(); - /* 80541AC4 */ bool evtEndProc(); - /* 80541ACC */ void setAfterTalkMotion(); - /* 80541AD0 */ void afterMoved(); - /* 80541AD4 */ bool chkXYItems(); - /* 80541ADC */ void decTmr(); - /* 80541AF4 */ void drawOtherMdl(); - /* 80541AF8 */ void drawGhost(); - /* 80541AFC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80541B04 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80541B0C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80541B3C */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80541B6C */ void changeAnm(int*, int*); - /* 80541B70 */ void changeBck(int*, int*); - /* 80541B74 */ void changeBtp(int*, int*); - /* 80541B78 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80541750 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80541850 */ ~daNpcT_ActorMngr_c(); -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct csXyz { - /* 8054130C */ ~csXyz(); - /* 8054174C */ csXyz(); -}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80541950 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 805419AC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 805418E0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 8054059C */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80541C90 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80541CD8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80540F00 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80541A1C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -382,7 +98,6 @@ extern "C" u8 mCutList__19daNpc_FairySeirei_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); extern "C" void __ct__10fopAc_ac_cFv(); extern "C" void __dt__10fopAc_ac_cFv(); @@ -468,8 +183,6 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_24(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -478,7 +191,6 @@ extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" void __register_global_object(); // @@ -611,25 +323,30 @@ SECTION_DATA static void* lit_4475[3] = { }; /* 80541F30-80541F50 -00001 0020+00 1/0 0/0 0/0 .data daNpc_FairySeirei_MethodTable */ -SECTION_DATA static void* daNpc_FairySeirei_MethodTable[8] = { - (void*)daNpc_FairySeirei_Create__FPv, - (void*)daNpc_FairySeirei_Delete__FPv, - (void*)daNpc_FairySeirei_Execute__FPv, - (void*)daNpc_FairySeirei_IsDelete__FPv, - (void*)daNpc_FairySeirei_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_FairySeirei_MethodTable = { + (process_method_func)daNpc_FairySeirei_Create__FPv, + (process_method_func)daNpc_FairySeirei_Delete__FPv, + (process_method_func)daNpc_FairySeirei_Execute__FPv, + (process_method_func)daNpc_FairySeirei_IsDelete__FPv, + (process_method_func)daNpc_FairySeirei_Draw__FPv, }; /* 80541F50-80541F80 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_FAIRY_SEIREI */ -SECTION_DATA extern void* g_profile_NPC_FAIRY_SEIREI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02520000, (void*)&g_fpcLf_Method, - (void*)0x00000FB0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01530000, (void*)&daNpc_FairySeirei_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_FAIRY_SEIREI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_FAIRY_SEIREI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_FairySeirei_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 339, // mPriority + &daNpc_FairySeirei_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80541F80-80541F8C 000120 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -893,7 +610,8 @@ asm void daNpc_FairySeirei_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/getDistTable__12dAttention_cFi.s" } @@ -1135,7 +853,8 @@ static bool daNpc_FairySeirei_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__10cCcD_GSttsFv.s" } @@ -1145,7 +864,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__8daNpcT_cFv.s" } @@ -1155,7 +875,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__4cXyzFv.s" } @@ -1165,7 +886,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__5csXyzFv.s" } @@ -1177,18 +899,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/func_80541348.s" } #pragma pop /* 8054174C-80541750 0018CC 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1196,14 +920,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 8054184C-80541850 0019CC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1211,7 +937,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1221,7 +948,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1231,7 +959,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__12dBgS_AcchCirFv.s" } @@ -1241,7 +970,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__10dCcD_GSttsFv.s" } @@ -1251,7 +981,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__12dBgS_ObjAcchFv.s" } @@ -1261,14 +992,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80541A64-80541A68 001BE4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1309,13 +1042,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80541AA0-80541AA8 001C20 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80541AA8-80541AB0 001C28 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1336,7 +1071,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80541AC4-80541ACC 001C44 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1351,7 +1087,8 @@ void daNpcT_c::afterMoved() { } /* 80541AD4-80541ADC 001C54 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1359,30 +1096,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80541AF4-80541AF8 001C74 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80541AF8-80541AFC 001C78 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80541AFC-80541B04 001C7C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80541B04-80541B0C 001C84 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1391,7 +1133,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1402,29 +1145,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80541B6C-80541B70 001CEC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80541B70-80541B74 001CF0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80541B74-80541B78 001CF4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80541B78-80541B7C 001CF8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1478,7 +1226,8 @@ asm daNpc_FairySeirei_c::daNpc_FairySeirei_c( #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__8cM3dGCylFv.s" } @@ -1488,7 +1237,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_fairy_seirei/d_a_npc_fairy_seirei/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp b/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp index dd68820eb7..8799c2156b 100644 --- a/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp +++ b/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp @@ -121,11 +121,6 @@ static fish_data_s fish_d127[56] = { {0, {-3837.0f, -546.0f, -2871.0f}, 51}, {0, {-328.0f, -955.0f, 1600.0f}, 52}, {0, {-2689.0f, -901.0f, -126.0f}, 53}, {-1, {0.0f, 0.0f, 0.0f}, 0}}; -struct fish_pos { - u8 param; - f32 pos_x; - f32 pos_z; -}; /* 80542D38-80542DC8 000854 0090+00 0/1 0/0 0/0 .data lf_pos */ static fish_pos lf_pos[12] = { diff --git a/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.cpp b/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.cpp index 69764e736c..db204da48f 100644 --- a/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.cpp +++ b/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.cpp @@ -1,369 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_gnd -// +/** + * @file d_a_npc_gnd.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 809BDC98 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Gnd_c { - /* 809BB60C */ ~daNpc_Gnd_c(); - /* 809BB730 */ void create(); - /* 809BB9D4 */ void CreateHeap(); - /* 809BBE2C */ void Delete(); - /* 809BBE60 */ void Execute(); - /* 809BBE80 */ void Draw(); - /* 809BBF44 */ void createHeapCallBack(fopAc_ac_c*); - /* 809BBF64 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809BBFBC */ void getType(); - /* 809BBFDC */ void getFlowNodeNo(); - /* 809BBFF8 */ void isDelete(); - /* 809BC028 */ void reset(); - /* 809BC168 */ void afterJntAnm(int); - /* 809BC1F4 */ void ctrlBtk(); - /* 809BC328 */ void setParam(); - /* 809BC448 */ void setAfterTalkMotion(); - /* 809BC4A8 */ void srchActors(); - /* 809BC4AC */ void evtTalk(); - /* 809BC5AC */ void evtCutProc(); - /* 809BC674 */ void action(); - /* 809BC760 */ void beforeMove(); - /* 809BC7D8 */ void setAttnPos(); - /* 809BCA14 */ void setCollision(); - /* 809BCB48 */ bool drawDbgInfo(); - /* 809BCB50 */ void afterSetMotionAnm(int, int, f32, int); - /* 809BCCE8 */ void selectAction(); - /* 809BCD30 */ void chkAction(int (daNpc_Gnd_c::*)(void*)); - /* 809BCD5C */ void setAction(int (daNpc_Gnd_c::*)(void*)); - /* 809BCE04 */ void wait(void*); - /* 809BD050 */ void talk(void*); - /* 809BE2D0 */ daNpc_Gnd_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809BE40C */ s32 getEyeballRMaterialNo(); - /* 809BE414 */ s32 getEyeballLMaterialNo(); - /* 809BE41C */ s32 getHeadJointNo(); - /* 809BE424 */ s32 getNeckJointNo(); - /* 809BE42C */ bool getBackboneJointNo(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Gnd_Param_c { - /* 809BE434 */ ~daNpc_Gnd_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DAnmColor {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809BD6D0 */ ~cXyz(); - /* 809BDC4C */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148184 */ void getColorAnmP(char const*, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483B8 */ void setBpkAnm(J3DAnmColor*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 809BD348 */ ~daNpcT_c(); - /* 809BD748 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809BE188 */ void ctrlSubFaceMotion(int); - /* 809BE18C */ bool checkChangeJoint(int); - /* 809BE194 */ bool checkRemoveJoint(int); - /* 809BE19C */ s32 getFootLJointNo(); - /* 809BE1A4 */ s32 getFootRJointNo(); - /* 809BE1AC */ bool getEyeballMaterialNo(); - /* 809BE1B4 */ bool checkChangeEvt(); - /* 809BE1BC */ bool evtEndProc(); - /* 809BE1C4 */ void afterMoved(); - /* 809BE1C8 */ bool chkXYItems(); - /* 809BE1D0 */ void decTmr(); - /* 809BE1E8 */ void drawOtherMdl(); - /* 809BE1EC */ void drawGhost(); - /* 809BE1F0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809BE1F8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809BE228 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809BE258 */ void changeAnm(int*, int*); - /* 809BE25C */ void changeBck(int*, int*); - /* 809BE260 */ void changeBtp(int*, int*); - /* 809BE264 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809BDB50 */ ~daNpcT_JntAnm_c(); - /* 809BDE64 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809BDF80 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809BDC50 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809BDD50 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809BDDAC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809BDCE0 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 809BD70C */ ~csXyz(); - /* 809BDB4C */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809BE37C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809BE3C4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809BD300 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809BBD18 */ ~J3DTexNoAnm(); - /* 809BBD60 */ J3DTexNoAnm(); - /* 809BD2D0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809BBD84 */ ~J3DTexMtxAnm(); - /* 809BBDC0 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809BBC70 */ ~J3DTevKColorAnm(); - /* 809BBCAC */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809BBCC4 */ ~J3DTevColorAnm(); - /* 809BBD00 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809BBDD8 */ ~J3DMatColorAnm(); - /* 809BBE14 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809BDE1C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -473,7 +115,6 @@ extern "C" u8 mCutList__11daNpc_Gnd_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -568,9 +209,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -587,8 +225,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -599,10 +235,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -751,25 +384,30 @@ SECTION_DATA static void* lit_4881[3] = { }; /* 809BE684-809BE6A4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Gnd_MethodTable */ -SECTION_DATA static void* daNpc_Gnd_MethodTable[8] = { - (void*)daNpc_Gnd_Create__FPv, - (void*)daNpc_Gnd_Delete__FPv, - (void*)daNpc_Gnd_Execute__FPv, - (void*)daNpc_Gnd_IsDelete__FPv, - (void*)daNpc_Gnd_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Gnd_MethodTable = { + (process_method_func)daNpc_Gnd_Create__FPv, + (process_method_func)daNpc_Gnd_Delete__FPv, + (process_method_func)daNpc_Gnd_Execute__FPv, + (process_method_func)daNpc_Gnd_IsDelete__FPv, + (process_method_func)daNpc_Gnd_Draw__FPv, }; /* 809BE6A4-809BE6D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GND */ -SECTION_DATA extern void* g_profile_NPC_GND[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02330000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01310000, (void*)&daNpc_Gnd_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GND = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GND, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Gnd_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 305, // mPriority + &daNpc_Gnd_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809BE6D4-809BE6E0 000138 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1017,7 +655,8 @@ asm void daNpc_Gnd_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__15J3DTevKColorAnmFv.s" } @@ -1027,7 +666,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__ct__15J3DTevKColorAnmFv.s" } @@ -1037,7 +677,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__14J3DTevColorAnmFv.s" } @@ -1047,7 +688,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__ct__14J3DTevColorAnmFv.s" } @@ -1057,7 +699,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__11J3DTexNoAnmFv.s" } @@ -1067,7 +710,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__ct__11J3DTexNoAnmFv.s" } @@ -1077,7 +721,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__12J3DTexMtxAnmFv.s" } @@ -1087,7 +732,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__ct__12J3DTexMtxAnmFv.s" } @@ -1097,7 +743,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__14J3DMatColorAnmFv.s" } @@ -1107,7 +754,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__ct__14J3DMatColorAnmFv.s" } @@ -1469,7 +1117,8 @@ static bool daNpc_Gnd_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/calc__11J3DTexNoAnmCFPUs.s" } @@ -1479,7 +1128,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__10cCcD_GSttsFv.s" } @@ -1489,7 +1139,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__8daNpcT_cFv.s" } @@ -1499,7 +1150,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__4cXyzFv.s" } @@ -1509,7 +1161,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__5csXyzFv.s" } @@ -1521,18 +1174,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/func_809BD748.s" } #pragma pop /* 809BDB4C-809BDB50 00262C 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1540,14 +1195,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809BDC4C-809BDC50 00272C 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1555,7 +1212,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1565,7 +1223,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1575,7 +1234,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__12dBgS_AcchCirFv.s" } @@ -1585,7 +1245,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__10dCcD_GSttsFv.s" } @@ -1595,7 +1256,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__12dBgS_ObjAcchFv.s" } @@ -1605,7 +1267,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__12J3DFrameCtrlFv.s" } @@ -1615,8 +1278,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1654,14 +1318,16 @@ COMPILER_STRIP_GATE(0x809BE580, &lit_4787); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809BE188-809BE18C 002C68 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1697,7 +1363,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 809BE1BC-809BE1C4 002C9C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1707,7 +1374,8 @@ void daNpcT_c::afterMoved() { } /* 809BE1C8-809BE1D0 002CA8 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1715,24 +1383,28 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809BE1E8-809BE1EC 002CC8 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 809BE1EC-809BE1F0 002CCC 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809BE1F0-809BE1F8 002CD0 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1741,7 +1413,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1752,29 +1425,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809BE258-809BE25C 002D38 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809BE25C-809BE260 002D3C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809BE260-809BE264 002D40 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809BE264-809BE268 002D44 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1827,7 +1505,8 @@ asm daNpc_Gnd_c::daNpc_Gnd_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__8cM3dGCylFv.s" } @@ -1837,7 +1516,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gnd/d_a_npc_gnd/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.cpp b/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.cpp index c260d5f9bc..85f1a36d88 100644 --- a/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.cpp +++ b/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.cpp @@ -1,453 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_gra -// +/** + * @file d_a_npc_gra.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_gra/d_a_npc_gra.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 809C9478 */ csXyz(); - /* 802673F4 */ csXyz(s16, s16, s16); - /* 809C943C */ ~csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809C947C */ ~cXyz(); - /* 809C94B8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct daTagGra_c { - /* 809C9CF8 */ void getGraAngle(); - /* 809C9D0C */ void getGraPos(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_grA_c { - struct daNpc_GrA_prtclMngr_c { - /* 809BEB24 */ ~daNpc_GrA_prtclMngr_c(); - /* 809BEB60 */ daNpc_GrA_prtclMngr_c(); - }; - - /* 809BE94C */ daNpc_grA_c(); - /* 809BEB64 */ ~daNpc_grA_c(); - /* 809BEDA4 */ void create(); - /* 809BF0A8 */ void CreateHeap(); - /* 809BF418 */ void Delete(); - /* 809BF44C */ void Execute(); - /* 809BF490 */ void Draw(); - /* 809BF504 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809BF738 */ void createHeapCallBack(fopAc_ac_c*); - /* 809BF758 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809BF7A4 */ void setTagJump(); - /* 809BF8A0 */ void setTagJump2(); - /* 809BF99C */ void setHomeJump(); - /* 809BFAF4 */ void checkTagGraSub(fopAc_ac_c*); - /* 809BFBC0 */ void checkTagGraSub2(fopAc_ac_c*); - /* 809BFDCC */ void checkTagGraSubCrashed(fopAc_ac_c*); - /* 809BFDFC */ void setParam(); - /* 809C0038 */ void main(); - /* 809C0298 */ bool ctrlBtk(); - /* 809C02A0 */ void setAttnPos(); - /* 809C0948 */ void setExpressionAnm(int, bool); - /* 809C0CE4 */ void setExpressionBtp(int); - /* 809C0E18 */ void setExpression(int, f32); - /* 809C0E44 */ void setMotionAnm(int, f32); - /* 809C1018 */ void setMotion(int, f32, int); - /* 809C105C */ bool drawDbgInfo(); - /* 809C1064 */ void drawOtherMdls(); - /* 809C1154 */ void getMode(); - /* 809C1160 */ void getMode1(); - /* 809C116C */ void getTypeFromParam(); - /* 809C1238 */ void getSwBit(); - /* 809C1244 */ void isDelete(); - /* 809C13D8 */ void reset(); - /* 809C1990 */ void playExpression(); - /* 809C2080 */ void playMotion(); - /* 809C28BC */ void chkAction(int (daNpc_grA_c::*)(void*)); - /* 809C28E8 */ void setAction(int (daNpc_grA_c::*)(void*)); - /* 809C2990 */ void selectAction(); - /* 809C2C3C */ void doEvent(); - /* 809C3070 */ void setLookMode(int); - /* 809C3094 */ void lookat(); - /* 809C3424 */ void chkFindPlayer(); - /* 809C35D0 */ void setExpressionTalkAfter(); - /* 809C36AC */ void setPrtcl(); - /* 809C389C */ void setRollPrtcl(cXyz const&, f32); - /* 809C3A54 */ void setOtherObjMtx(); - /* 809C3B28 */ void ECut_talkSpa(int); - /* 809C3D78 */ void ECut_grDSRoll(int); - /* 809C45B0 */ void ECut_grDSGate(int); - /* 809C47EC */ void ECut_teachElevator(int); - /* 809C4BE4 */ void ECut_kickOut(int); - /* 809C4EB4 */ void ECut_noneLook(int); - /* 809C5088 */ void ECut_rescueRock(int); - /* 809C5430 */ void ECut_carrySpaWater(int); - /* 809C5D44 */ void ECut_carrySpaWaterFailure(int); - /* 809C5F90 */ void ECut_rollRockCrash(int); - /* 809C6608 */ void ECut_talkSpaWater(int); - /* 809C681C */ void wait(void*); - /* 809C69B8 */ void waitTW(void*); - /* 809C6AAC */ void waitCheer(void*); - /* 809C6D48 */ void waitGate(void*); - /* 809C73FC */ void waitKickOut(void*); - /* 809C770C */ void moveRock(void*); - /* 809C77E0 */ void spaWarm(void*); - /* 809C7ACC */ void waitSpaWater(void*); - /* 809C7F24 */ void waitSpaBuyer(void*); - /* 809C8138 */ void waitSpaBuyerTW(void*); - /* 809C82A8 */ void beforeCrashWait(void*); - /* 809C8514 */ void crashRoll(void*); - /* 809C8694 */ void crashRollWait(void*); - /* 809C884C */ void crashedWait(void*); - /* 809C8A2C */ void waitBuyer(void*); - /* 809C8BD4 */ void talk(void*); - /* 809C9044 */ void test(void*); - /* 809C9D28 */ void adjustShapeAngle(); - - static void* mEvtCutNameList[12]; - static u8 mEvtCutList[144]; -}; - -struct daNpc_grA_Param_c { - /* 809C9D2C */ ~daNpc_grA_Param_c(); - - static u8 const m[132]; -}; - -struct daNpcT_ActorMngr_c { - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); -}; - -struct J3DAnmTexPattern {}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 809C94BC */ ~daNpcF_c(); - /* 809C9708 */ daNpcF_c(); - /* 809C9A7C */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 809C9210 */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150BBC */ void reverse(); - /* 80150BE0 */ void setNextIdx(); - /* 80150DE0 */ void getDstPos(cXyz, cXyz&); - /* 809C91B0 */ ~daNpcF_Path_c(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809C936C */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809C92E8 */ ~daNpcF_ActorMngr_c(); - /* 809C9330 */ daNpcF_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); - /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, - csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8, - cXyz const*); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809C98F8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); - /* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - csXyz const*, cXyz const*, s8, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dMeter2Info_c { - /* 8021C0E0 */ void setFloatingMessage(u16, s16, bool); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809C9968 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809C99C4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809C9258 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809C92A0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809C9A80 */ ~cCcD_GStts(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809C9A34 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -736,11 +294,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXIdentity(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -759,11 +312,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -772,13 +321,9 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1723,25 +1268,30 @@ SECTION_DATA static void* lit_7377[81] = { }; /* 809CB1B0-809CB1D0 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grA_MethodTable */ -SECTION_DATA static void* daNpc_grA_MethodTable[8] = { - (void*)daNpc_grA_Create__FPv, - (void*)daNpc_grA_Delete__FPv, - (void*)daNpc_grA_Execute__FPv, - (void*)daNpc_grA_IsDelete__FPv, - (void*)daNpc_grA_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grA_MethodTable = { + (process_method_func)daNpc_grA_Create__FPv, + (process_method_func)daNpc_grA_Delete__FPv, + (process_method_func)daNpc_grA_Execute__FPv, + (process_method_func)daNpc_grA_IsDelete__FPv, + (process_method_func)daNpc_grA_Draw__FPv, }; /* 809CB1D0-809CB200 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRA */ -SECTION_DATA extern void* g_profile_NPC_GRA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02340000, (void*)&g_fpcLf_Method, - (void*)0x00001698, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01320000, (void*)&daNpc_grA_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grA_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 306, // mPriority + &daNpc_grA_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809CB200-809CB248 000BEC 0048+00 2/2 0/0 0/0 .data __vt__11daNpc_grA_c */ @@ -4554,7 +4104,8 @@ static bool daNpc_grA_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__13daNpcF_Path_cFv.s" } @@ -4564,7 +4115,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__16daNpcF_SPCurve_cFv.s" } @@ -4574,7 +4126,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__8cM3dGCylFv.s" } @@ -4584,7 +4137,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__8cM3dGAabFv.s" } @@ -4594,7 +4148,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -4604,7 +4159,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -4614,7 +4170,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__15daNpcF_Lookat_cFv.s" } @@ -4624,14 +4181,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__5csXyzFv.s" } #pragma pop /* 809C9478-809C947C 00AC18 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -4639,14 +4198,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__4cXyzFv.s" } #pragma pop /* 809C94B8-809C94BC 00AC58 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -4654,7 +4215,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__8daNpcF_cFv.s" } @@ -4664,7 +4226,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__ct__8daNpcF_cFv.s" } @@ -4674,7 +4237,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__12dBgS_AcchCirFv.s" } @@ -4684,7 +4248,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__10dCcD_GSttsFv.s" } @@ -4694,7 +4259,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__12dBgS_ObjAcchFv.s" } @@ -4704,14 +4270,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809C9A7C-809C9A80 00B21C 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -4719,7 +4287,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/__dt__10cCcD_GSttsFv.s" } @@ -4789,7 +4358,8 @@ REGISTER_CTORS(0x809C9B7C, __sinit_d_a_npc_gra_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTagGra_c::getGraAngle() { +// asm void daTagGra_c::getGraAngle() { +extern "C" asm void getGraAngle__10daTagGra_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/getGraAngle__10daTagGra_cFv.s" } @@ -4799,7 +4369,8 @@ asm void daTagGra_c::getGraAngle() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTagGra_c::getGraPos() { +// asm void daTagGra_c::getGraPos() { +extern "C" asm void getGraPos__10daTagGra_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gra/d_a_npc_gra/getGraPos__10daTagGra_cFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.cpp b/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.cpp index 22074ffc82..aefeea4fe7 100644 --- a/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.cpp +++ b/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.cpp @@ -1,323 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grc -// +/** + * @file d_a_npc_grc.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grc/d_a_npc_grc.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_grC_c { - /* 809CB4CC */ daNpc_grC_c(); - /* 809CB6E0 */ ~daNpc_grC_c(); - /* 809CB8E0 */ void create(); - /* 809CBBD4 */ void CreateHeap(); - /* 809CBDC4 */ void Delete(); - /* 809CBDF8 */ void Execute(); - /* 809CBE18 */ void Draw(); - /* 809CBE8C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809CC0C0 */ void createHeapCallBack(fopAc_ac_c*); - /* 809CC0E0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809CC12C */ void setParam(); - /* 809CC26C */ void main(); - /* 809CC3EC */ bool ctrlBtk(); - /* 809CC3F4 */ void setAttnPos(); - /* 809CC930 */ void setExpressionAnm(int, bool); - /* 809CCB78 */ void setExpressionBtp(int); - /* 809CCCA4 */ void setExpression(int, f32); - /* 809CCCD0 */ void setMotionAnm(int, f32); - /* 809CCE70 */ void setMotion(int, f32, int); - /* 809CCEB4 */ bool drawDbgInfo(); - /* 809CCEBC */ void drawOtherMdls(); - /* 809CCEC0 */ void getTypeFromParam(); - /* 809CCF38 */ void isDelete(); - /* 809CCFBC */ void reset(); - /* 809CD1B4 */ void playExpression(); - /* 809CD4AC */ void playMotion(); - /* 809CD794 */ void chkAction(int (daNpc_grC_c::*)(void*)); - /* 809CD7C0 */ void setAction(int (daNpc_grC_c::*)(void*)); - /* 809CD868 */ void selectAction(); - /* 809CD960 */ void doNormalAction(int); - /* 809CDA74 */ void doEvent(); - /* 809CDD50 */ void setLookMode(int); - /* 809CDD74 */ void lookat(); - /* 809CDFFC */ void chkFindPlayer(); - /* 809CE12C */ void setExpressionTalkAfter(); - /* 809CE1F8 */ void wait(void*); - /* 809CE3A8 */ void waitTW(void*); - /* 809CE490 */ void waitSpa(void*); - /* 809CE688 */ void waitBuyer(void*); - /* 809CE7C4 */ void talk(void*); - /* 809CEA6C */ void test(void*); - /* 809CEB50 */ void setPrtcl(); - /* 809CF4AC */ void adjustShapeAngle(); - - static void* mEvtCutNameList; - static u8 mEvtCutList[12]; -}; - -struct daNpc_grC_Param_c { - /* 809CF4B0 */ ~daNpc_grC_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern {}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 809CEE38 */ ~daNpcF_c(); - /* 809CF084 */ daNpcF_c(); - /* 809CF3F8 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct csXyz { - /* 809CEDB8 */ ~csXyz(); - /* 809CEDF4 */ csXyz(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809CEDF8 */ ~cXyz(); - /* 809CEE34 */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809CECE8 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809CEC64 */ ~daNpcF_ActorMngr_c(); - /* 809CECAC */ daNpcF_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dKy_tevstr_c {}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809CF274 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); - /* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - csXyz const*, cXyz const*, s8, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809CF2E4 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809CF340 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809CB650 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809CB698 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809CF3FC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809CF3B0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -508,9 +196,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -526,11 +211,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -539,11 +220,8 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -783,25 +461,30 @@ SECTION_DATA static void* lit_5207[3] = { #pragma pop /* 809CFA34-809CFA54 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grC_MethodTable */ -SECTION_DATA static void* daNpc_grC_MethodTable[8] = { - (void*)daNpc_grC_Create__FPv, - (void*)daNpc_grC_Delete__FPv, - (void*)daNpc_grC_Execute__FPv, - (void*)daNpc_grC_IsDelete__FPv, - (void*)daNpc_grC_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grC_MethodTable = { + (process_method_func)daNpc_grC_Create__FPv, + (process_method_func)daNpc_grC_Delete__FPv, + (process_method_func)daNpc_grC_Execute__FPv, + (process_method_func)daNpc_grC_IsDelete__FPv, + (process_method_func)daNpc_grC_Draw__FPv, }; /* 809CFA54-809CFA84 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRC */ -SECTION_DATA extern void* g_profile_NPC_GRC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02350000, (void*)&g_fpcLf_Method, - (void*)0x00000E54, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01330000, (void*)&daNpc_grC_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grC_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 307, // mPriority + &daNpc_grC_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809CFA84-809CFACC 000268 0048+00 2/2 0/0 0/0 .data __vt__11daNpc_grC_c */ @@ -909,7 +592,8 @@ asm daNpc_grC_c::daNpc_grC_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__8cM3dGCylFv.s" } @@ -919,7 +603,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__8cM3dGAabFv.s" } @@ -2107,7 +1792,8 @@ static bool daNpc_grC_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2117,7 +1803,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2127,7 +1814,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__15daNpcF_Lookat_cFv.s" } @@ -2137,14 +1825,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__5csXyzFv.s" } #pragma pop /* 809CEDF4-809CEDF8 003A14 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2152,14 +1842,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__4cXyzFv.s" } #pragma pop /* 809CEE34-809CEE38 003A54 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2167,7 +1859,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__8daNpcF_cFv.s" } @@ -2177,7 +1870,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__ct__8daNpcF_cFv.s" } @@ -2187,7 +1881,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__12dBgS_AcchCirFv.s" } @@ -2197,7 +1892,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__10dCcD_GSttsFv.s" } @@ -2207,7 +1903,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__12dBgS_ObjAcchFv.s" } @@ -2217,14 +1914,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809CF3F8-809CF3FC 004018 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2232,7 +1931,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grc/d_a_npc_grc/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.cpp b/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.cpp index c3b1558414..62437d1b99 100644 --- a/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.cpp +++ b/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.cpp @@ -1,349 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grd -// +/** + * @file d_a_npc_grd.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grd/d_a_npc_grd.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809D32A4 */ ~cXyz(); - /* 809D32E0 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_Grd_c { - /* 809CFD2C */ daNpc_Grd_c(); - /* 809CFF40 */ ~daNpc_Grd_c(); - /* 809D0140 */ void create(); - /* 809D0414 */ void CreateHeap(); - /* 809D0858 */ void Delete(); - /* 809D088C */ void Execute(); - /* 809D08AC */ void Draw(); - /* 809D093C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809D0B70 */ void createHeapCallBack(fopAc_ac_c*); - /* 809D0B90 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809D0BDC */ void setParam(); - /* 809D0D1C */ void main(); - /* 809D0E9C */ void ctrlBtk(); - /* 809D0F7C */ void setAttnPos(); - /* 809D14BC */ void setExpressionAnm(int, bool); - /* 809D1670 */ void setExpressionBtp(int); - /* 809D1794 */ void setExpression(int, f32); - /* 809D17C0 */ void setMotionAnm(int, f32); - /* 809D1940 */ void setMotion(int, f32, int); - /* 809D1984 */ bool drawDbgInfo(); - /* 809D198C */ void drawOtherMdls(); - /* 809D1990 */ void getTypeFromParam(); - /* 809D19B0 */ void isDelete(); - /* 809D1A1C */ void reset(); - /* 809D1B9C */ void playExpression(); - /* 809D1D00 */ void playMotion(); - /* 809D1F50 */ void chkAction(int (daNpc_Grd_c::*)(void*)); - /* 809D1F7C */ void setAction(int (daNpc_Grd_c::*)(void*)); - /* 809D2024 */ void selectAction(); - /* 809D20A4 */ void doNormalAction(int); - /* 809D21B8 */ void doEvent(); - /* 809D2470 */ void setLookMode(int); - /* 809D2494 */ void lookat(); - /* 809D2730 */ void setExpressionTalkAfter(); - /* 809D2768 */ void wait(void*); - /* 809D2970 */ void talk(void*); - /* 809D2B20 */ void test(void*); - /* 809D2C9C */ void ECut_nodToGrz(int); - /* 809D3994 */ void adjustShapeAngle(); - - static void* mEvtCutNameList[2]; - static u8 mEvtCutList[24]; -}; - -struct daNpc_Grd_Param_c { - /* 809D3998 */ ~daNpc_Grd_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809D32E4 */ ~daNpcF_c(); - /* 809D3530 */ daNpcF_c(); - /* 809D38A4 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809D3264 */ ~csXyz(); - /* 809D32A0 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809D3194 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809D3110 */ ~daNpcF_ActorMngr_c(); - /* 809D3158 */ daNpcF_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809D3790 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809D37EC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809D3720 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809CFEB0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809CFEF8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809D38A8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809D0744 */ ~J3DTexNoAnm(); - /* 809D078C */ J3DTexNoAnm(); - /* 809D30E0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809D07B0 */ ~J3DTexMtxAnm(); - /* 809D07EC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809D069C */ ~J3DTevKColorAnm(); - /* 809D06D8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809D06F0 */ ~J3DTevColorAnm(); - /* 809D072C */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809D0804 */ ~J3DMatColorAnm(); - /* 809D0840 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809D385C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -544,9 +206,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -563,8 +222,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -575,11 +232,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -757,25 +411,30 @@ SECTION_DATA static void* lit_5158[3] = { #pragma pop /* 809D3D74-809D3D94 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Grd_MethodTable */ -SECTION_DATA static void* daNpc_Grd_MethodTable[8] = { - (void*)daNpc_Grd_Create__FPv, - (void*)daNpc_Grd_Delete__FPv, - (void*)daNpc_Grd_Execute__FPv, - (void*)daNpc_Grd_IsDelete__FPv, - (void*)daNpc_Grd_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Grd_MethodTable = { + (process_method_func)daNpc_Grd_Create__FPv, + (process_method_func)daNpc_Grd_Delete__FPv, + (process_method_func)daNpc_Grd_Execute__FPv, + (process_method_func)daNpc_Grd_IsDelete__FPv, + (process_method_func)daNpc_Grd_Draw__FPv, }; /* 809D3D94-809D3DC4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRD */ -SECTION_DATA extern void* g_profile_NPC_GRD[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02360000, (void*)&g_fpcLf_Method, - (void*)0x00000E1C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01340000, (void*)&daNpc_Grd_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRD = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRD, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Grd_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 308, // mPriority + &daNpc_Grd_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809D3DC4-809D3DD0 0001B0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -890,7 +549,8 @@ asm daNpc_Grd_c::daNpc_Grd_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__8cM3dGCylFv.s" } @@ -900,7 +560,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__8cM3dGAabFv.s" } @@ -995,7 +656,8 @@ asm void daNpc_Grd_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__15J3DTevKColorAnmFv.s" } @@ -1005,7 +667,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__15J3DTevKColorAnmFv.s" } @@ -1015,7 +678,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__14J3DTevColorAnmFv.s" } @@ -1025,7 +689,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__14J3DTevColorAnmFv.s" } @@ -1035,7 +700,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__11J3DTexNoAnmFv.s" } @@ -1045,7 +711,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__11J3DTexNoAnmFv.s" } @@ -1055,7 +722,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__12J3DTexMtxAnmFv.s" } @@ -1065,7 +733,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__12J3DTexMtxAnmFv.s" } @@ -1075,7 +744,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__14J3DMatColorAnmFv.s" } @@ -1085,7 +755,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__14J3DMatColorAnmFv.s" } @@ -1981,7 +1652,8 @@ static bool daNpc_Grd_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/calc__11J3DTexNoAnmCFPUs.s" } @@ -1991,7 +1663,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2001,7 +1674,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2011,7 +1685,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__15daNpcF_Lookat_cFv.s" } @@ -2021,14 +1696,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__5csXyzFv.s" } #pragma pop /* 809D32A0-809D32A4 003660 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2036,14 +1713,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__4cXyzFv.s" } #pragma pop /* 809D32E0-809D32E4 0036A0 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2051,7 +1730,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__8daNpcF_cFv.s" } @@ -2061,7 +1741,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__ct__8daNpcF_cFv.s" } @@ -2071,7 +1752,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__12dBgS_AcchCirFv.s" } @@ -2081,7 +1763,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__10dCcD_GSttsFv.s" } @@ -2091,7 +1774,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__12dBgS_ObjAcchFv.s" } @@ -2101,14 +1785,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809D38A4-809D38A8 003C64 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2116,7 +1802,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grd/d_a_npc_grd/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.cpp b/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.cpp index e3b8cd121f..781e5efac7 100644 --- a/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.cpp +++ b/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.cpp @@ -1,358 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grm -// +/** + * @file d_a_npc_grm.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grm/d_a_npc_grm.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 809D66EC */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_grM_c { - /* 809D406C */ ~daNpc_grM_c(); - /* 809D4194 */ void create(); - /* 809D441C */ void CreateHeap(); - /* 809D45C4 */ void Delete(); - /* 809D45F8 */ void Execute(); - /* 809D46D4 */ void Draw(); - /* 809D4768 */ void createHeapCallBack(fopAc_ac_c*); - /* 809D4788 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809D47E0 */ bool getType(); - /* 809D47E8 */ void getFlowNodeNo(); - /* 809D4804 */ void getMaxNumItem(); - /* 809D4810 */ void isDelete(); - /* 809D4820 */ void reset(); - /* 809D4944 */ void afterJntAnm(int); - /* 809D49D0 */ void setParam(); - /* 809D4B24 */ void setAfterTalkMotion(); - /* 809D4BB8 */ void srchActors(); - /* 809D4BBC */ void evtProc(); - /* 809D4E2C */ void evtTalk(); - /* 809D4FD0 */ void evtCutProc(); - /* 809D5098 */ void action(); - /* 809D51F4 */ void beforeMove(); - /* 809D526C */ void setAttnPos(); - /* 809D54C8 */ void setCollision(); - /* 809D55F8 */ bool drawDbgInfo(); - /* 809D5600 */ void drawOtherMdl(); - /* 809D5660 */ void selectAction(); - /* 809D56A8 */ void chkAction(int (daNpc_grM_c::*)(void*)); - /* 809D56D4 */ void setAction(int (daNpc_grM_c::*)(void*)); - /* 809D577C */ void cutTalkSpa(int); - /* 809D58F4 */ void tend(void*); - /* 809D5AAC */ void talk(void*); - /* 809D5C30 */ void shop(void*); - /* 809D5E20 */ daNpc_grM_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D5F98 */ bool getEyeballMaterialNo(); - /* 809D5FA0 */ s32 getHeadJointNo(); - /* 809D5FA8 */ s32 getNeckJointNo(); - /* 809D5FB0 */ bool getBackboneJointNo(); - /* 809D5FB8 */ void checkChangeJoint(int); - /* 809D5FC8 */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_grM_Param_c { - /* 809D5FD8 */ ~daNpc_grM_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809D5F5C */ ~cXyz(); - /* 809D66A0 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 801493B8 */ void ctrlMsgAnm(int*, int*, fopAc_ac_c*, int); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 809D619C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D68B8 */ bool evtEndProc(); - /* 809D68C0 */ bool checkChangeEvt(); - /* 809D6BEC */ void ctrlSubFaceMotion(int); - /* 809D6BF0 */ s32 getFootLJointNo(); - /* 809D6BF8 */ s32 getFootRJointNo(); - /* 809D6C00 */ bool getEyeballLMaterialNo(); - /* 809D6C08 */ bool getEyeballRMaterialNo(); - /* 809D6C10 */ void afterMoved(); - /* 809D6C14 */ bool chkXYItems(); - /* 809D6C1C */ void decTmr(); - /* 809D6C34 */ void drawGhost(); - /* 809D6C38 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809D6C40 */ bool afterSetMotionAnm(int, int, f32, int); - /* 809D6C48 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809D6C78 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809D6CA8 */ void changeAnm(int*, int*); - /* 809D6CAC */ void changeBck(int*, int*); - /* 809D6CB0 */ void changeBtp(int*, int*); - /* 809D6CB4 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809D65A4 */ ~daNpcT_JntAnm_c(); - /* 809D68C8 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809D69E4 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 809D66A4 */ ~daNpcT_ActorMngr_c(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 809D6030 */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D6148 */ bool getResName2(int); - /* 809D6150 */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 809D6158 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809D67A4 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809D6800 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809D6734 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 809D6160 */ ~csXyz(); - /* 809D65A0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809D5ECC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809D5F14 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809D5DD8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809D6870 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -459,7 +112,6 @@ extern "C" u8 mCutList__11daNpc_grM_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -567,9 +219,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -583,10 +232,7 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -596,9 +242,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -803,25 +446,30 @@ SECTION_DATA static void* lit_5076[3] = { }; /* 809D7130-809D7150 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grM_MethodTable */ -SECTION_DATA static void* daNpc_grM_MethodTable[8] = { - (void*)daNpc_grM_Create__FPv, - (void*)daNpc_grM_Delete__FPv, - (void*)daNpc_grM_Execute__FPv, - (void*)daNpc_grM_IsDelete__FPv, - (void*)daNpc_grM_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grM_MethodTable = { + (process_method_func)daNpc_grM_Create__FPv, + (process_method_func)daNpc_grM_Delete__FPv, + (process_method_func)daNpc_grM_Execute__FPv, + (process_method_func)daNpc_grM_IsDelete__FPv, + (process_method_func)daNpc_grM_Draw__FPv, }; /* 809D7150-809D7180 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRM */ -SECTION_DATA extern void* g_profile_NPC_GRM[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02370000, (void*)&g_fpcLf_Method, - (void*)0x000010E4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01350000, (void*)&daNpc_grM_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRM = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRM, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grM_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 309, // mPriority + &daNpc_grM_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809D7180-809D718C 0002EC 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1472,7 +1120,8 @@ static bool daNpc_grM_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__10cCcD_GSttsFv.s" } @@ -1498,7 +1147,8 @@ asm daNpc_grM_c::daNpc_grM_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__8cM3dGCylFv.s" } @@ -1508,7 +1158,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__8cM3dGAabFv.s" } @@ -1518,7 +1169,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__4cXyzFv.s" } @@ -1611,31 +1263,35 @@ static asm void func_809D6028() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/func_809D6030.s" } #pragma pop /* 809D6148-809D6150 0021C8 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 809D6150-809D6158 0021D0 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 809D6158-809D6160 0021D8 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } @@ -1643,7 +1299,8 @@ bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__5csXyzFv.s" } @@ -1655,18 +1312,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/func_809D619C.s" } #pragma pop /* 809D65A0-809D65A4 002620 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1674,14 +1333,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809D66A0-809D66A4 002720 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1689,7 +1350,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1699,7 +1361,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1709,7 +1372,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__12dBgS_AcchCirFv.s" } @@ -1719,7 +1383,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__10dCcD_GSttsFv.s" } @@ -1729,7 +1394,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__12dBgS_ObjAcchFv.s" } @@ -1739,14 +1405,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809D68B8-809D68C0 002938 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1759,8 +1427,9 @@ bool daNpcT_c::checkChangeEvt() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1798,14 +1467,16 @@ COMPILER_STRIP_GATE(0x809D6E58, &lit_4860); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809D6BEC-809D6BF0 002C6C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1821,13 +1492,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 809D6C00-809D6C08 002C80 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809D6C08-809D6C10 002C88 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1837,7 +1510,8 @@ void daNpcT_c::afterMoved() { } /* 809D6C14-809D6C1C 002C94 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1845,25 +1519,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809D6C34-809D6C38 002CB4 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809D6C38-809D6C40 002CB8 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 809D6C40-809D6C48 002CC0 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1872,7 +1550,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1883,29 +1562,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grm/d_a_npc_grm/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809D6CA8-809D6CAC 002D28 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809D6CAC-809D6CB0 002D2C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809D6CB0-809D6CB4 002D30 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809D6CB4-809D6CB8 002D34 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.cpp b/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.cpp index b1053cd552..770d0db15e 100644 --- a/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.cpp +++ b/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.cpp @@ -1,347 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grmc -// +/** + * @file d_a_npc_grmc.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 809D9728 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_grMC_c { - /* 809D740C */ ~daNpc_grMC_c(); - /* 809D7534 */ void create(); - /* 809D77BC */ void CreateHeap(); - /* 809D79BC */ void Delete(); - /* 809D79F0 */ void Execute(); - /* 809D7AD4 */ void Draw(); - /* 809D7B18 */ void createHeapCallBack(fopAc_ac_c*); - /* 809D7B38 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809D7B90 */ bool getType(); - /* 809D7B98 */ void getFlowNodeNo(); - /* 809D7BB4 */ void getMaxNumItem(); - /* 809D7BC0 */ void isDelete(); - /* 809D7C34 */ void reset(); - /* 809D7D48 */ void afterJntAnm(int); - /* 809D7DD4 */ void setParam(); - /* 809D7F28 */ void setAfterTalkMotion(); - /* 809D7FCC */ void srchActors(); - /* 809D7FD0 */ void evtTalk(); - /* 809D8174 */ void evtCutProc(); - /* 809D823C */ void action(); - /* 809D8398 */ void beforeMove(); - /* 809D8410 */ void setAttnPos(); - /* 809D8670 */ void setCollision(); - /* 809D87A0 */ bool drawDbgInfo(); - /* 809D87A8 */ void drawOtherMdl(); - /* 809D8808 */ void selectAction(); - /* 809D8850 */ void chkAction(int (daNpc_grMC_c::*)(void*)); - /* 809D887C */ void setAction(int (daNpc_grMC_c::*)(void*)); - /* 809D8924 */ void tend(void*); - /* 809D8AE8 */ void talk(void*); - /* 809D8C6C */ void shop(void*); - /* 809D8E5C */ daNpc_grMC_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D8FD4 */ s32 getHeadJointNo(); - /* 809D8FDC */ s32 getNeckJointNo(); - /* 809D8FE4 */ bool getBackboneJointNo(); - /* 809D8FEC */ void checkChangeJoint(int); - /* 809D8FFC */ void checkRemoveJoint(int); - /* 809D900C */ bool getEyeballMaterialNo(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_grMC_Param_c { - /* 809D9014 */ ~daNpc_grMC_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809D8F98 */ ~cXyz(); - /* 809D96DC */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 809D91D8 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D9C18 */ void ctrlSubFaceMotion(int); - /* 809D9C1C */ s32 getFootLJointNo(); - /* 809D9C24 */ s32 getFootRJointNo(); - /* 809D9C2C */ bool getEyeballLMaterialNo(); - /* 809D9C34 */ bool getEyeballRMaterialNo(); - /* 809D9C3C */ bool checkChangeEvt(); - /* 809D9C44 */ bool evtEndProc(); - /* 809D9C4C */ void afterMoved(); - /* 809D9C50 */ bool chkXYItems(); - /* 809D9C58 */ void decTmr(); - /* 809D9C70 */ void drawGhost(); - /* 809D9C74 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809D9C7C */ bool afterSetMotionAnm(int, int, f32, int); - /* 809D9C84 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809D9CB4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809D9CE4 */ void changeAnm(int*, int*); - /* 809D9CE8 */ void changeBck(int*, int*); - /* 809D9CEC */ void changeBtp(int*, int*); - /* 809D9CF0 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809D95E0 */ ~daNpcT_JntAnm_c(); - /* 809D98F4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809D9A10 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 809D96E0 */ ~daNpcT_ActorMngr_c(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 809D906C */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809D9184 */ bool getResName2(int); - /* 809D918C */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 809D9194 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809D97E0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809D983C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809D9770 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 809D919C */ ~csXyz(); - /* 809D95DC */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809D8F08 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809D8F50 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809D8E14 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809D98AC */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -445,7 +109,6 @@ extern "C" u8 mCutList__12daNpc_grMC_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -546,9 +209,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -563,8 +223,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -574,9 +232,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -792,25 +447,30 @@ SECTION_DATA static void* lit_4977[3] = { }; /* 809DA298-809DA2B8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grMC_MethodTable */ -SECTION_DATA static void* daNpc_grMC_MethodTable[8] = { - (void*)daNpc_grMC_Create__FPv, - (void*)daNpc_grMC_Delete__FPv, - (void*)daNpc_grMC_Execute__FPv, - (void*)daNpc_grMC_IsDelete__FPv, - (void*)daNpc_grMC_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grMC_MethodTable = { + (process_method_func)daNpc_grMC_Create__FPv, + (process_method_func)daNpc_grMC_Delete__FPv, + (process_method_func)daNpc_grMC_Execute__FPv, + (process_method_func)daNpc_grMC_IsDelete__FPv, + (process_method_func)daNpc_grMC_Draw__FPv, }; /* 809DA2B8-809DA2E8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRMC */ -SECTION_DATA extern void* g_profile_NPC_GRMC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02380000, (void*)&g_fpcLf_Method, - (void*)0x000010E4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01360000, (void*)&daNpc_grMC_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRMC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRMC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grMC_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 310, // mPriority + &daNpc_grMC_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809DA2E8-809DA2F4 00045C 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1444,7 +1104,8 @@ static bool daNpc_grMC_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__10cCcD_GSttsFv.s" } @@ -1471,7 +1132,8 @@ asm daNpc_grMC_c::daNpc_grMC_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__8cM3dGCylFv.s" } @@ -1481,7 +1143,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__8cM3dGAabFv.s" } @@ -1491,7 +1154,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__4cXyzFv.s" } @@ -1583,31 +1247,35 @@ static asm void func_809D9064() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/func_809D906C.s" } #pragma pop /* 809D9184-809D918C 001E64 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 809D918C-809D9194 001E6C 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 809D9194-809D919C 001E74 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } @@ -1615,7 +1283,8 @@ bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__5csXyzFv.s" } @@ -1627,18 +1296,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/func_809D91D8.s" } #pragma pop /* 809D95DC-809D95E0 0022BC 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1646,14 +1317,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809D96DC-809D96E0 0023BC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1661,7 +1334,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1671,7 +1345,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1681,7 +1356,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__12dBgS_AcchCirFv.s" } @@ -1691,7 +1367,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__10dCcD_GSttsFv.s" } @@ -1701,7 +1378,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__12dBgS_ObjAcchFv.s" } @@ -1711,7 +1389,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/__dt__12J3DFrameCtrlFv.s" } @@ -1721,8 +1400,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1760,14 +1440,16 @@ COMPILER_STRIP_GATE(0x809D9E60, &lit_4798); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809D9C18-809D9C1C 0028F8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1783,13 +1465,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 809D9C2C-809D9C34 00290C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809D9C34-809D9C3C 002914 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1799,7 +1483,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 809D9C44-809D9C4C 002924 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1809,7 +1494,8 @@ void daNpcT_c::afterMoved() { } /* 809D9C50-809D9C58 002930 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1817,25 +1503,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809D9C70-809D9C74 002950 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809D9C74-809D9C7C 002954 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 809D9C7C-809D9C84 00295C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1844,7 +1534,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1855,29 +1546,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grmc/d_a_npc_grmc/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809D9CE4-809D9CE8 0029C4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809D9CE8-809D9CEC 0029C8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809D9CEC-809D9CF0 0029CC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809D9CF0-809D9CF4 0029D0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.cpp b/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.cpp index 5b993f5d63..643e81f77c 100644 --- a/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.cpp +++ b/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.cpp @@ -1,371 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_gro -// +/** + * @file d_a_npc_gro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_gro/d_a_npc_gro.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809DE81C */ ~cXyz(); - /* 809DE858 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_grO_c { - /* 809DA56C */ daNpc_grO_c(); - /* 809DA780 */ ~daNpc_grO_c(); - /* 809DA980 */ void create(); - /* 809DAC58 */ void CreateHeap(); - /* 809DB130 */ void Delete(); - /* 809DB164 */ void Execute(); - /* 809DB184 */ void Draw(); - /* 809DB214 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809DB448 */ void createHeapCallBack(fopAc_ac_c*); - /* 809DB468 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809DB4B4 */ void setParam(); - /* 809DB5F4 */ void main(); - /* 809DB774 */ void ctrlBtk(); - /* 809DB854 */ void setAttnPos(); - /* 809DBD58 */ void setExpressionAnm(int, bool); - /* 809DBFF4 */ void setExpressionBtp(int); - /* 809DC118 */ void setExpression(int, f32); - /* 809DC144 */ void setMotionAnm(int, f32); - /* 809DC2E4 */ void setMotion(int, f32, int); - /* 809DC328 */ bool drawDbgInfo(); - /* 809DC330 */ void drawOtherMdls(); - /* 809DC3DC */ void getTypeFromParam(); - /* 809DC43C */ void isDelete(); - /* 809DC4F4 */ void reset(); - /* 809DC67C */ void playExpression(); - /* 809DCA68 */ void playMotion(); - /* 809DCDA4 */ void chkAction(int (daNpc_grO_c::*)(void*)); - /* 809DCDD0 */ void setAction(int (daNpc_grO_c::*)(void*)); - /* 809DCE78 */ void selectAction(); - /* 809DCF44 */ void doNormalAction(int); - /* 809DD070 */ void doEvent(); - /* 809DD3D8 */ void setLookMode(int); - /* 809DD3FC */ void lookat(); - /* 809DD684 */ void setExpressionTalkAfter(); - /* 809DD758 */ void wait(void*); - /* 809DD960 */ void bokinWait(void*); - /* 809DDB68 */ void waitMaro(void*); - /* 809DDCF8 */ void talk(void*); - /* 809DE0D0 */ void ECut_bokinFinish(int); - /* 809DE30C */ void cutPushOut(int); - /* 809DE4EC */ void test(void*); - /* 809DEF0C */ void adjustShapeAngle(); - - static void* mEvtCutNameList[3]; - static u8 mEvtCutList[36]; -}; - -struct daNpc_grO_Param_c { - /* 809DEF10 */ ~daNpc_grO_Param_c(); - - static u8 const m[108]; -}; - -struct daNpc_Maro_c { - /* 80562CA4 */ void choccai(void*); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809DE85C */ ~daNpcF_c(); - /* 809DEAA8 */ daNpcF_c(); - /* 809DEE1C */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809DE7DC */ ~csXyz(); - /* 809DE818 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809DE70C */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809DE688 */ ~daNpcF_ActorMngr_c(); - /* 809DE6D0 */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809DED08 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809DED64 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809DEC98 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809DA6F0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809DA738 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809DEE20 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809DB01C */ ~J3DTexNoAnm(); - /* 809DB064 */ J3DTexNoAnm(); - /* 809DE658 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809DB088 */ ~J3DTexMtxAnm(); - /* 809DB0C4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809DAF74 */ ~J3DTevKColorAnm(); - /* 809DAFB0 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809DAFC8 */ ~J3DTevColorAnm(); - /* 809DB004 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809DB0DC */ ~J3DMatColorAnm(); - /* 809DB118 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809DEDD4 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -582,9 +222,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -600,10 +237,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -614,12 +248,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void choccai__12daNpc_Maro_cFPv(); extern "C" void __register_global_object(); @@ -921,25 +551,30 @@ SECTION_DATA static void* lit_5368[3] = { #pragma pop /* 809DF5C4-809DF5E4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grO_MethodTable */ -SECTION_DATA static void* daNpc_grO_MethodTable[8] = { - (void*)daNpc_grO_Create__FPv, - (void*)daNpc_grO_Delete__FPv, - (void*)daNpc_grO_Execute__FPv, - (void*)daNpc_grO_IsDelete__FPv, - (void*)daNpc_grO_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grO_MethodTable = { + (process_method_func)daNpc_grO_Create__FPv, + (process_method_func)daNpc_grO_Delete__FPv, + (process_method_func)daNpc_grO_Execute__FPv, + (process_method_func)daNpc_grO_IsDelete__FPv, + (process_method_func)daNpc_grO_Draw__FPv, }; /* 809DF5E4-809DF614 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRO */ -SECTION_DATA extern void* g_profile_NPC_GRO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02390000, (void*)&g_fpcLf_Method, - (void*)0x00000E30, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01370000, (void*)&daNpc_grO_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grO_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 311, // mPriority + &daNpc_grO_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809DF614-809DF620 00031C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1054,7 +689,8 @@ asm daNpc_grO_c::daNpc_grO_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__8cM3dGCylFv.s" } @@ -1064,7 +700,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__8cM3dGAabFv.s" } @@ -1168,7 +805,8 @@ asm void daNpc_grO_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__15J3DTevKColorAnmFv.s" } @@ -1178,7 +816,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__15J3DTevKColorAnmFv.s" } @@ -1188,7 +827,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__14J3DTevColorAnmFv.s" } @@ -1198,7 +838,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__14J3DTevColorAnmFv.s" } @@ -1208,7 +849,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__11J3DTexNoAnmFv.s" } @@ -1218,7 +860,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__11J3DTexNoAnmFv.s" } @@ -1228,7 +871,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__12J3DTexMtxAnmFv.s" } @@ -1238,7 +882,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__12J3DTexMtxAnmFv.s" } @@ -1248,7 +893,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__14J3DMatColorAnmFv.s" } @@ -1258,7 +904,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__14J3DMatColorAnmFv.s" } @@ -2471,7 +2118,8 @@ static bool daNpc_grO_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/calc__11J3DTexNoAnmCFPUs.s" } @@ -2481,7 +2129,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2491,7 +2140,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2501,7 +2151,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__15daNpcF_Lookat_cFv.s" } @@ -2511,14 +2162,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__5csXyzFv.s" } #pragma pop /* 809DE818-809DE81C 004398 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2526,14 +2179,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__4cXyzFv.s" } #pragma pop /* 809DE858-809DE85C 0043D8 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2541,7 +2196,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__8daNpcF_cFv.s" } @@ -2551,7 +2207,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__ct__8daNpcF_cFv.s" } @@ -2561,7 +2218,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__12dBgS_AcchCirFv.s" } @@ -2571,7 +2229,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__10dCcD_GSttsFv.s" } @@ -2581,7 +2240,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__12dBgS_ObjAcchFv.s" } @@ -2591,14 +2251,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809DEE1C-809DEE20 00499C 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2606,7 +2268,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gro/d_a_npc_gro/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.cpp b/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.cpp index c69b4e4e35..4637dfb27c 100644 --- a/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.cpp +++ b/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.cpp @@ -1,346 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grr -// +/** + * @file d_a_npc_grr.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grr/d_a_npc_grr.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809E31B4 */ ~cXyz(); - /* 809E31F0 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_grR_c { - /* 809DF8CC */ daNpc_grR_c(); - /* 809DFAE0 */ ~daNpc_grR_c(); - /* 809DFCE0 */ void create(); - /* 809DFFB8 */ void CreateHeap(); - /* 809E03FC */ void Delete(); - /* 809E0430 */ void Execute(); - /* 809E0450 */ void Draw(); - /* 809E04E0 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809E0714 */ void createHeapCallBack(fopAc_ac_c*); - /* 809E0734 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809E0780 */ void setParam(); - /* 809E08FC */ void main(); - /* 809E0A7C */ void ctrlBtk(); - /* 809E0B5C */ void setAttnPos(); - /* 809E105C */ void setExpressionAnm(int, bool); - /* 809E1260 */ void setExpressionBtp(int); - /* 809E138C */ void setExpression(int, f32); - /* 809E13B8 */ void setMotionAnm(int, f32); - /* 809E1548 */ void setMotion(int, f32, int); - /* 809E158C */ bool drawDbgInfo(); - /* 809E1594 */ void drawOtherMdls(); - /* 809E1598 */ void getTypeFromParam(); - /* 809E15E4 */ void isDelete(); - /* 809E16CC */ void reset(); - /* 809E18A4 */ void playExpression(); - /* 809E1B28 */ void playMotion(); - /* 809E1F10 */ void chkAction(int (daNpc_grR_c::*)(void*)); - /* 809E1F3C */ void setAction(int (daNpc_grR_c::*)(void*)); - /* 809E1FE4 */ void selectAction(); - /* 809E2088 */ void doNormalAction(int); - /* 809E219C */ void doEvent(); - /* 809E2480 */ void setLookMode(int); - /* 809E24A4 */ void lookat(); - /* 809E272C */ void setExpressionTalkAfter(); - /* 809E27CC */ void wait(void*); - /* 809E29B8 */ void waitMaro(void*); - /* 809E2B48 */ void talk(void*); - /* 809E2E84 */ void test(void*); - /* 809E3868 */ void adjustShapeAngle(); - - static void* mEvtCutNameList; - static u8 mEvtCutList[12]; -}; - -struct daNpc_grR_Param_c { - /* 809E386C */ ~daNpc_grR_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809E31F4 */ ~daNpcF_c(); - /* 809E3440 */ daNpcF_c(); - /* 809E37B4 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809E3174 */ ~csXyz(); - /* 809E31B0 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809E30A4 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809E3020 */ ~daNpcF_ActorMngr_c(); - /* 809E3068 */ daNpcF_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809E36A0 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809E36FC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809E3630 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809DFA50 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809DFA98 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809E37B8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809E02E8 */ ~J3DTexNoAnm(); - /* 809E0330 */ J3DTexNoAnm(); - /* 809E2FF0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809E0354 */ ~J3DTexMtxAnm(); - /* 809E0390 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809E0240 */ ~J3DTevKColorAnm(); - /* 809E027C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809E0294 */ ~J3DTevColorAnm(); - /* 809E02D0 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809E03A8 */ ~J3DMatColorAnm(); - /* 809E03E4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809E376C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -539,9 +204,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -557,10 +219,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -571,11 +230,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -780,25 +436,30 @@ SECTION_DATA static void* lit_5206[3] = { #pragma pop /* 809E3DB8-809E3DD8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_grR_MethodTable */ -SECTION_DATA static void* daNpc_grR_MethodTable[8] = { - (void*)daNpc_grR_Create__FPv, - (void*)daNpc_grR_Delete__FPv, - (void*)daNpc_grR_Execute__FPv, - (void*)daNpc_grR_IsDelete__FPv, - (void*)daNpc_grR_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grR_MethodTable = { + (process_method_func)daNpc_grR_Create__FPv, + (process_method_func)daNpc_grR_Delete__FPv, + (process_method_func)daNpc_grR_Execute__FPv, + (process_method_func)daNpc_grR_IsDelete__FPv, + (process_method_func)daNpc_grR_Draw__FPv, }; /* 809E3DD8-809E3E08 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRR */ -SECTION_DATA extern void* g_profile_NPC_GRR[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023A0000, (void*)&g_fpcLf_Method, - (void*)0x00000E20, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01380000, (void*)&daNpc_grR_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRR = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRR, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grR_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 312, // mPriority + &daNpc_grR_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809E3E08-809E3E14 000218 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -913,7 +574,8 @@ asm daNpc_grR_c::daNpc_grR_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__8cM3dGCylFv.s" } @@ -923,7 +585,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__8cM3dGAabFv.s" } @@ -1027,7 +690,8 @@ asm void daNpc_grR_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__15J3DTevKColorAnmFv.s" } @@ -1037,7 +701,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__15J3DTevKColorAnmFv.s" } @@ -1047,7 +712,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__14J3DTevColorAnmFv.s" } @@ -1057,7 +723,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__14J3DTevColorAnmFv.s" } @@ -1067,7 +734,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__11J3DTexNoAnmFv.s" } @@ -1077,7 +745,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__11J3DTexNoAnmFv.s" } @@ -1087,7 +756,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__12J3DTexMtxAnmFv.s" } @@ -1097,7 +767,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__12J3DTexMtxAnmFv.s" } @@ -1107,7 +778,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__14J3DMatColorAnmFv.s" } @@ -1117,7 +789,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__14J3DMatColorAnmFv.s" } @@ -2214,7 +1887,8 @@ static bool daNpc_grR_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/calc__11J3DTexNoAnmCFPUs.s" } @@ -2224,7 +1898,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2234,7 +1909,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2244,7 +1920,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__15daNpcF_Lookat_cFv.s" } @@ -2254,14 +1931,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__5csXyzFv.s" } #pragma pop /* 809E31B0-809E31B4 0039D0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2269,14 +1948,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__4cXyzFv.s" } #pragma pop /* 809E31F0-809E31F4 003A10 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2284,7 +1965,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__8daNpcF_cFv.s" } @@ -2294,7 +1976,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__ct__8daNpcF_cFv.s" } @@ -2304,7 +1987,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__12dBgS_AcchCirFv.s" } @@ -2314,7 +1998,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__10dCcD_GSttsFv.s" } @@ -2324,7 +2009,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__12dBgS_ObjAcchFv.s" } @@ -2334,14 +2020,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809E37B4-809E37B8 003FD4 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2349,7 +2037,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grr/d_a_npc_grr/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.cpp b/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.cpp index d9a1532a18..3df779354d 100644 --- a/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.cpp +++ b/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.cpp @@ -1,384 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grs -// +/** + * @file d_a_npc_grs.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grs/d_a_npc_grs.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809E7688 */ ~cXyz(); - /* 809E76C4 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_grS_c { - /* 809E40CC */ daNpc_grS_c(); - /* 809E42E0 */ ~daNpc_grS_c(); - /* 809E44E0 */ void create(); - /* 809E47B4 */ void CreateHeap(); - /* 809E4C58 */ void Delete(); - /* 809E4C8C */ void Execute(); - /* 809E4CAC */ void Draw(); - /* 809E4D3C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809E4F70 */ void createHeapCallBack(fopAc_ac_c*); - /* 809E4F90 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809E4FDC */ void setParam(); - /* 809E510C */ void main(); - /* 809E528C */ void ctrlBtk(); - /* 809E536C */ void setAttnPos(); - /* 809E5874 */ void setExpressionAnm(int, bool); - /* 809E5A08 */ void setExpressionBtp(int); - /* 809E5B1C */ void setExpression(int, f32); - /* 809E5B48 */ void setMotionAnm(int, f32); - /* 809E5CB8 */ void setMotion(int, f32, int); - /* 809E5CFC */ bool drawDbgInfo(); - /* 809E5D04 */ void drawOtherMdls(); - /* 809E5DB4 */ void getTypeFromParam(); - /* 809E5DD4 */ void isDelete(); - /* 809E5E58 */ void reset(); - /* 809E6000 */ void playExpression(); - /* 809E6164 */ void playMotion(); - /* 809E62F0 */ void chkAction(int (daNpc_grS_c::*)(void*)); - /* 809E631C */ void setAction(int (daNpc_grS_c::*)(void*)); - /* 809E63C4 */ void selectAction(); - /* 809E6444 */ void doNormalAction(int); - /* 809E6570 */ void doEvent(); - /* 809E6854 */ void setLookMode(int); - /* 809E6878 */ void lookat(); - /* 809E6B00 */ void setExpressionTalkAfter(); - /* 809E6B74 */ void cutPushOut(int); - /* 809E6D54 */ void wait(void*); - /* 809E6F5C */ void talk(void*); - /* 809E721C */ void test(void*); - /* 809E7300 */ void setPrtcl(); - /* 809E7D5C */ void adjustShapeAngle(); - - static void* mEvtCutNameList[2]; - static u8 mEvtCutList[24]; -}; - -struct daNpc_grS_Param_c { - /* 809E7D60 */ ~daNpc_grS_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809E76C8 */ ~daNpcF_c(); - /* 809E7914 */ daNpcF_c(); - /* 809E7C88 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809E7648 */ ~csXyz(); - /* 809E7684 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809E7578 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809E74F4 */ ~daNpcF_ActorMngr_c(); - /* 809E753C */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809E7B74 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809E7BD0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809E7B04 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809E4250 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809E4298 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809E7C8C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - -struct J3DTexNoAnm { - /* 809E4B44 */ ~J3DTexNoAnm(); - /* 809E4B8C */ J3DTexNoAnm(); - /* 809E74C4 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809E4BB0 */ ~J3DTexMtxAnm(); - /* 809E4BEC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809E4A9C */ ~J3DTevKColorAnm(); - /* 809E4AD8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809E4AF0 */ ~J3DTevColorAnm(); - /* 809E4B2C */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809E4C04 */ ~J3DMatColorAnm(); - /* 809E4C40 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809E7C40 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -591,9 +218,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -611,10 +235,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -625,12 +246,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -794,25 +411,30 @@ SECTION_DATA static void* lit_5199[3] = { #pragma pop /* 809E80FC-809E811C -00001 0020+00 1/0 0/0 0/0 .data daNpc_grS_MethodTable */ -SECTION_DATA static void* daNpc_grS_MethodTable[8] = { - (void*)daNpc_grS_Create__FPv, - (void*)daNpc_grS_Delete__FPv, - (void*)daNpc_grS_Execute__FPv, - (void*)daNpc_grS_IsDelete__FPv, - (void*)daNpc_grS_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_grS_MethodTable = { + (process_method_func)daNpc_grS_Create__FPv, + (process_method_func)daNpc_grS_Delete__FPv, + (process_method_func)daNpc_grS_Execute__FPv, + (process_method_func)daNpc_grS_IsDelete__FPv, + (process_method_func)daNpc_grS_Draw__FPv, }; /* 809E811C-809E814C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRS */ -SECTION_DATA extern void* g_profile_NPC_GRS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023B0000, (void*)&g_fpcLf_Method, - (void*)0x00000E38, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01390000, (void*)&daNpc_grS_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_grS_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 313, // mPriority + &daNpc_grS_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809E814C-809E8158 000188 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -927,7 +549,8 @@ asm daNpc_grS_c::daNpc_grS_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__8cM3dGCylFv.s" } @@ -937,7 +560,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__8cM3dGAabFv.s" } @@ -1032,7 +656,8 @@ asm void daNpc_grS_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__15J3DTevKColorAnmFv.s" } @@ -1042,7 +667,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__15J3DTevKColorAnmFv.s" } @@ -1052,7 +678,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__14J3DTevColorAnmFv.s" } @@ -1062,7 +689,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__14J3DTevColorAnmFv.s" } @@ -1072,7 +700,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__11J3DTexNoAnmFv.s" } @@ -1082,7 +711,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__11J3DTexNoAnmFv.s" } @@ -1092,7 +722,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__12J3DTexMtxAnmFv.s" } @@ -1102,7 +733,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__12J3DTexMtxAnmFv.s" } @@ -1112,7 +744,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__14J3DMatColorAnmFv.s" } @@ -1122,7 +755,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__14J3DMatColorAnmFv.s" } @@ -1998,7 +1632,8 @@ static bool daNpc_grS_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/calc__11J3DTexNoAnmCFPUs.s" } @@ -2008,7 +1643,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2018,7 +1654,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2028,7 +1665,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__15daNpcF_Lookat_cFv.s" } @@ -2038,14 +1676,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__5csXyzFv.s" } #pragma pop /* 809E7684-809E7688 0036A4 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2053,14 +1693,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__4cXyzFv.s" } #pragma pop /* 809E76C4-809E76C8 0036E4 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2068,7 +1710,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__8daNpcF_cFv.s" } @@ -2078,7 +1721,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__ct__8daNpcF_cFv.s" } @@ -2088,7 +1732,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__12dBgS_AcchCirFv.s" } @@ -2098,7 +1743,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__10dCcD_GSttsFv.s" } @@ -2108,7 +1754,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__12dBgS_ObjAcchFv.s" } @@ -2118,14 +1765,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809E7C88-809E7C8C 003CA8 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2133,7 +1782,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grs/d_a_npc_grs/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.cpp b/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.cpp index 66f449b64e..ab0373929b 100644 --- a/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.cpp +++ b/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.cpp @@ -1,483 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_grz -// +/** + * @file d_a_npc_grz.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_grz/d_a_npc_grz.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 809EEA18 */ ~cXyz(); - /* 809EEA54 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btpAnm { - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_btkAnm { - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_Grz_c { - struct daNpc_GrZ_prtclMngr_c { - /* 809E8658 */ ~daNpc_GrZ_prtclMngr_c(); - /* 809E8694 */ daNpc_GrZ_prtclMngr_c(); - }; - - /* 809E840C */ daNpc_Grz_c(); - /* 809E88C0 */ ~daNpc_Grz_c(); - /* 809E8BA0 */ void create(); - /* 809E8E68 */ void CreateHeap(); - /* 809E92AC */ void Delete(); - /* 809E92E0 */ void Execute(); - /* 809E9324 */ void Draw(); - /* 809E9568 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809E979C */ void createHeapCallBack(fopAc_ac_c*); - /* 809E97BC */ void ctrlJointCallBack(J3DJoint*, int); - /* 809E9808 */ void setParam(); - /* 809E9954 */ void main(); - /* 809E9AD4 */ void ctrlBtk(); - /* 809E9BB4 */ void setAttnPos(); - /* 809EA1DC */ void setCollisionPunch(); - /* 809EA734 */ void setExpressionAnm(int, bool); - /* 809EAA08 */ void setExpressionBtp(int); - /* 809EAB34 */ void setExpression(int, f32); - /* 809EAB60 */ void setMotionAnm(int, f32); - /* 809EAD4C */ void setMotion(int, f32, int); - /* 809EAD90 */ bool drawDbgInfo(); - /* 809EAD98 */ void drawOtherMdls(); - /* 809EAD9C */ void getTypeFromParam(); - /* 809EADE8 */ void isDelete(); - /* 809EAE88 */ void reset(); - /* 809EB154 */ void resetCol(); - /* 809EB234 */ void playExpression(); - /* 809EB5C0 */ void playMotion(); - /* 809EBA3C */ void chkAction(int (daNpc_Grz_c::*)(void*)); - /* 809EBA68 */ void setAction(int (daNpc_Grz_c::*)(void*)); - /* 809EBB10 */ void selectAction(); - /* 809EBC04 */ void doNormalAction(int); - /* 809EBD18 */ void doEvent(); - /* 809EC0CC */ void setSkipZev(int, int); - /* 809EC164 */ void setLookMode(int); - /* 809EC188 */ void lookat(); - /* 809EC424 */ void setExpressionTalkAfter(); - /* 809EC4C4 */ void wait(void*); - /* 809EC854 */ void waitSmash(void*); - /* 809ECBF0 */ void lieDown(void*); - /* 809ECCA0 */ void waitWeak(void*); - /* 809ECD50 */ void talk(void*); - /* 809ECF88 */ void test(void*); - /* 809ED06C */ void setPrtcl(); - /* 809ED18C */ void doWaitCut(int); - /* 809ED228 */ void doRebirthCut(int); - /* 809ED3D4 */ void doTalkStandCut(int); - /* 809ED5EC */ void doGoOutCut(int); - /* 809EDBA4 */ void doStoneSmashCut(int); - /* 809EE5F0 */ void doStoneSmashSkipCut(int); - /* 809EF184 */ void adjustShapeAngle(); - - static void* mEvtCutNameList[7]; - static u8 mEvtCutList[84]; -}; - -struct daNpc_Grz_Param_c { - /* 809EF188 */ ~daNpc_Grz_Param_c(); - - static u8 const m[128]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTransformKey {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809EEA58 */ ~daNpcF_c(); - /* 809EECA4 */ daNpcF_c(); - /* 809EF018 */ void setCollisions(); - - static u8 mCcDCyl[68]; - static u8 mCcDSph[64]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 809EE8C0 */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150DE0 */ void getDstPos(cXyz, cXyz&); - /* 809EE860 */ ~daNpcF_Path_c(); -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 809EE9D8 */ ~csXyz(); - /* 809EEA14 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809EE908 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809EE7DC */ ~daNpcF_ActorMngr_c(); - /* 809EE824 */ daNpcF_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); - /* 8006FB10 */ void StartQuake(int, int, cXyz); - /* 8006FD94 */ void StopQuake(int); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); - /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, - csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8, - cXyz const*); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809EEE94 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); - /* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - csXyz const*, cXyz const*, s8, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 809E8698 */ ~dCcD_Sph(); - /* 809E8764 */ dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80083830 */ void Move(); - /* 809EEF04 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809EEF60 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 809E87E8 */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809E8830 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809E8878 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809EF01C */ ~cCcD_GStts(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809E9198 */ ~J3DTexNoAnm(); - /* 809E91E0 */ J3DTexNoAnm(); - /* 809EE7AC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809E9204 */ ~J3DTexMtxAnm(); - /* 809E9240 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809E90F0 */ ~J3DTevKColorAnm(); - /* 809E912C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809E9144 */ ~J3DTevColorAnm(); - /* 809E9180 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809E9258 */ ~J3DMatColorAnm(); - /* 809E9294 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809EEFD0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -738,10 +266,6 @@ extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -759,10 +283,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -776,13 +297,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1143,25 +660,30 @@ SECTION_DATA static void* lit_5503[3] = { #pragma pop /* 809EFAA8-809EFAC8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Grz_MethodTable */ -SECTION_DATA static void* daNpc_Grz_MethodTable[8] = { - (void*)daNpc_Grz_Create__FPv, - (void*)daNpc_Grz_Delete__FPv, - (void*)daNpc_Grz_Execute__FPv, - (void*)daNpc_Grz_IsDelete__FPv, - (void*)daNpc_Grz_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Grz_MethodTable = { + (process_method_func)daNpc_Grz_Create__FPv, + (process_method_func)daNpc_Grz_Delete__FPv, + (process_method_func)daNpc_Grz_Execute__FPv, + (process_method_func)daNpc_Grz_IsDelete__FPv, + (process_method_func)daNpc_Grz_Draw__FPv, }; /* 809EFAC8-809EFAF8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GRZ */ -SECTION_DATA extern void* g_profile_NPC_GRZ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023C0000, (void*)&g_fpcLf_Method, - (void*)0x00001B08, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013A0000, (void*)&daNpc_Grz_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GRZ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GRZ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Grz_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 314, // mPriority + &daNpc_Grz_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809EFAF8-809EFB04 000458 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1314,7 +836,8 @@ daNpc_Grz_c::daNpc_GrZ_prtclMngr_c::daNpc_GrZ_prtclMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::~dCcD_Sph() { +// asm dCcD_Sph::~dCcD_Sph() { +extern "C" asm void __dt__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__8dCcD_SphFv.s" } @@ -1324,7 +847,8 @@ asm dCcD_Sph::~dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::dCcD_Sph() { +// asm dCcD_Sph::dCcD_Sph() { +extern "C" asm void __ct__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__8dCcD_SphFv.s" } @@ -1334,7 +858,8 @@ asm dCcD_Sph::dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__8cM3dGSphFv.s" } @@ -1344,7 +869,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__8cM3dGCylFv.s" } @@ -1354,7 +880,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__8cM3dGAabFv.s" } @@ -1460,7 +987,8 @@ asm void daNpc_Grz_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__15J3DTevKColorAnmFv.s" } @@ -1470,7 +998,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__15J3DTevKColorAnmFv.s" } @@ -1480,7 +1009,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__14J3DTevColorAnmFv.s" } @@ -1490,7 +1020,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__14J3DTevColorAnmFv.s" } @@ -1500,7 +1031,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__11J3DTexNoAnmFv.s" } @@ -1510,7 +1042,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__11J3DTexNoAnmFv.s" } @@ -1520,7 +1053,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__12J3DTexMtxAnmFv.s" } @@ -1530,7 +1064,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__12J3DTexMtxAnmFv.s" } @@ -1540,7 +1075,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__14J3DMatColorAnmFv.s" } @@ -1550,7 +1086,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__14J3DMatColorAnmFv.s" } @@ -3203,7 +2740,8 @@ static bool daNpc_Grz_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/calc__11J3DTexNoAnmCFPUs.s" } @@ -3213,7 +2751,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -3223,7 +2762,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -3233,7 +2773,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__13daNpcF_Path_cFv.s" } @@ -3243,7 +2784,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__16daNpcF_SPCurve_cFv.s" } @@ -3253,7 +2795,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__15daNpcF_Lookat_cFv.s" } @@ -3263,14 +2806,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__5csXyzFv.s" } #pragma pop /* 809EEA14-809EEA18 0066F4 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3278,14 +2823,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__4cXyzFv.s" } #pragma pop /* 809EEA54-809EEA58 006734 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3293,7 +2840,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__8daNpcF_cFv.s" } @@ -3303,7 +2851,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__ct__8daNpcF_cFv.s" } @@ -3313,7 +2862,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__12dBgS_AcchCirFv.s" } @@ -3323,7 +2873,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__10dCcD_GSttsFv.s" } @@ -3333,7 +2884,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__12dBgS_ObjAcchFv.s" } @@ -3343,14 +2895,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809EF018-809EF01C 006CF8 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -3358,7 +2912,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_grz/d_a_npc_grz/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.cpp b/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.cpp index c049022573..c0846f153c 100644 --- a/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.cpp +++ b/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.cpp @@ -1,249 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_guard -// +/** + * @file d_a_npc_guard.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_guard/d_a_npc_guard.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfSO { - /* 800110B0 */ void play(u32, s8); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80145708 */ void getActorP(); - /* 809F26F8 */ ~daNpcT_ActorMngr_c(); -}; - -struct daNpcGuard_c { - struct Mode_e {}; - - /* 809EFE20 */ void setAction(daNpcGuard_c::Mode_e); - /* 809EFE64 */ void callInit(); - /* 809EFE8C */ void callExecute(); - /* 809EFEB8 */ void initPath(); - /* 809EFF1C */ void executePath(); - /* 809F0184 */ void initRun(); - /* 809F01E8 */ void executeRun(); - /* 809F03FC */ void initFightWait(); - /* 809F04B4 */ void executeFightWait(); - /* 809F06F4 */ void initFightStep(); - /* 809F0700 */ void executeFightStep(); - /* 809F0778 */ void initFightMenace(); - /* 809F07F8 */ void executeFightMenace(); - /* 809F08DC */ void initFear(); - /* 809F0960 */ void executeFear(); - /* 809F0A50 */ void initEscape(); - /* 809F0B20 */ void executeEscape(); - /* 809F0DD4 */ void setAngle(); - /* 809F0DE0 */ void setSpeed(f32, f32, f32*, int); - /* 809F0ED4 */ void pathMoveF(); - /* 809F12F0 */ void create(); - /* 809F14CC */ void create_init(); - /* 809F17D0 */ void setMtx(); - /* 809F1878 */ void lookat(); - /* 809F1F74 */ ~daNpcGuard_c(); - /* 809F2044 */ void execute(); - - static u8 ActionTable[168]; -}; - -struct J3DModel {}; - -struct J3DAnmTransformKey {}; - -struct daNpcCd2_c { - /* 80157D00 */ void NpcCreate(int); - /* 80157F28 */ void ObjCreate(int); - /* 801580A8 */ void isM_(); - /* 801580F0 */ void getAnmP(int, int); - /* 80158420 */ void setAttention(int); - /* 80158BB8 */ void loadResrc(int, int); - /* 80158CBC */ void removeResrc(int, int); - /* 80158D88 */ void setEnvTevCol(); - /* 80158DE4 */ void setRoomNo(); - /* 80158F00 */ void setAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80158F6C */ void drawShadow(f32); - /* 80158FF0 */ void drawObj(int, J3DModel*, f32); - /* 801590FC */ void drawNpc(); - /* 809F2740 */ ~daNpcCd2_c(); - - static u8 const m_cylDat[68]; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); - /* 809F1D6C */ ~csXyz(); -}; - -struct cXyz { - /* 809F0148 */ ~cXyz(); - - static f32 Zero[3]; -}; - -struct dNpcLib_lookat_c { - /* 80251314 */ dNpcLib_lookat_c(); - /* 8025140C */ void init(J3DModel*, int*, csXyz*, csXyz*); - /* 80251534 */ void action(cXyz, cXyz, fopAc_ac_c*, f32 (*)[4], int); - /* 809F2990 */ ~dNpcLib_lookat_c(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 809F1DA8 */ ~dCcD_Sph(); - /* 809F1E74 */ dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809F2B08 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809F2BD4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809F2B64 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 809F1EF8 */ ~cM3dGSph(); -}; - -struct cM3dGPla { - /* 809F0100 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809F2A78 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809F2AC0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809F246C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0E18 */ void playVoice(int); -}; - -struct Vec {}; - -struct PathTrace_c { - /* 80159A38 */ void setPath(int, int, int, cXyz*, bool); - /* 80159C14 */ void checkPoint(cXyz, f32); - /* 80159DC0 */ void checkPathEnd(cXyz, f32); - /* 80159E54 */ void getTargetPoint(Vec*); - /* 80159F98 */ void setNextPoint(cXyz&); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DFrameCtrl { - /* 8032842C */ void checkPass(f32); -}; - // // Forward References: // @@ -387,11 +149,6 @@ extern "C" void __dt__17Z2CreatureCitizenFv(); extern "C" void playVoice__17Z2CreatureCitizenFi(); extern "C" void __dl__FPv(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_scall(); @@ -403,11 +160,7 @@ extern "C" void _restgpr_24(); extern "C" void _restgpr_25(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void pow(); extern "C" u8 const m_cylDat__10daNpcCd2_c[68]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -416,12 +169,9 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 l_Cd2_HIO[16396]; -extern "C" extern u8 g_env_light[4880]; extern "C" f32 Zero__4cXyz[3]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -683,25 +433,30 @@ SECTION_RODATA static u8 const lit_3952[8] = { COMPILER_STRIP_GATE(0x809F2C60, &lit_3952); /* 809F2EC0-809F2EE0 -00001 0020+00 1/0 0/0 0/0 .data daNpcGuard_METHODS */ -SECTION_DATA static void* daNpcGuard_METHODS[8] = { - (void*)daNpcGuard_Create__FPv, - (void*)daNpcGuard_Delete__FPv, - (void*)daNpcGuard_Execute__FPv, - (void*)daNpcGuard_IsDelete__FPv, - (void*)daNpcGuard_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcGuard_METHODS = { + (process_method_func)daNpcGuard_Create__FPv, + (process_method_func)daNpcGuard_Delete__FPv, + (process_method_func)daNpcGuard_Execute__FPv, + (process_method_func)daNpcGuard_IsDelete__FPv, + (process_method_func)daNpcGuard_Draw__FPv, }; /* 809F2EE0-809F2F10 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GUARD */ -SECTION_DATA extern void* g_profile_NPC_GUARD[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02970000, (void*)&g_fpcLf_Method, - (void*)0x00000DA8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01960000, (void*)&daNpcGuard_METHODS, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GUARD = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GUARD, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcGuard_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 406, // mPriority + &daNpcGuard_METHODS, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809F2F10-809F2F1C 0001C0 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */ @@ -808,7 +563,8 @@ asm void daNpcGuard_c::executePath() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__8cM3dGPlaFv.s" } @@ -818,7 +574,8 @@ asm cM3dGPla::~cM3dGPla() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__4cXyzFv.s" } @@ -1263,7 +1020,8 @@ asm void daNpcGuard_c::lookat() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__5csXyzFv.s" } @@ -1273,7 +1031,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::~dCcD_Sph() { +// asm dCcD_Sph::~dCcD_Sph() { +extern "C" asm void __dt__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__8dCcD_SphFv.s" } @@ -1283,7 +1042,8 @@ asm dCcD_Sph::~dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::dCcD_Sph() { +// asm dCcD_Sph::dCcD_Sph() { +extern "C" asm void __ct__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__ct__8dCcD_SphFv.s" } @@ -1293,7 +1053,8 @@ asm dCcD_Sph::dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__8cM3dGSphFv.s" } @@ -1391,7 +1152,8 @@ static bool daNpcGuard_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__10cCcD_GSttsFv.s" } @@ -1473,7 +1235,8 @@ static asm void func_809F26F0() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1483,7 +1246,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcCd2_c::~daNpcCd2_c() { +// asm daNpcCd2_c::~daNpcCd2_c() { +extern "C" asm void __dt__10daNpcCd2_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__10daNpcCd2_cFv.s" } @@ -1493,7 +1257,8 @@ asm daNpcCd2_c::~daNpcCd2_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +// asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +extern "C" asm void __dt__16dNpcLib_lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__16dNpcLib_lookat_cFv.s" } @@ -1503,7 +1268,8 @@ asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__8cM3dGCylFv.s" } @@ -1513,7 +1279,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__8cM3dGAabFv.s" } @@ -1523,7 +1290,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__10dCcD_GSttsFv.s" } @@ -1533,7 +1301,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__12dBgS_AcchCirFv.s" } @@ -1543,7 +1312,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_guard/d_a_npc_guard/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.cpp b/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.cpp index 1274382a62..0b3d0ef00a 100644 --- a/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.cpp +++ b/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.cpp @@ -1,424 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_gwolf -// +/** + * @file d_a_npc_gwolf.cpp + * +*/ -// #include "rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h" +#include "rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h" #include "dolphin/types.h" #include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 809F7D04 */ ~csXyz(); - /* 809F7D40 */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 809F7D44 */ ~cXyz(); - /* 809F7D80 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btpAnm { - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_btkAnm { - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct _GXColorS10 {}; - -struct dBgS_ObjAcch { - /* 809F828C */ ~dBgS_ObjAcch(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_GWolf_c { - /* 809F30AC */ daNpc_GWolf_c(); - /* 809F32C0 */ ~daNpc_GWolf_c(); - /* 809F34C0 */ void create(); - /* 809F37C0 */ void CreateHeap(); - /* 809F3BD8 */ void Delete(); - /* 809F3C0C */ void Execute(); - /* 809F3C2C */ void Draw(); - /* 809F3CBC */ void draw(int, int, f32, _GXColorS10*, int); - /* 809F3FB8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 809F41EC */ void createHeapCallBack(fopAc_ac_c*); - /* 809F420C */ void ctrlJointCallBack(J3DJoint*, int); - /* 809F4258 */ void setParam(); - /* 809F4390 */ void main(); - /* 809F4558 */ void ctrlBtk(); - /* 809F4638 */ void adjustShapeAngle(); - /* 809F4698 */ void setAttnPos(); - /* 809F4BB0 */ bool setExpressionAnm(int, bool); - /* 809F4BB8 */ void setExpression(int, f32); - /* 809F4BBC */ void setMotionAnm(int, f32); - /* 809F4DE8 */ void setMotion(int, f32, int); - /* 809F4E2C */ bool drawDbgInfo(); - /* 809F4E34 */ void drawOtherMdls(); - /* 809F4E38 */ void getTypeFromParam(); - /* 809F4E84 */ void getModeFromParam(); - /* 809F4F00 */ void isDelete(); - /* 809F4FF4 */ void reset(); - /* 809F520C */ void playMotion(); - /* 809F55D0 */ void chkAction(int (daNpc_GWolf_c::*)(void*)); - /* 809F55FC */ void setAction(int (daNpc_GWolf_c::*)(void*)); - /* 809F56A4 */ void selectAction(); - /* 809F5770 */ void doNormalAction(int); - /* 809F5884 */ void doEvent(); - /* 809F5B60 */ void setLookMode(int); - /* 809F5B84 */ void lookat(); - /* 809F5E0C */ void ECut_attackWarp(int); - /* 809F6548 */ void ECut_attackWarpHorse(int); - /* 809F6BFC */ void ECut_howlingSessionA(int); - /* 809F70A8 */ void meetGWolfSkip(); - /* 809F70EC */ void ECut_meetGWolf(int); - /* 809F71E0 */ void wait(void*); - /* 809F75C0 */ void waitHowling(void*); - /* 809F775C */ void waitBrave(void*); - /* 809F77E4 */ void talk(void*); - /* 809F797C */ void test(void*); - /* 809F7A30 */ void getGroundSlope(dBgS_ObjAcch&, s16); - - static void* mEvtCutNameList[5]; - static u8 mEvtCutList[60]; -}; - -struct daNpc_GWolf_Param_c { - /* 809F8488 */ ~daNpc_GWolf_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTransformKey {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152BE0 */ void getTevRegKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D44 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 809F7D84 */ ~daNpcF_c(); - /* 809F7FD0 */ daNpcF_c(); - /* 809F8344 */ void setCollisions(); - /* 809F8348 */ bool setExpressionBtp(int); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 809F7C34 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 809F7BB0 */ ~daNpcF_ActorMngr_c(); - /* 809F7BF8 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 800352B0 */ void offSwitch(int, int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 800429A8 */ void onSkipFade(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809F8230 */ ~dCcD_GStts(); -}; - -struct dCamera_c { - /* 80181170 */ void StartBlure(int, fopAc_ac_c*, f32, f32); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 809F81C0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGPla { - /* 809F7AB0 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809F3230 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809F3278 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809F8350 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct _GXTexObj {}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809F3AC4 */ ~J3DTexNoAnm(); - /* 809F3B0C */ J3DTexNoAnm(); - /* 809F7B80 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809F3B30 */ ~J3DTexMtxAnm(); - /* 809F3B6C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809F3A1C */ ~J3DTevKColorAnm(); - /* 809F3A58 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809F3A70 */ ~J3DTevColorAnm(); - /* 809F3AAC */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809F3B84 */ ~J3DMatColorAnm(); - /* 809F3BC0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 809F82FC */ ~J3DFrameCtrl(); -}; +#include "d/d_camera.h" // // Forward References: @@ -654,9 +242,6 @@ extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -677,8 +262,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -689,15 +272,10 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1269,25 +847,30 @@ SECTION_DATA static u8 l_warpIdList[24] = { }; /* 809F8D7C-809F8D9C -00001 0020+00 1/0 0/0 0/0 .data daNpc_GWolf_MethodTable */ -SECTION_DATA static void* daNpc_GWolf_MethodTable[8] = { - (void*)daNpc_GWolf_Create__FPv, - (void*)daNpc_GWolf_Delete__FPv, - (void*)daNpc_GWolf_Execute__FPv, - (void*)daNpc_GWolf_IsDelete__FPv, - (void*)daNpc_GWolf_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_GWolf_MethodTable = { + (process_method_func)daNpc_GWolf_Create__FPv, + (process_method_func)daNpc_GWolf_Delete__FPv, + (process_method_func)daNpc_GWolf_Execute__FPv, + (process_method_func)daNpc_GWolf_IsDelete__FPv, + (process_method_func)daNpc_GWolf_Draw__FPv, }; /* 809F8D9C-809F8DCC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_GWOLF */ -SECTION_DATA extern void* g_profile_NPC_GWOLF[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x024F0000, (void*)&g_fpcLf_Method, - (void*)0x00000E20, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01500000, (void*)&daNpc_GWolf_MethodTable, - (void*)0x08044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_GWOLF = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_GWOLF, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_GWolf_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 336, // mPriority + &daNpc_GWolf_MethodTable, // sub_method + 0x08044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 809F8DCC-809F8DD8 0005D8 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGPla */ @@ -1409,7 +992,8 @@ asm daNpc_GWolf_c::daNpc_GWolf_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__8cM3dGCylFv.s" } @@ -1419,7 +1003,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__8cM3dGAabFv.s" } @@ -1516,7 +1101,8 @@ asm void daNpc_GWolf_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__15J3DTevKColorAnmFv.s" } @@ -1526,7 +1112,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__15J3DTevKColorAnmFv.s" } @@ -1536,7 +1123,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__14J3DTevColorAnmFv.s" } @@ -1546,7 +1134,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__14J3DTevColorAnmFv.s" } @@ -1556,7 +1145,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__11J3DTexNoAnmFv.s" } @@ -1566,7 +1156,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__11J3DTexNoAnmFv.s" } @@ -1576,7 +1167,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__12J3DTexMtxAnmFv.s" } @@ -1586,7 +1178,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__12J3DTexMtxAnmFv.s" } @@ -1596,7 +1189,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__14J3DMatColorAnmFv.s" } @@ -1606,7 +1200,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__14J3DMatColorAnmFv.s" } @@ -1724,7 +1319,7 @@ asm void daNpc_GWolf_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpc_GWolf_c::main() { +asm BOOL daNpc_GWolf_c::main() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/main__13daNpc_GWolf_cFv.s" } @@ -1743,7 +1338,7 @@ COMPILER_STRIP_GATE(0x809F85B4, &lit_4804); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpc_GWolf_c::ctrlBtk() { +asm BOOL daNpc_GWolf_c::ctrlBtk() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/ctrlBtk__13daNpc_GWolf_cFv.s" } @@ -1962,7 +1557,7 @@ asm void daNpc_GWolf_c::setMotion(int param_0, f32 param_1, int param_2) { #pragma pop /* 809F4E2C-809F4E34 001E6C 0008+00 1/0 0/0 0/0 .text drawDbgInfo__13daNpc_GWolf_cFv */ -bool daNpc_GWolf_c::drawDbgInfo() { +BOOL daNpc_GWolf_c::drawDbgInfo() { return false; } @@ -2600,7 +2195,8 @@ asm void daNpc_GWolf_c::getGroundSlope(dBgS_ObjAcch& param_0, s16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__8cM3dGPlaFv.s" } @@ -2655,7 +2251,8 @@ static bool daNpc_GWolf_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/calc__11J3DTexNoAnmCFPUs.s" } @@ -2665,7 +2262,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2675,7 +2273,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2685,7 +2284,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__15daNpcF_Lookat_cFv.s" } @@ -2695,14 +2295,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__5csXyzFv.s" } #pragma pop /* 809F7D40-809F7D44 004D80 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2710,14 +2312,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__4cXyzFv.s" } #pragma pop /* 809F7D80-809F7D84 004DC0 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2725,7 +2329,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__8daNpcF_cFv.s" } @@ -2735,7 +2340,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__ct__8daNpcF_cFv.s" } @@ -2745,7 +2351,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__12dBgS_AcchCirFv.s" } @@ -2755,7 +2362,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__10dCcD_GSttsFv.s" } @@ -2765,7 +2373,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__12dBgS_ObjAcchFv.s" } @@ -2775,19 +2384,22 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 809F8344-809F8348 005384 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 809F8348-809F8350 005388 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } @@ -2795,7 +2407,8 @@ bool daNpcF_c::setExpressionBtp(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.cpp b/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.cpp index b94e2b4c89..d4c5895afe 100644 --- a/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.cpp +++ b/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.cpp @@ -1,496 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_hanjo -// +/** + * @file d_a_npc_hanjo.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo.h" #include "dol2asm.h" -// -// Types: -// - -struct csXyz { - /* 809FF21C */ ~csXyz(); - /* 809FF7B8 */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 809FF1E0 */ ~cXyz(); - /* 809FF8B8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 80A0058C */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 809FF8BC */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Hanjo_c { - /* 809F908C */ ~daNpc_Hanjo_c(); - /* 809F9278 */ void create(); - /* 809F9578 */ void CreateHeap(); - /* 809F9B38 */ void Delete(); - /* 809F9B6C */ void Execute(); - /* 809F9B8C */ void Draw(); - /* 809F9C20 */ void createHeapCallBack(fopAc_ac_c*); - /* 809F9C40 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809F9C98 */ void getType(); - /* 809F9CF0 */ void isDelete(); - /* 809F9D9C */ void reset(); - /* 809F9FCC */ void afterJntAnm(int); - /* 809FA050 */ void setParam(); - /* 809FA1C4 */ void checkChangeEvt(); - /* 809FA3B8 */ void setAfterTalkMotion(); - /* 809FA45C */ void srchActors(); - /* 809FA55C */ void evtTalk(); - /* 809FA5FC */ void evtCutProc(); - /* 809FA6C4 */ void action(); - /* 809FA88C */ void beforeMove(); - /* 809FAABC */ void afterMoved(); - /* 809FABB8 */ void setAttnPos(); - /* 809FAF90 */ void setCollision(); - /* 809FB2C4 */ bool drawDbgInfo(); - /* 809FB2CC */ void drawOtherMdl(); - /* 809FB59C */ void selectAction(); - /* 809FB6CC */ void chkAction(int (daNpc_Hanjo_c::*)(void*)); - /* 809FB6F8 */ void setAction(int (daNpc_Hanjo_c::*)(void*)); - /* 809FB7A0 */ void initShoot(int); - /* 809FB90C */ void shoot(int); - /* 809FBB94 */ void initDive(); - /* 809FBC3C */ void dive(); - /* 809FC06C */ void lookround(s16); - /* 809FC1BC */ void commandToHawk(); - /* 809FC2E4 */ void cutConversationAboutSaru(int); - /* 809FC438 */ void cutConversation(int); - /* 809FC80C */ void cutPursuitBee(int); - /* 809FCDC4 */ void cutAppearHawker(int); - /* 809FD3C0 */ void cutDive(int); - /* 809FD86C */ void wait(void*); - /* 809FDEFC */ void throwStone(void*); - /* 809FE2E0 */ void takayose(void*); - /* 809FEAEC */ void talk(void*); - /* 80A000A8 */ daNpc_Hanjo_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A00334 */ s32 getEyeballMaterialNo(); - /* 80A004D0 */ s32 getHeadJointNo(); - /* 80A004D8 */ s32 getNeckJointNo(); - /* 80A004E0 */ bool getBackboneJointNo(); - /* 80A00504 */ void checkChangeJoint(int); - /* 80A00514 */ void checkRemoveJoint(int); - /* 80A00524 */ s32 getFootLJointNo(); - /* 80A0052C */ s32 getFootRJointNo(); - - static u8 const mStoneCcDObjInfo[48]; - static void* mCutNameList[6]; - static u8 mCutList[72]; - static u8 mStoneCcDSph[64]; -}; - -struct daNpc_Hanjo_Param_c { - /* 80A00534 */ ~daNpc_Hanjo_Param_c(); - - static u8 const m[180]; -}; - -struct daNpc_HanjoStone_c { - /* 809FFFD4 */ ~daNpc_HanjoStone_c(); - /* 80A001FC */ daNpc_HanjoStone_c(); - /* 80A0033C */ void getPos(); - /* 80A00358 */ void getOld(); - /* 80A00374 */ void posMoveF(fopAc_ac_c*); - /* 80A004A8 */ void setPos(cXyz); - /* 80A004E8 */ void setAngle(csXyz); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); - /* 80084658 */ void ChkCoHit(); - /* 800846F0 */ void GetCoHitObj(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 809FEE58 */ ~daNpcT_c(); - /* 809FF3B4 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 809FFDAC */ void ctrlSubFaceMotion(int); - /* 809FFDB0 */ bool getEyeballLMaterialNo(); - /* 809FFDB8 */ bool getEyeballRMaterialNo(); - /* 809FFDC0 */ bool evtEndProc(); - /* 809FFDC8 */ bool chkXYItems(); - /* 809FFDD0 */ void decTmr(); - /* 809FFDE8 */ void drawGhost(); - /* 809FFDEC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 809FFDF4 */ bool afterSetMotionAnm(int, int, f32, int); - /* 809FFDFC */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 809FFE2C */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 809FFE5C */ void changeAnm(int*, int*); - /* 809FFE60 */ void changeBck(int*, int*); - /* 809FFE64 */ void changeBtp(int*, int*); - /* 809FFE68 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 809FF2A0 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 809FF7BC */ ~daNpcT_JntAnm_c(); - /* 809FFA88 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 809FFBA4 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 809FF258 */ ~daNpcT_ActorMngr_c(); - /* 809FF2E8 */ daNpcT_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_player_collect_c { - /* 80034208 */ void isCollect(int, u8) const; -}; - -struct dSv_memBit_c { - /* 80034810 */ void onSwitch(int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 809FF904 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A4C4 */ void remove(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); - /* 8004365C */ void setPt2(void*); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 809FF974 */ ~dCcD_GStts(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 809FF9D0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 80A002EC */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 809FF324 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 809FF36C */ ~cM3dGAab(); -}; - -struct cCcD_Obj { - /* 80263A48 */ void GetAc(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 809FEE10 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 809F9A24 */ ~J3DTexNoAnm(); - /* 809F9A6C */ J3DTexNoAnm(); - /* 809FEDE0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 809F9A90 */ ~J3DTexMtxAnm(); - /* 809F9ACC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 809F997C */ ~J3DTevKColorAnm(); - /* 809F99B8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 809F99D0 */ ~J3DTevColorAnm(); - /* 809F9A0C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 809F9AE4 */ ~J3DMatColorAnm(); - /* 809F9B20 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 809FFA40 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -626,7 +141,6 @@ extern "C" u8 mStoneCcDSph__13daNpc_Hanjo_c[64]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_XYZrotM__FPA4_fsss(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); @@ -785,11 +299,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -811,13 +320,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); -extern "C" void strcat(); -extern "C" void strcpy(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -830,13 +333,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_Counter[12 + 4 /* padding */]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -1231,25 +729,30 @@ SECTION_DATA static void* lit_5523[3] = { #pragma pop /* 80A010A8-80A010C8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Hanjo_MethodTable */ -SECTION_DATA static void* daNpc_Hanjo_MethodTable[8] = { - (void*)daNpc_Hanjo_Create__FPv, - (void*)daNpc_Hanjo_Delete__FPv, - (void*)daNpc_Hanjo_Execute__FPv, - (void*)daNpc_Hanjo_IsDelete__FPv, - (void*)daNpc_Hanjo_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Hanjo_MethodTable = { + (process_method_func)daNpc_Hanjo_Create__FPv, + (process_method_func)daNpc_Hanjo_Delete__FPv, + (process_method_func)daNpc_Hanjo_Execute__FPv, + (process_method_func)daNpc_Hanjo_IsDelete__FPv, + (process_method_func)daNpc_Hanjo_Draw__FPv, }; /* 80A010C8-80A010F8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HANJO */ -SECTION_DATA extern void* g_profile_NPC_HANJO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02540000, (void*)&g_fpcLf_Method, - (void*)0x0000172C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01550000, (void*)&daNpc_Hanjo_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_HANJO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_HANJO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Hanjo_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 341, // mPriority + &daNpc_Hanjo_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A010F8-80A01104 0007B8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1528,7 +1031,8 @@ asm void daNpc_Hanjo_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__15J3DTevKColorAnmFv.s" } @@ -1538,7 +1042,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__15J3DTevKColorAnmFv.s" } @@ -1548,7 +1053,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__14J3DTevColorAnmFv.s" } @@ -1558,7 +1064,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__14J3DTevColorAnmFv.s" } @@ -1568,7 +1075,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__11J3DTexNoAnmFv.s" } @@ -1578,7 +1086,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__11J3DTexNoAnmFv.s" } @@ -1588,7 +1097,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__12J3DTexMtxAnmFv.s" } @@ -1598,7 +1108,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__12J3DTexMtxAnmFv.s" } @@ -1608,7 +1119,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__14J3DMatColorAnmFv.s" } @@ -1618,7 +1130,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__14J3DMatColorAnmFv.s" } @@ -2578,7 +2091,8 @@ static bool daNpc_Hanjo_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/calc__11J3DTexNoAnmCFPUs.s" } @@ -2588,7 +2102,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__10cCcD_GSttsFv.s" } @@ -2598,7 +2113,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__8daNpcT_cFv.s" } @@ -2608,7 +2124,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__4cXyzFv.s" } @@ -2618,7 +2135,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__5csXyzFv.s" } @@ -2628,7 +2146,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2638,7 +2157,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__13daNpcT_Path_cFv.s" } @@ -2648,7 +2168,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2658,7 +2179,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__8cM3dGCylFv.s" } @@ -2668,7 +2190,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__8cM3dGAabFv.s" } @@ -2680,18 +2203,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/func_809FF3B4.s" } #pragma pop /* 809FF7B8-809FF7BC 006818 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2699,14 +2224,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 809FF8B8-809FF8BC 006918 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2714,7 +2241,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2724,7 +2252,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__12dBgS_AcchCirFv.s" } @@ -2734,7 +2263,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__10dCcD_GSttsFv.s" } @@ -2744,7 +2274,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__12dBgS_ObjAcchFv.s" } @@ -2754,7 +2285,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__12J3DFrameCtrlFv.s" } @@ -2764,8 +2296,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2775,36 +2308,42 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 809FFDAC-809FFDB0 006E0C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 809FFDB0-809FFDB8 006E10 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 809FFDB8-809FFDC0 006E18 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 809FFDC0-809FFDC8 006E20 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 809FFDC8-809FFDD0 006E28 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2812,25 +2351,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/decTmr__8daNpcT_cFv.s" } #pragma pop /* 809FFDE8-809FFDEC 006E48 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 809FFDEC-809FFDF4 006E4C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 809FFDF4-809FFDFC 006E54 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2839,7 +2382,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2850,29 +2394,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 809FFE5C-809FFE60 006EBC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 809FFE60-809FFE64 006EC0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 809FFE64-809FFE68 006EC4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 809FFE68-809FFE6C 006EC8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2960,7 +2509,8 @@ asm daNpc_HanjoStone_c::daNpc_HanjoStone_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/__dt__8cM3dGSphFv.s" } @@ -3108,7 +2658,8 @@ static asm void func_80A00584() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hanjo/d_a_npc_hanjo/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.cpp b/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.cpp index 5e75ac1b07..8e4742b829 100644 --- a/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.cpp +++ b/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.cpp @@ -1,220 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_henna -// +/** + * @file d_a_npc_henna.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_henna/d_a_npc_henna.h" #include "dol2asm.h" - -// -// Types: -// - -namespace std { -/* 8054A708 */ void fabsf(f32); -}; - -struct request_of_phase_process_class {}; - -struct npc_henna_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct _GXColor {}; - -struct mDoGph_gInf_c { - /* 80007FD8 */ void fadeOut(f32, _GXColor&); - /* 8054A4CC */ void fadeIn(f32, _GXColor&); -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTexPattern {}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct J3DAnmTextureSRTKey {}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D9E8 */ void entryJoint(J3DModelData*, u16, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct Vec {}; - -struct mDoExt_McaMorf { - /* 8000FC4C */ mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, int, - int, void*, u32, u32); - /* 8001037C */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32, void*); - /* 800105C8 */ void play(Vec*, u32, s8); - /* 80010680 */ void entryDL(); - /* 800106AC */ void modelCalc(); -}; - -struct mDoCPd_c { - /* 8054A418 */ void getSubStickX(u32); - /* 8054A430 */ void getStickX3D(u32); - /* 8054A510 */ void getTrigA(u32); - - static u8 m_cpadInfo[256]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 805434C0 */ ~cXyz(); - /* 8054A8A4 */ cXyz(); - /* 8054A398 */ cXyz(cXyz const&); - /* 8054A5BC */ void abs() const; - /* 8054A714 */ void set(f32, f32, f32); - /* 8054A724 */ void operator+=(Vec const&); - /* 8054A7D4 */ void operator=(cXyz const&); -}; - -struct daPy_py_c { - /* 8015F4F0 */ void setLookPos(cXyz*); - /* 8054A384 */ void cancelOriginalDemo(); - /* 8054A558 */ void offPlayerNoDraw(); - /* 8054A6D0 */ void onPlayerNoDraw(); - /* 8054A778 */ void changeDemoMode(u32, int, int, s16); - /* 8054A78C */ void changeOriginalDemo(); -}; - -struct daNpc_Henna_HIO_c { - /* 80542F0C */ daNpc_Henna_HIO_c(); - /* 80549E40 */ ~daNpc_Henna_HIO_c(); -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 8023819C */ void getActor(); - /* 802383A4 */ void isMouthCheck(); - /* 80238440 */ void getSelectCursorPos(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); - /* 8024A4C4 */ void remove(); - /* 8024A540 */ void getNowMsgNo(); -}; - -struct dEvt_info_c { - /* 8054A7B0 */ void onCondition(u16); - /* 8054A7C0 */ void checkCommandDemoAccrpt(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dComIfG_play_c { - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCamera_c { - /* 801614AC */ void Start(); - /* 801614D0 */ void Stop(); - /* 8016300C */ void SetTrimSize(s32); - /* 80180AE0 */ void Set(cXyz, cXyz, f32, s16); - /* 80180BA0 */ void Reset(cXyz, cXyz, f32, s16); - /* 80180C18 */ void Reset(cXyz, cXyz); -}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); -}; - -struct cM3dGPla { - /* 805434FC */ ~cM3dGPla(); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 805496DC */ ~J3DFrameCtrl(); -}; +#include "d/d_camera.h" // // Forward References: @@ -384,10 +175,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void _savegpr_21(); extern "C" void _savegpr_22(); extern "C" void _savegpr_24(); @@ -402,21 +189,12 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_Counter[12 + 4 /* padding */]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 g_blackColor; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; extern "C" extern u8 struct_80450C98[4]; extern "C" extern u8 cDmr_SkipInfo[4]; extern "C" extern u8 data_80450CA0[4]; @@ -644,25 +422,30 @@ SECTION_DATA static u8 facebck_d[32] = { #pragma pop /* 8054AF00-8054AF20 -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Henna_Method */ -SECTION_DATA static void* l_daNpc_Henna_Method[8] = { - (void*)daNpc_Henna_Create__FP10fopAc_ac_c, - (void*)daNpc_Henna_Delete__FP15npc_henna_class, - (void*)daNpc_Henna_Execute__FP15npc_henna_class, - (void*)daNpc_Henna_IsDelete__FP15npc_henna_class, - (void*)daNpc_Henna_Draw__FP15npc_henna_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Henna_Method = { + (process_method_func)daNpc_Henna_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Henna_Delete__FP15npc_henna_class, + (process_method_func)daNpc_Henna_Execute__FP15npc_henna_class, + (process_method_func)daNpc_Henna_IsDelete__FP15npc_henna_class, + (process_method_func)daNpc_Henna_Draw__FP15npc_henna_class, }; /* 8054AF20-8054AF50 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HENNA */ -SECTION_DATA extern void* g_profile_NPC_HENNA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02550000, (void*)&g_fpcLf_Method, - (void*)0x000007FC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01560000, (void*)&l_daNpc_Henna_Method, - (void*)0x00044000, (void*)0x04000000, +extern actor_process_profile_definition g_profile_NPC_HENNA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_HENNA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_henna_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 342, // mPriority + &l_daNpc_Henna_Method, // sub_method + 0x00044000, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 8054AF50-8054AF5C 0002C8 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -798,7 +581,8 @@ static asm void daNpc_Henna_Draw(npc_henna_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__dt__4cXyzFv.s" } @@ -808,7 +592,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__dt__8cM3dGPlaFv.s" } @@ -2166,7 +1951,8 @@ static asm void useHeapInit(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__dt__12J3DFrameCtrlFv.s" } @@ -2570,7 +2356,8 @@ REGISTER_CTORS(0x80549E88, __sinit_d_a_npc_henna_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::cancelOriginalDemo() { +// asm void daPy_py_c::cancelOriginalDemo() { +extern "C" asm void cancelOriginalDemo__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/cancelOriginalDemo__9daPy_py_cFv.s" } @@ -2580,7 +2367,8 @@ asm void daPy_py_c::cancelOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::cXyz(cXyz const& param_0) { +// asm cXyz::cXyz(cXyz const& param_0) { +extern "C" asm void __ct__4cXyzFRC4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__ct__4cXyzFRC4cXyz.s" } @@ -2590,7 +2378,8 @@ asm cXyz::cXyz(cXyz const& param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3) { +// static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3) { +extern "C" static asm void mDoAud_seStart__FUlPC3VecUlSc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/mDoAud_seStart__FUlPC3VecUlSc.s" } @@ -2600,7 +2389,8 @@ static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoCPd_c::getSubStickX(u32 param_0) { +// asm void mDoCPd_c::getSubStickX(u32 param_0) { +extern "C" asm void getSubStickX__8mDoCPd_cFUl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/getSubStickX__8mDoCPd_cFUl.s" } @@ -2610,7 +2400,8 @@ asm void mDoCPd_c::getSubStickX(u32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoCPd_c::getStickX3D(u32 param_0) { +// asm void mDoCPd_c::getStickX3D(u32 param_0) { +extern "C" asm void getStickX3D__8mDoCPd_cFUl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/getStickX3D__8mDoCPd_cFUl.s" } @@ -2620,7 +2411,8 @@ asm void mDoCPd_c::getStickX3D(u32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_setDoStatusForce(u8 param_0, u8 param_1) { +// static asm void dComIfGp_setDoStatusForce(u8 param_0, u8 param_1) { +extern "C" static asm void dComIfGp_setDoStatusForce__FUcUc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_setDoStatusForce__FUcUc.s" } @@ -2630,7 +2422,8 @@ static asm void dComIfGp_setDoStatusForce(u8 param_0, u8 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_setEventReg(u16 param_0, u8 param_1) { +// static asm void dComIfGs_setEventReg(u16 param_0, u8 param_1) { +extern "C" static asm void dComIfGs_setEventReg__FUsUc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGs_setEventReg__FUsUc.s" } @@ -2640,7 +2433,8 @@ static asm void dComIfGs_setEventReg(u16 param_0, u8 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void Z2GetAudioMgr() { +// static asm void Z2GetAudioMgr() { +extern "C" static asm void Z2GetAudioMgr__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/Z2GetAudioMgr__Fv.s" } @@ -2650,7 +2444,8 @@ static asm void Z2GetAudioMgr() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfG_getTimerPtr() { +// static asm void dComIfG_getTimerPtr() { +extern "C" static asm void dComIfG_getTimerPtr__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfG_getTimerPtr__Fv.s" } @@ -2661,7 +2456,8 @@ static asm void dComIfG_getTimerPtr() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoGph_gInf_c::fadeIn(f32 param_0, _GXColor& param_1) { +// asm void mDoGph_gInf_c::fadeIn(f32 param_0, _GXColor& param_1) { +extern "C" asm void fadeIn__13mDoGph_gInf_cFfR8_GXColor() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/fadeIn__13mDoGph_gInf_cFfR8_GXColor.s" } @@ -2671,7 +2467,8 @@ asm void mDoGph_gInf_c::fadeIn(f32 param_0, _GXColor& param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void fpcM_Search(void* (*param_0)(void*, void*), void* param_1) { +// static asm void fpcM_Search(void* (*param_0)(void*, void*), void* param_1) { +extern "C" static asm void fpcM_Search__FPFPvPv_PvPv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/fpcM_Search__FPFPvPv_PvPv.s" } @@ -2681,7 +2478,8 @@ static asm void fpcM_Search(void* (*param_0)(void*, void*), void* param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoCPd_c::getTrigA(u32 param_0) { +// asm void mDoCPd_c::getTrigA(u32 param_0) { +extern "C" asm void getTrigA__8mDoCPd_cFUl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/getTrigA__8mDoCPd_cFUl.s" } @@ -2691,7 +2489,8 @@ asm void mDoCPd_c::getTrigA(u32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_event_reset() { +// static asm void dComIfGp_event_reset() { +extern "C" static asm void dComIfGp_event_reset__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_event_reset__Fv.s" } @@ -2701,7 +2500,8 @@ static asm void dComIfGp_event_reset() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::offPlayerNoDraw() { +// asm void daPy_py_c::offPlayerNoDraw() { +extern "C" asm void offPlayerNoDraw__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/offPlayerNoDraw__9daPy_py_cFv.s" } @@ -2712,7 +2512,8 @@ asm void daPy_py_c::offPlayerNoDraw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_setMessageCountNumber(s32 param_0) { +// static asm void dComIfGp_setMessageCountNumber(s32 param_0) { +extern "C" static asm void dComIfGp_setMessageCountNumber__Fl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_setMessageCountNumber__Fl.s" } @@ -2722,7 +2523,8 @@ static asm void dComIfGp_setMessageCountNumber(s32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_event_offHindFlag(u16 param_0) { +// static asm void dComIfGp_event_offHindFlag(u16 param_0) { +extern "C" static asm void dComIfGp_event_offHindFlag__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_event_offHindFlag__FUs.s" } @@ -2732,7 +2534,8 @@ static asm void dComIfGp_event_offHindFlag(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dKy_getEnvlight() { +// static asm void dKy_getEnvlight() { +extern "C" static asm void dKy_getEnvlight__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dKy_getEnvlight__Fv.s" } @@ -2742,7 +2545,8 @@ static asm void dKy_getEnvlight() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void cMtx_XrotM(f32 (*param_0)[4], s16 param_1) { +// static asm void cMtx_XrotM(f32 (*param_0)[4], s16 param_1) { +extern "C" static asm void cMtx_XrotM__FPA4_fs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/cMtx_XrotM__FPA4_fs.s" } @@ -2752,7 +2556,8 @@ static asm void cMtx_XrotM(f32 (*param_0)[4], s16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cXyz::abs() const { +// asm void cXyz::abs() const { +extern "C" asm void abs__4cXyzCFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/abs__4cXyzCFv.s" } @@ -2762,7 +2567,8 @@ asm void cXyz::abs() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::onPlayerNoDraw() { +// asm void daPy_py_c::onPlayerNoDraw() { +extern "C" asm void onPlayerNoDraw__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/onPlayerNoDraw__9daPy_py_cFv.s" } @@ -2772,7 +2578,8 @@ asm void daPy_py_c::onPlayerNoDraw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_setItemRupeeCount(s32 param_0) { +// static asm void dComIfGp_setItemRupeeCount(s32 param_0) { +extern "C" static asm void dComIfGp_setItemRupeeCount__Fl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_setItemRupeeCount__Fl.s" } @@ -2782,7 +2589,8 @@ static asm void dComIfGp_setItemRupeeCount(s32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_getRupee() { +// static asm void dComIfGs_getRupee() { +extern "C" static asm void dComIfGs_getRupee__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGs_getRupee__Fv.s" } @@ -2792,7 +2600,8 @@ static asm void dComIfGs_getRupee() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void std::fabsf(f32 param_0) { +// asm void std::fabsf(f32 param_0) { +extern "C" asm void fabsf__3stdFf() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/fabsf__3stdFf.s" } @@ -2802,7 +2611,8 @@ asm void std::fabsf(f32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cXyz::set(f32 param_0, f32 param_1, f32 param_2) { +// asm void cXyz::set(f32 param_0, f32 param_1, f32 param_2) { +extern "C" asm void set__4cXyzFfff() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/set__4cXyzFfff.s" } @@ -2812,7 +2622,8 @@ asm void cXyz::set(f32 param_0, f32 param_1, f32 param_2) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cXyz::operator+=(Vec const& param_0) { +// asm void cXyz::operator+=(Vec const& param_0) { +extern "C" asm void __apl__4cXyzFRC3Vec() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__apl__4cXyzFRC3Vec.s" } @@ -2822,7 +2633,8 @@ asm void cXyz::operator+=(Vec const& param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void cMtx_YrotS(f32 (*param_0)[4], s16 param_1) { +// static asm void cMtx_YrotS(f32 (*param_0)[4], s16 param_1) { +extern "C" static asm void cMtx_YrotS__FPA4_fs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/cMtx_YrotS__FPA4_fs.s" } @@ -2832,7 +2644,8 @@ static asm void cMtx_YrotS(f32 (*param_0)[4], s16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 param_3) { +// asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 param_3) { +extern "C" asm void changeDemoMode__9daPy_py_cFUliis() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/changeDemoMode__9daPy_py_cFUliis.s" } @@ -2842,7 +2655,8 @@ asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 pa #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::changeOriginalDemo() { +// asm void daPy_py_c::changeOriginalDemo() { +extern "C" asm void changeOriginalDemo__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/changeOriginalDemo__9daPy_py_cFv.s" } @@ -2852,7 +2666,8 @@ asm void daPy_py_c::changeOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daPy_getPlayerActorClass() { +// static asm void daPy_getPlayerActorClass() { +extern "C" static asm void daPy_getPlayerActorClass__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/daPy_getPlayerActorClass__Fv.s" } @@ -2862,7 +2677,8 @@ static asm void daPy_getPlayerActorClass() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dEvt_info_c::onCondition(u16 param_0) { +// asm void dEvt_info_c::onCondition(u16 param_0) { +extern "C" asm void onCondition__11dEvt_info_cFUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/onCondition__11dEvt_info_cFUs.s" } @@ -2872,7 +2688,8 @@ asm void dEvt_info_c::onCondition(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dEvt_info_c::checkCommandDemoAccrpt() { +// asm void dEvt_info_c::checkCommandDemoAccrpt() { +extern "C" asm void checkCommandDemoAccrpt__11dEvt_info_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/checkCommandDemoAccrpt__11dEvt_info_cFv.s" } @@ -2882,7 +2699,8 @@ asm void dEvt_info_c::checkCommandDemoAccrpt() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cXyz::operator=(cXyz const& param_0) { +// asm void cXyz::operator=(cXyz const& param_0) { +extern "C" asm void __as__4cXyzFRC4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/__as__4cXyzFRC4cXyz.s" } @@ -2893,7 +2711,8 @@ asm void cXyz::operator=(cXyz const& param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_checkPlayerStatus0(int param_0, u32 param_1) { +// static asm void dComIfGp_checkPlayerStatus0(int param_0, u32 param_1) { +extern "C" static asm void dComIfGp_checkPlayerStatus0__FiUl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_checkPlayerStatus0__FiUl.s" } @@ -2903,7 +2722,8 @@ static asm void dComIfGp_checkPlayerStatus0(int param_0, u32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void JMAFastSqrt(f32 param_0) { +// static asm void JMAFastSqrt(f32 param_0) { +extern "C" static asm void JMAFastSqrt__Ff() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/JMAFastSqrt__Ff.s" } @@ -2913,7 +2733,8 @@ static asm void JMAFastSqrt(f32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_getEventReg(u16 param_0) { +// static asm void dComIfGs_getEventReg(u16 param_0) { +extern "C" static asm void dComIfGs_getEventReg__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGs_getEventReg__FUs.s" } @@ -2923,7 +2744,8 @@ static asm void dComIfGs_getEventReg(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_isEventBit(u16 param_0) { +// static asm void dComIfGs_isEventBit(u16 param_0) { +extern "C" static asm void dComIfGs_isEventBit__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGs_isEventBit__FUs.s" } @@ -2933,14 +2755,16 @@ static asm void dComIfGs_isEventBit(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_event_runCheck() { +// static asm void dComIfGp_event_runCheck() { +extern "C" static asm void dComIfGp_event_runCheck__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_event_runCheck__Fv.s" } #pragma pop /* 8054A8A4-8054A8A8 007A84 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2948,7 +2772,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getCamera(int param_0) { +// static asm void dComIfGp_getCamera(int param_0) { +extern "C" static asm void dComIfGp_getCamera__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_getCamera__Fi.s" } @@ -2958,7 +2783,8 @@ static asm void dComIfGp_getCamera(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getPlayerCameraID(int param_0) { +// static asm void dComIfGp_getPlayerCameraID(int param_0) { +extern "C" asm void dComIfGp_getPlayerCameraID__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_getPlayerCameraID__Fi.s" } @@ -2968,7 +2794,8 @@ static asm void dComIfGp_getPlayerCameraID(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getPlayer(int param_0) { +// static asm void dComIfGp_getPlayer(int param_0) { +extern "C" asm void dComIfGp_getPlayer__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGp_getPlayer__Fi.s" } @@ -2979,7 +2806,8 @@ static asm void dComIfGp_getPlayer(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dMsgObject_getSelectCursorPos() { +// static asm void dMsgObject_getSelectCursorPos() { +extern "C" static asm void dMsgObject_getSelectCursorPos__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dMsgObject_getSelectCursorPos__Fv.s" } @@ -2990,7 +2818,8 @@ static asm void dMsgObject_getSelectCursorPos() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void fopAcM_GetRoomNo(fopAc_ac_c const* param_0) { +// static asm void fopAcM_GetRoomNo(fopAc_ac_c const* param_0) { +extern "C" static asm void fopAcM_GetRoomNo__FPC10fopAc_ac_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/fopAcM_GetRoomNo__FPC10fopAc_ac_c.s" } @@ -3000,7 +2829,8 @@ static asm void fopAcM_GetRoomNo(fopAc_ac_c const* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_onEventBit(u16 param_0) { +// static asm void dComIfGs_onEventBit(u16 param_0) { +extern "C" static asm void dComIfGs_onEventBit__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_henna/d_a_npc_henna/dComIfGs_onEventBit__FUs.s" } diff --git a/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.cpp b/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.cpp index 8140a61221..dc4b39ebd7 100644 --- a/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.cpp +++ b/rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.cpp @@ -1,32 +1,29 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_henna0 -// +/** + * @file d_a_npc_henna0.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_henna0/d_a_npc_henna0.h" #include "dol2asm.h" - -// -// Forward References: -// - -extern "C" extern void* g_profile_NPC_HENNA0[12]; - -// -// External References: -// - -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; - // // Declarations: // /* ############################################################################################## */ /* 80A013E0-80A01410 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HENNA0 */ -SECTION_DATA extern void* g_profile_NPC_HENNA0[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, (void*)0x02560000, (void*)&g_fpcLf_Method, - (void*)0x00000828, (void*)NULL, (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01570000, (void*)NULL, (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_HENNA0 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_HENNA0, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(d_a_npc_henna0), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 343, // mPriority + NULL, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; diff --git a/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.cpp b/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.cpp index c00aa7bf6a..aeff39b4d4 100644 --- a/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.cpp +++ b/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.cpp @@ -1,25 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_hoz -// +/** + * @file d_a_npc_hoz.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h" #include "dol2asm.h" -// -// Types: -// - -struct daStartAndGoal_c { - /* 80D4DB30 */ void readyStartTimer(); - /* 80D4DBAC */ void isStartCheck(); -}; - -struct dMeter2Info_c { - /* 8021DE18 */ void setMiniGameItem(u8); - /* 8021E0C4 */ void resetMiniGameItem(bool); - /* 8021E268 */ void setMiniGameCount(s8); -}; // // Forward References: @@ -836,25 +822,30 @@ SECTION_DATA static void* lit_5085[3] = { #pragma pop /* 80A07724-80A07744 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Hoz_MethodTable */ -SECTION_DATA static void* daNpc_Hoz_MethodTable[8] = { - (void*)daNpc_Hoz_Create__FPv, - (void*)daNpc_Hoz_Delete__FPv, - (void*)daNpc_Hoz_Execute__FPv, - (void*)daNpc_Hoz_IsDelete__FPv, - (void*)daNpc_Hoz_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Hoz_MethodTable = { + (process_method_func)daNpc_Hoz_Create__FPv, + (process_method_func)daNpc_Hoz_Delete__FPv, + (process_method_func)daNpc_Hoz_Execute__FPv, + (process_method_func)daNpc_Hoz_IsDelete__FPv, + (process_method_func)daNpc_Hoz_Draw__FPv, }; /* 80A07744-80A07774 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HOZ */ -SECTION_DATA extern void* g_profile_NPC_HOZ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02570000, (void*)&g_fpcLf_Method, - (void*)0x00000FC8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01580000, (void*)&daNpc_Hoz_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_HOZ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_HOZ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Hoz_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 344, // mPriority + &daNpc_Hoz_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A07774-80A07780 000F70 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -2013,12 +2004,14 @@ extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { #pragma pop /* 80A062E0-80A062E8 004EC0 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } /* 80A062E8-80A062EC 004EC8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2034,13 +2027,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A062FC-80A06304 004EDC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A06304-80A0630C 004EE4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2058,30 +2053,35 @@ void daNpcT_c::afterMoved() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A0632C-80A06330 004F0C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A06330-80A06334 004F10 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A06334-80A0633C 004F14 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A0633C-80A06344 004F1C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2110,22 +2110,26 @@ extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { #pragma pop /* 80A063A4-80A063A8 004F84 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A063A8-80A063AC 004F88 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A063AC-80A063B0 004F8C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A063B0-80A063B4 004F90 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.cpp b/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.cpp index 81c9dfbecf..bde2f35f23 100644 --- a/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.cpp +++ b/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.cpp @@ -1,371 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_impal -// +/** + * @file d_a_npc_impal.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_impal/d_a_npc_impal.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A0BBB0 */ ~cXyz(); - /* 80A0BBEC */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcImpal_c { - /* 80A079EC */ daNpcImpal_c(); - /* 80A07C00 */ ~daNpcImpal_c(); - /* 80A07DC4 */ void Create(); - /* 80A080F8 */ void CreateHeap(); - /* 80A08524 */ void Delete(); - /* 80A08558 */ void Execute(); - /* 80A0857C */ void Draw(); - /* 80A085EC */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A087BC */ void createHeapCallBack(fopAc_ac_c*); - /* 80A087DC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A08828 */ void setExpressionAnm(int, bool); - /* 80A08A68 */ void setExpressionBtp(int); - /* 80A08B48 */ void setMotionAnm(int, f32); - /* 80A08CBC */ void reset(); - /* 80A08EB8 */ void setAction(bool (daNpcImpal_c::*)(void*)); - /* 80A090E8 */ void wait(void*); - /* 80A099B4 */ void setMotion(int, f32, int); - /* 80A099F8 */ void setExpression(int, f32); - /* 80A09A24 */ void talk(void*); - /* 80A09F4C */ void demo(void*); - /* 80A0A1E0 */ void EvCut_ImpalAppear1(int); - /* 80A0A680 */ void EvCut_ImpalAppear2(int); - /* 80A0A950 */ void EvCut_CopyRod(int); - /* 80A0ADF8 */ void setParam(); - /* 80A0AEA8 */ void main(); - /* 80A0B380 */ void ctrlBtk(); - /* 80A0B45C */ void setAttnPos(); - /* 80A0B76C */ void lookat(); - /* 80A0B94C */ bool drawDbgInfo(); - - static u8 mEvtSeqList[48]; -}; - -struct daNpcImpal_Param_c { - /* 80A0C204 */ ~daNpcImpal_Param_c(); - - static u8 const m[112]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A0BBF0 */ ~daNpcF_c(); - /* 80A0BE3C */ daNpcF_c(); - /* 80A0C1B0 */ void adjustShapeAngle(); - /* 80A0C1B4 */ void setCollisions(); - /* 80A0C1B8 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80A0BB70 */ ~csXyz(); - /* 80A0BBAC */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A0BAA0 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A0BA1C */ ~daNpcF_ActorMngr_c(); - /* 80A0BA64 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A0C09C */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A0C0F8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A0C02C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A07B70 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A07BB8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A0C1BC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2SeqMgr { - /* 802AF408 */ void bgmStop(u32, s32); - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80A0B954 */ void func_80A0B954(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80A08410 */ ~J3DTexNoAnm(); - /* 80A08458 */ J3DTexNoAnm(); - /* 80A0ADC8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A0847C */ ~J3DTexMtxAnm(); - /* 80A084B8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A08368 */ ~J3DTevKColorAnm(); - /* 80A083A4 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A083BC */ ~J3DTevColorAnm(); - /* 80A083F8 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A084D0 */ ~J3DMatColorAnm(); - /* 80A0850C */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A0C168 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -563,10 +203,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -579,10 +215,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -593,11 +226,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -815,25 +445,30 @@ SECTION_DATA static void* lit_5003[3] = { #pragma pop /* 80A0C7B8-80A0C7D8 -00001 0020+00 1/0 0/0 0/0 .data daNpcImpal_MethodTable */ -SECTION_DATA static void* daNpcImpal_MethodTable[8] = { - (void*)daNpcImpal_Create__FPv, - (void*)daNpcImpal_Delete__FPv, - (void*)daNpcImpal_Execute__FPv, - (void*)daNpcImpal_IsDelete__FPv, - (void*)daNpcImpal_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcImpal_MethodTable = { + (process_method_func)daNpcImpal_Create__FPv, + (process_method_func)daNpcImpal_Delete__FPv, + (process_method_func)daNpcImpal_Execute__FPv, + (process_method_func)daNpcImpal_IsDelete__FPv, + (process_method_func)daNpcImpal_Draw__FPv, }; /* 80A0C7D8-80A0C808 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_IMPAL */ -SECTION_DATA extern void* g_profile_NPC_IMPAL[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029D0000, (void*)&g_fpcLf_Method, - (void*)0x00000DEC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A00000, (void*)&daNpcImpal_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_IMPAL = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_IMPAL, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcImpal_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 416, // mPriority + &daNpcImpal_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A0C808-80A0C814 0002E4 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -948,7 +583,8 @@ asm daNpcImpal_c::daNpcImpal_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__8cM3dGCylFv.s" } @@ -958,7 +594,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__8cM3dGAabFv.s" } @@ -1060,7 +697,8 @@ asm void daNpcImpal_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__15J3DTevKColorAnmFv.s" } @@ -1070,7 +708,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__15J3DTevKColorAnmFv.s" } @@ -1080,7 +719,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__14J3DTevColorAnmFv.s" } @@ -1090,7 +730,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__14J3DTevColorAnmFv.s" } @@ -1100,7 +741,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__11J3DTexNoAnmFv.s" } @@ -1110,7 +752,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__11J3DTexNoAnmFv.s" } @@ -1120,7 +763,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__12J3DTexMtxAnmFv.s" } @@ -1130,7 +774,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__12J3DTexMtxAnmFv.s" } @@ -1140,7 +785,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__14J3DMatColorAnmFv.s" } @@ -1150,7 +796,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__14J3DMatColorAnmFv.s" } @@ -1909,7 +1556,8 @@ static bool daNpcImpal_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/calc__11J3DTexNoAnmCFPUs.s" } @@ -2048,7 +1696,8 @@ REGISTER_CTORS(0x80A0B960, __sinit_d_a_npc_impal_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2058,7 +1707,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2068,7 +1718,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__15daNpcF_Lookat_cFv.s" } @@ -2078,14 +1729,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__5csXyzFv.s" } #pragma pop /* 80A0BBAC-80A0BBB0 0042AC 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2093,14 +1746,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__4cXyzFv.s" } #pragma pop /* 80A0BBEC-80A0BBF0 0042EC 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2108,7 +1763,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__8daNpcF_cFv.s" } @@ -2118,7 +1774,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__ct__8daNpcF_cFv.s" } @@ -2128,7 +1785,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__12dBgS_AcchCirFv.s" } @@ -2138,7 +1796,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__10dCcD_GSttsFv.s" } @@ -2148,7 +1807,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__12dBgS_ObjAcchFv.s" } @@ -2158,24 +1818,28 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A0C1B0-80A0C1B4 0048B0 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80A0C1B4-80A0C1B8 0048B4 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A0C1B8-80A0C1BC 0048B8 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -2183,7 +1847,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_impal/d_a_npc_impal/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.cpp b/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.cpp index c1b1386323..8c05a2c191 100644 --- a/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.cpp +++ b/rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.cpp @@ -1,101 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_inko -// +/** + * @file d_a_npc_inko.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_inko/d_a_npc_inko.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_inko_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct Vec {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct mDoExt_McaMorf { - /* 8000FC4C */ mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, int, - int, void*, u32, u32); - /* 8001037C */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32, void*); - /* 800105C8 */ void play(Vec*, u32, s8); - /* 80010680 */ void entryDL(); - /* 800106AC */ void modelCalc(); -}; - -struct mDoCPd_c { - static u8 m_cpadInfo[256]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct daPy_py_c { - /* 8015F4F0 */ void setLookPos(cXyz*); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct Z2SoundObjSimple { - /* 802BE844 */ Z2SoundObjSimple(); -}; - -struct Z2SoundObjBase { - /* 802BDFF8 */ void deleteObject(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DJoint {}; // // Forward References: @@ -110,7 +20,6 @@ extern "C" static void daNpc_Inko_Delete__FP14npc_inko_class(); extern "C" static void useHeapInit__FP10fopAc_ac_c(); extern "C" static void daNpc_Inko_Create__FP10fopAc_ac_c(); extern "C" extern char const* const d_a_npc_inko__stringBase0; -extern "C" extern void* g_profile_NPC_INKO[12]; // // External References: @@ -154,26 +63,16 @@ extern "C" void cLib_addCalcAngleS2__FPssss(); extern "C" void deleteObject__14Z2SoundObjBaseFv(); extern "C" void __ct__16Z2SoundObjSimpleFv(); extern "C" void* __nw__FUl(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECSquareMag(); extern "C" void _savegpr_24(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_24(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; extern "C" extern u8 cDmr_SkipInfo[4]; // @@ -583,25 +482,30 @@ static asm void daNpc_Inko_Create(fopAc_ac_c* param_0) { /* ############################################################################################## */ /* 80A0E0F8-80A0E118 -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Inko_Method */ -SECTION_DATA static void* l_daNpc_Inko_Method[8] = { - (void*)daNpc_Inko_Create__FP10fopAc_ac_c, - (void*)daNpc_Inko_Delete__FP14npc_inko_class, - (void*)daNpc_Inko_Execute__FP14npc_inko_class, - (void*)daNpc_Inko_IsDelete__FP14npc_inko_class, - (void*)daNpc_Inko_Draw__FP14npc_inko_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Inko_Method = { + (process_method_func)daNpc_Inko_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Inko_Delete__FP14npc_inko_class, + (process_method_func)daNpc_Inko_Execute__FP14npc_inko_class, + (process_method_func)daNpc_Inko_IsDelete__FP14npc_inko_class, + (process_method_func)daNpc_Inko_Draw__FP14npc_inko_class, }; /* 80A0E118-80A0E148 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_INKO */ -SECTION_DATA extern void* g_profile_NPC_INKO[12] = { - (void*)0xFFFFFFFD, (void*)0x0008FFFD, - (void*)0x02FF0000, (void*)&g_fpcLf_Method, - (void*)0x00000648, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02C00000, (void*)&l_daNpc_Inko_Method, - (void*)0x00040100, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_INKO = { + fpcLy_CURRENT_e, // mLayerID + 8, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_INKO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_inko_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 704, // mPriority + &l_daNpc_Inko_Method, // sub_method + 0x00040100, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A0E0CC-80A0E0CC 0000B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.cpp b/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.cpp index 42ab21a551..849e39c046 100644 --- a/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.cpp +++ b/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.cpp @@ -1,375 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_ins -// +/** + * @file d_a_npc_ins.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_ins/d_a_npc_ins.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80A136AC */ ~csXyz(); - /* 80A136E8 */ csXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80A136EC */ ~cXyz(); - /* 80A13728 */ cXyz(); -}; - -struct daNpcIns_c { - /* 80A0E24C */ daNpcIns_c(); - /* 80A0E460 */ ~daNpcIns_c(); - /* 80A0E660 */ void Create(); - /* 80A0EA30 */ void CreateHeap(); - /* 80A0EF3C */ void Delete(); - /* 80A0EF70 */ void Execute(); - /* 80A0EF94 */ void Draw(); - /* 80A0F0BC */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A0F28C */ void createHeapCallBack(fopAc_ac_c*); - /* 80A0F2AC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A0F2F8 */ void setExpressionAnm(int, bool); - /* 80A0F538 */ void setExpressionBtp(int); - /* 80A0F618 */ void setMotionAnm(int, f32); - /* 80A0F78C */ void reset(); - /* 80A0F984 */ void waitShop(void*); - /* 80A0FF40 */ void setMotion(int, f32, int); - /* 80A0FFC4 */ void setExpression(int, f32); - /* 80A0FFF0 */ void waitPresent(void*); - /* 80A103A0 */ void waitOutSide1(void*); - /* 80A10950 */ void waitOutSide2(void*); - /* 80A10CD8 */ void goHome(void*); - /* 80A11378 */ void talk(void*); - /* 80A11A7C */ void demo(void*); - /* 80A11BE8 */ void isInsectComplete(); - /* 80A11C50 */ void getInsectParamData(int); - /* 80A11D44 */ void setWaitAction(); - /* 80A11F84 */ void setPath(int); - /* 80A1211C */ void checkPoint(cXyz&, f32); - /* 80A122D0 */ void setNextPoint(); - /* 80A12480 */ void getTargetPoint(int, Vec*); - /* 80A124D0 */ void pathMoveF(); - /* 80A12618 */ void setParam(); - /* 80A126D4 */ void main(); - /* 80A12A10 */ void playMotion(); - /* 80A12DC8 */ void ctrlBtk(); - /* 80A12EA4 */ void setAttnPos(); - /* 80A131AC */ void lookat(); - /* 80A1339C */ void setMtx(); - /* 80A13460 */ bool drawDbgInfo(); - - static u8 mEvtSeqList[12]; -}; - -struct daNpcIns_Param_c { - /* 80A13D40 */ ~daNpcIns_Param_c(); - - static u8 const m[112]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A1372C */ ~daNpcF_c(); - /* 80A13978 */ daNpcF_c(); - /* 80A13CEC */ void adjustShapeAngle(); - /* 80A13CF0 */ void setCollisions(); - /* 80A13CF4 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A135DC */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A13558 */ ~daNpcF_ActorMngr_c(); - /* 80A135A0 */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dMsgObject_c { - /* 802384B0 */ void setInsectItemNo(u8); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A13BD8 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A13C34 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A13B68 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGPla { - /* 80A11330 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A0E3D0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A0E418 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A13CF8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80A13468 */ void func_80A13468(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80A0EE28 */ ~J3DTexNoAnm(); - /* 80A0EE70 */ J3DTexNoAnm(); - /* 80A125E8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A0EE94 */ ~J3DTexMtxAnm(); - /* 80A0EED0 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A0ED80 */ ~J3DTevKColorAnm(); - /* 80A0EDBC */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A0EDD4 */ ~J3DTevColorAnm(); - /* 80A0EE10 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A0EEE8 */ ~J3DMatColorAnm(); - /* 80A0EF24 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A13CA4 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -577,12 +213,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -598,10 +228,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -612,14 +239,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -881,25 +503,30 @@ SECTION_DATA static void* lit_5562[3] = { #pragma pop /* 80A144B0-80A144D0 -00001 0020+00 1/0 0/0 0/0 .data daNpcIns_MethodTable */ -SECTION_DATA static void* daNpcIns_MethodTable[8] = { - (void*)daNpcIns_Create__FPv, - (void*)daNpcIns_Delete__FPv, - (void*)daNpcIns_Execute__FPv, - (void*)daNpcIns_IsDelete__FPv, - (void*)daNpcIns_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcIns_MethodTable = { + (process_method_func)daNpcIns_Create__FPv, + (process_method_func)daNpcIns_Delete__FPv, + (process_method_func)daNpcIns_Execute__FPv, + (process_method_func)daNpcIns_IsDelete__FPv, + (process_method_func)daNpcIns_Draw__FPv, }; /* 80A144D0-80A14500 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_INS */ -SECTION_DATA extern void* g_profile_NPC_INS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A60000, (void*)&g_fpcLf_Method, - (void*)0x00000E24, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A90000, (void*)&daNpcIns_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_INS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_INS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcIns_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 425, // mPriority + &daNpcIns_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A14500-80A1450C 000364 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGPla */ @@ -1021,7 +648,8 @@ asm daNpcIns_c::daNpcIns_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__8cM3dGCylFv.s" } @@ -1031,7 +659,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__8cM3dGAabFv.s" } @@ -1150,7 +779,8 @@ asm void daNpcIns_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__15J3DTevKColorAnmFv.s" } @@ -1160,7 +790,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__15J3DTevKColorAnmFv.s" } @@ -1170,7 +801,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__14J3DTevColorAnmFv.s" } @@ -1180,7 +812,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__14J3DTevColorAnmFv.s" } @@ -1190,7 +823,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__11J3DTexNoAnmFv.s" } @@ -1200,7 +834,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__11J3DTexNoAnmFv.s" } @@ -1210,7 +845,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__12J3DTexMtxAnmFv.s" } @@ -1220,7 +856,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__12J3DTexMtxAnmFv.s" } @@ -1230,7 +867,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__14J3DMatColorAnmFv.s" } @@ -1240,7 +878,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__14J3DMatColorAnmFv.s" } @@ -2010,7 +1649,8 @@ asm void daNpcIns_c::goHome(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__8cM3dGPlaFv.s" } @@ -2210,7 +1850,8 @@ static bool daNpcIns_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/calc__11J3DTexNoAnmCFPUs.s" } @@ -2386,7 +2027,8 @@ REGISTER_CTORS(0x80A134F0, __sinit_d_a_npc_ins_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2396,7 +2038,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2406,7 +2049,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__15daNpcF_Lookat_cFv.s" } @@ -2416,14 +2060,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__5csXyzFv.s" } #pragma pop /* 80A136E8-80A136EC 005588 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2431,14 +2077,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__4cXyzFv.s" } #pragma pop /* 80A13728-80A1372C 0055C8 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2446,7 +2094,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__8daNpcF_cFv.s" } @@ -2456,7 +2105,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__ct__8daNpcF_cFv.s" } @@ -2466,7 +2116,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__12dBgS_AcchCirFv.s" } @@ -2476,7 +2127,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__10dCcD_GSttsFv.s" } @@ -2486,7 +2138,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__12dBgS_ObjAcchFv.s" } @@ -2496,24 +2149,28 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A13CEC-80A13CF0 005B8C 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80A13CF0-80A13CF4 005B90 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A13CF4-80A13CF8 005B94 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -2521,7 +2178,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ins/d_a_npc_ins/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.cpp b/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.cpp index ef24259cc9..63d8dae655 100644 --- a/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.cpp +++ b/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.cpp @@ -1,407 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_jagar -// +/** + * @file d_a_npc_jagar.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A19A8C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Jagar_c { - /* 80A1470C */ ~daNpc_Jagar_c(); - /* 80A14858 */ void create(); - /* 80A14B20 */ void CreateHeap(); - /* 80A14F4C */ void Delete(); - /* 80A14F80 */ void Execute(); - /* 80A14FA0 */ void Draw(); - /* 80A15034 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A15054 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A150AC */ void getType(); - /* 80A150F8 */ void isDelete(); - /* 80A15198 */ void reset(); - /* 80A15364 */ void afterJntAnm(int); - /* 80A153E8 */ void setParam(); - /* 80A155E4 */ void checkChangeEvt(); - /* 80A15714 */ void setAfterTalkMotion(); - /* 80A157B4 */ void srchActors(); - /* 80A158A0 */ void evtTalk(); - /* 80A15940 */ void evtCutProc(); - /* 80A15A08 */ void action(); - /* 80A15CA4 */ void beforeMove(); - /* 80A15D68 */ void setAttnPos(); - /* 80A1607C */ void setCollision(); - /* 80A161EC */ bool drawDbgInfo(); - /* 80A161F4 */ void changeBtp(int*, int*); - /* 80A16234 */ void selectAction(); - /* 80A162B0 */ void chkAction(int (daNpc_Jagar_c::*)(void*)); - /* 80A162DC */ void setAction(int (daNpc_Jagar_c::*)(void*)); - /* 80A16384 */ void cutClimbUp(int); - /* 80A16544 */ void cutNeedYourHelp(int); - /* 80A16CD8 */ void cutAnger(int); - /* 80A16EFC */ void cutConversationWithBou(int); - /* 80A1705C */ void cutConfidentialConversation(int); - /* 80A173D8 */ void cutFindWolf(int); - /* 80A17898 */ void chkSitMotion(); - /* 80A17924 */ void chkSitMotion2(); - /* 80A17984 */ void chkChuMotion(); - /* 80A179F8 */ void chkToMotion(); - /* 80A17A2C */ void wait(void*); - /* 80A1856C */ void talkwithBou(void*); - /* 80A18B74 */ void talk(void*); - /* 80A1A194 */ daNpc_Jagar_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A1A274 */ bool getEyeballMaterialNo(); - /* 80A1A27C */ s32 getHeadJointNo(); - /* 80A1A284 */ s32 getNeckJointNo(); - /* 80A1A28C */ bool getBackboneJointNo(); - /* 80A1A294 */ void checkChangeJoint(int); - /* 80A1A2A4 */ void checkRemoveJoint(int); - /* 80A1A2B4 */ s32 getFootLJointNo(); - /* 80A1A2BC */ s32 getFootRJointNo(); - - static void* mCutNameList[7]; - static u8 mCutList[84]; -}; - -struct daNpc_Jagar_Param_c { - /* 80A1A2C4 */ ~daNpc_Jagar_Param_c(); - - static u8 const m[160]; -}; - -struct daNpc_Bou_c { - /* 8096DA78 */ void getType(); -}; - -struct daNpc_Bou_Param_c { - static u8 const m[156]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80A193EC */ ~csXyz(); - /* 80A19988 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A193B0 */ ~cXyz(); - /* 80A19A88 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ADA0 */ void chkPointInArea(cXyz, cXyz, cXyz, s16); - /* 8014B0C8 */ void chkFindWolf(s16, int, int, f32, f32, f32, f32, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BB00 */ void getActorDistance(fopAc_ac_c*, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A19028 */ ~daNpcT_c(); - /* 80A19584 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A19F7C */ void ctrlSubFaceMotion(int); - /* 80A19F80 */ bool getEyeballLMaterialNo(); - /* 80A19F88 */ bool getEyeballRMaterialNo(); - /* 80A19F90 */ bool evtEndProc(); - /* 80A19F98 */ void afterMoved(); - /* 80A19F9C */ bool chkXYItems(); - /* 80A19FA4 */ void decTmr(); - /* 80A19FBC */ void drawOtherMdl(); - /* 80A19FC0 */ void drawGhost(); - /* 80A19FC4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A19FCC */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A19FD4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A1A004 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A1A034 */ void changeAnm(int*, int*); - /* 80A1A038 */ void changeBck(int*, int*); - /* 80A1A03C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80A19470 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A1998C */ ~daNpcT_JntAnm_c(); - /* 80A19C58 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A19D74 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A19428 */ ~daNpcT_ActorMngr_c(); - /* 80A194B8 */ daNpcT_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_player_collect_c { - /* 80034208 */ void isCollect(int, u8) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A19AD4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A19B44 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A19BA0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A194F4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A1953C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A18FE0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A14E38 */ ~J3DTexNoAnm(); - /* 80A14E80 */ J3DTexNoAnm(); - /* 80A18FB0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A14EA4 */ ~J3DTexMtxAnm(); - /* 80A14EE0 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A14D90 */ ~J3DTevKColorAnm(); - /* 80A14DCC */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A14DE4 */ ~J3DTevColorAnm(); - /* 80A14E20 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A14EF8 */ ~J3DMatColorAnm(); - /* 80A14F34 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A19C10 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -524,7 +128,6 @@ extern "C" u8 mCutList__13daNpc_Jagar_c[84]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -645,11 +248,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -668,8 +266,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -680,10 +276,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void getType__11daNpc_Bou_cFv(); extern "C" u8 const m__17daNpc_Bou_Param_c[156]; extern "C" void __register_global_object(); @@ -1056,25 +649,30 @@ SECTION_DATA static void* lit_5660[12] = { }; /* 80A1AC10-80A1AC30 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Jagar_MethodTable */ -SECTION_DATA static void* daNpc_Jagar_MethodTable[8] = { - (void*)daNpc_Jagar_Create__FPv, - (void*)daNpc_Jagar_Delete__FPv, - (void*)daNpc_Jagar_Execute__FPv, - (void*)daNpc_Jagar_IsDelete__FPv, - (void*)daNpc_Jagar_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Jagar_MethodTable = { + (process_method_func)daNpc_Jagar_Create__FPv, + (process_method_func)daNpc_Jagar_Delete__FPv, + (process_method_func)daNpc_Jagar_Execute__FPv, + (process_method_func)daNpc_Jagar_IsDelete__FPv, + (process_method_func)daNpc_Jagar_Draw__FPv, }; /* 80A1AC30-80A1AC60 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_JAGAR */ -SECTION_DATA extern void* g_profile_NPC_JAGAR[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02580000, (void*)&g_fpcLf_Method, - (void*)0x0000100C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01590000, (void*)&daNpc_Jagar_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_JAGAR = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_JAGAR, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Jagar_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 345, // mPriority + &daNpc_Jagar_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A1AC60-80A1AC6C 000718 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1342,7 +940,8 @@ asm void daNpc_Jagar_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__15J3DTevKColorAnmFv.s" } @@ -1352,7 +951,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__15J3DTevKColorAnmFv.s" } @@ -1362,7 +962,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__14J3DTevColorAnmFv.s" } @@ -1372,7 +973,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__14J3DTevColorAnmFv.s" } @@ -1382,7 +984,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__11J3DTexNoAnmFv.s" } @@ -1392,7 +995,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__11J3DTexNoAnmFv.s" } @@ -1402,7 +1006,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__12J3DTexMtxAnmFv.s" } @@ -1412,7 +1017,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__12J3DTexMtxAnmFv.s" } @@ -1422,7 +1028,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__14J3DMatColorAnmFv.s" } @@ -1432,7 +1039,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__14J3DMatColorAnmFv.s" } @@ -2198,7 +1806,8 @@ static bool daNpc_Jagar_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/calc__11J3DTexNoAnmCFPUs.s" } @@ -2208,7 +1817,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__10cCcD_GSttsFv.s" } @@ -2218,7 +1828,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__8daNpcT_cFv.s" } @@ -2228,7 +1839,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__4cXyzFv.s" } @@ -2238,7 +1850,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__5csXyzFv.s" } @@ -2248,7 +1861,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2258,7 +1872,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__13daNpcT_Path_cFv.s" } @@ -2268,7 +1883,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2278,7 +1894,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__8cM3dGCylFv.s" } @@ -2288,7 +1905,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__8cM3dGAabFv.s" } @@ -2300,18 +1918,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/func_80A19584.s" } #pragma pop /* 80A19988-80A1998C 005368 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2319,14 +1939,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A19A88-80A19A8C 005468 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2334,7 +1956,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2344,7 +1967,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__12dBgS_AcchCirFv.s" } @@ -2354,7 +1978,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__10dCcD_GSttsFv.s" } @@ -2364,7 +1989,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__12dBgS_ObjAcchFv.s" } @@ -2374,7 +2000,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/__dt__12J3DFrameCtrlFv.s" } @@ -2384,8 +2011,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2395,31 +2023,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A19F7C-80A19F80 00595C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80A19F80-80A19F88 005960 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A19F88-80A19F90 005968 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A19F90-80A19F98 005970 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2429,7 +2062,8 @@ void daNpcT_c::afterMoved() { } /* 80A19F9C-80A19FA4 00597C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2437,30 +2071,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A19FBC-80A19FC0 00599C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A19FC0-80A19FC4 0059A0 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A19FC4-80A19FCC 0059A4 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A19FCC-80A19FD4 0059AC 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2469,7 +2108,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2480,24 +2120,28 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_jagar/d_a_npc_jagar/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A1A034-80A1A038 005A14 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A1A038-80A1A03C 005A18 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A1A03C-80A1A040 005A1C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.cpp b/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.cpp index 5794ae3d54..cfb6115aa4 100644 --- a/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.cpp +++ b/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.cpp @@ -1,386 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kakashi -// +/** + * @file d_a_npc_kakashi.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 8054E460 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_Kakashi_c { - /* 8054B36C */ ~daNpc_Kakashi_c(); - /* 8054B4E8 */ void create(); - /* 8054B7D8 */ void CreateHeap(); - /* 8054B908 */ void Delete(); - /* 8054B93C */ void Execute(); - /* 8054B994 */ void Draw(); - /* 8054B9D8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8054BB34 */ void createHeapCallBack(fopAc_ac_c*); - /* 8054BB54 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8054BBAC */ void getType(); - /* 8054BC10 */ void isDelete(); - /* 8054BC98 */ void reset(); - /* 8054BEA8 */ void setParam(); - /* 8054BF88 */ void srchActors(); - /* 8054BF8C */ void checkChangeEvt(); - /* 8054C034 */ void evtTalk(); - /* 8054C0D4 */ void evtEndProc(); - /* 8054C0E8 */ void evtCutProc(); - /* 8054C1B0 */ void action(); - /* 8054C268 */ void beforeMove(); - /* 8054C2E0 */ void setAttnPos(); - /* 8054C584 */ void setCollision(); - /* 8054C924 */ bool drawDbgInfo(); - /* 8054C92C */ void selectAction(); - /* 8054CA1C */ void chkAction(int (daNpc_Kakashi_c::*)(void*)); - /* 8054CA48 */ void setAction(int (daNpc_Kakashi_c::*)(void*)); - /* 8054CAF0 */ void hitChk(); - /* 8054CEA0 */ void setStaggerParam(fopAc_ac_c*); - /* 8054D26C */ void setPrtcls(int); - /* 8054D374 */ void judgeSwdTutorial(); - /* 8054D490 */ void cutSwdTutorial(int); - /* 8054D57C */ void cutGetWoodSwd(int); - /* 8054D604 */ void cutMarosWhisper(int); - /* 8054D668 */ void wait(void*); - /* 8054D694 */ void swdTutorial(void*); - /* 8054D8BC */ void talk(void*); - /* 8054E804 */ daNpc_Kakashi_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList[4]; - static u8 mCutList[48]; -}; - -struct daNpc_Kakashi_Param_c { - /* 8054EA58 */ ~daNpc_Kakashi_Param_c(); - - static u8 const m[152]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); - /* 800844F8 */ void GetTgHitObj(); - /* 800845B0 */ void getHitSeID(u8, int); -}; - -struct csXyz { - /* 8054DED8 */ ~csXyz(); - /* 8054E8F8 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct cXyz { - /* 8054DDD0 */ ~cXyz(); - /* 8054E414 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8054DA48 */ ~daNpcT_c(); - /* 8054DF14 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8054E62C */ void ctrlSubFaceMotion(int); - /* 8054E630 */ bool checkChangeJoint(int); - /* 8054E638 */ bool checkRemoveJoint(int); - /* 8054E640 */ s32 getBackboneJointNo(); - /* 8054E648 */ s32 getNeckJointNo(); - /* 8054E650 */ s32 getHeadJointNo(); - /* 8054E658 */ s32 getFootLJointNo(); - /* 8054E660 */ s32 getFootRJointNo(); - /* 8054E668 */ bool getEyeballLMaterialNo(); - /* 8054E670 */ bool getEyeballRMaterialNo(); - /* 8054E678 */ bool getEyeballMaterialNo(); - /* 8054E680 */ void afterJntAnm(int); - /* 8054E684 */ void setAfterTalkMotion(); - /* 8054E688 */ void afterMoved(); - /* 8054E68C */ bool chkXYItems(); - /* 8054E694 */ void decTmr(); - /* 8054E6AC */ void drawOtherMdl(); - /* 8054E6B0 */ void drawGhost(); - /* 8054E6B4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8054E6BC */ bool afterSetMotionAnm(int, int, f32, int); - /* 8054E6C4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 8054E6F4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 8054E724 */ void changeAnm(int*, int*); - /* 8054E728 */ void changeBck(int*, int*); - /* 8054E72C */ void changeBtp(int*, int*); - /* 8054E730 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mCcDSph[64]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 8054E318 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 8054E418 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 8054DE0C */ ~dCcD_Sph(); - /* 8054E8FC */ dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80083830 */ void Move(); - /* 8054E518 */ ~dCcD_GStts(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8054E574 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 8054E4A8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80070844 */ void GetLockonList(s32); - /* 800737E4 */ void LockonTruth(); -}; - -struct dAttList_c { - /* 80073864 */ void getActor(); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 8054E980 */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8054E9C8 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8054EA10 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8054DA00 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2SoundObjSimple { - /* 802BE844 */ Z2SoundObjSimple(); -}; - -struct Z2SoundObjBase { - /* 802BDF48 */ ~Z2SoundObjBase(); - /* 802BDFF8 */ void deleteObject(); - /* 802BE4A4 */ void startCollisionSE(u32, u32, Z2SoundObjBase*); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8054E5E4 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -488,7 +113,6 @@ extern "C" u8 mCutList__15daNpc_Kakashi_c[48]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -601,8 +225,6 @@ extern "C" void __dt__10Z2CreatureFv(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -622,10 +244,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -638,8 +257,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__16Z2SoundObjSimple[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; extern "C" extern u8 pauseTimer__9dScnPly_c[4]; @@ -927,25 +544,30 @@ SECTION_DATA static void* lit_5060[3] = { }; /* 8054EFDC-8054EFFC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kakashi_MethodTable */ -SECTION_DATA static void* daNpc_Kakashi_MethodTable[8] = { - (void*)daNpc_Kakashi_Create__FPv, - (void*)daNpc_Kakashi_Delete__FPv, - (void*)daNpc_Kakashi_Execute__FPv, - (void*)daNpc_Kakashi_IsDelete__FPv, - (void*)daNpc_Kakashi_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kakashi_MethodTable = { + (process_method_func)daNpc_Kakashi_Create__FPv, + (process_method_func)daNpc_Kakashi_Delete__FPv, + (process_method_func)daNpc_Kakashi_Execute__FPv, + (process_method_func)daNpc_Kakashi_IsDelete__FPv, + (process_method_func)daNpc_Kakashi_Draw__FPv, }; /* 8054EFFC-8054F02C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KAKASHI */ -SECTION_DATA extern void* g_profile_NPC_KAKASHI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02410000, (void*)&g_fpcLf_Method, - (void*)0x00001398, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013F0000, (void*)&daNpc_Kakashi_MethodTable, - (void*)0x00044000, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KAKASHI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KAKASHI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kakashi_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 319, // mPriority + &daNpc_Kakashi_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8054F02C-8054F038 000290 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */ @@ -1847,7 +1469,8 @@ static bool daNpc_Kakashi_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__10cCcD_GSttsFv.s" } @@ -1857,7 +1480,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__8daNpcT_cFv.s" } @@ -1867,7 +1491,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__4cXyzFv.s" } @@ -1877,7 +1502,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::~dCcD_Sph() { +// asm dCcD_Sph::~dCcD_Sph() { +extern "C" asm void __dt__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__8dCcD_SphFv.s" } @@ -1887,7 +1513,8 @@ asm dCcD_Sph::~dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__5csXyzFv.s" } @@ -1899,11 +1526,12 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/func_8054DF14.s" } @@ -1913,14 +1541,16 @@ asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 8054E414-8054E418 003194 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1928,7 +1558,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1938,7 +1569,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1948,7 +1580,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__12dBgS_AcchCirFv.s" } @@ -1958,7 +1591,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__10dCcD_GSttsFv.s" } @@ -1968,7 +1602,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__12dBgS_ObjAcchFv.s" } @@ -1978,14 +1613,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 8054E62C-8054E630 0033AC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2026,13 +1663,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 8054E668-8054E670 0033E8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8054E670-8054E678 0033F0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2058,7 +1697,8 @@ void daNpcT_c::afterMoved() { } /* 8054E68C-8054E694 00340C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2066,30 +1706,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8054E6AC-8054E6B0 00342C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 8054E6B0-8054E6B4 003430 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 8054E6B4-8054E6BC 003434 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 8054E6BC-8054E6C4 00343C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2098,7 +1743,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2109,29 +1755,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 8054E724-8054E728 0034A4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 8054E728-8054E72C 0034A8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 8054E72C-8054E730 0034AC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 8054E730-8054E734 0034B0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2186,7 +1837,8 @@ asm daNpc_Kakashi_c::daNpc_Kakashi_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma pop /* 8054E8F8-8054E8FC 003678 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2194,7 +1846,8 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::dCcD_Sph() { +// asm dCcD_Sph::dCcD_Sph() { +extern "C" asm void __ct__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__ct__8dCcD_SphFv.s" } @@ -2204,7 +1857,8 @@ asm dCcD_Sph::dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__8cM3dGSphFv.s" } @@ -2214,7 +1868,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__8cM3dGCylFv.s" } @@ -2224,7 +1879,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kakashi/d_a_npc_kakashi/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.cpp b/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.cpp index 95e5dcab63..6bf25c18fe 100644 --- a/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.cpp +++ b/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.cpp @@ -1,384 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kasi_hana -// +/** + * @file d_a_npc_kasi_hana.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80A208D0 */ csXyz(); - /* 802673F4 */ csXyz(s16, s16, s16); - /* 80A1B3D4 */ ~csXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CF0C */ void ZXYrotS(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A1B09C */ ~cXyz(); - /* 80A208D4 */ cXyz(); -}; - -struct daNpcKasi_Mng_c { - /* 80A1AFAC */ void calcEscapeForm(); - /* 80A1B0D8 */ void calcCenterPos(); - /* 80A1B1C8 */ void getDistFromCenter(); - /* 80A1B35C */ void getOffsetFromLeader(cXyz const&, cXyz&); - /* 80A1B410 */ void initPath(u8, u16); - /* 80A1B48C */ void getPlNearPoint(); - /* 80A1B5F0 */ void getSygnalInfo(); - /* 80A1B628 */ void sendInfo(); - /* 80A1B6F8 */ void offTalk(); - /* 80A1B774 */ void chkTalk(); - /* 80A1B810 */ void chkFear(); - /* 80A1B884 */ void chkEscape(); - /* 80A1B920 */ void createHearts(); - /* 80A1BAAC */ void allDemoMove(); - /* 80A1BB24 */ void allDemoNotMove(); - /* 80A1BB9C */ void isMiniGamePlaying(); - /* 80A1BBE0 */ void schMemberActor(); - /* 80A1BC88 */ void schDanchoActor(); - /* 80A1BCF0 */ void deleteAllMember(); - /* 80A1BD6C */ void chgWeightHeavy(); - /* 80A1BDD8 */ void chgWeightLight(); - /* 80A2065C */ void getCenterPos(); -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A208D8 */ ~daNpcF_c(); - /* 80A20B24 */ daNpcF_c(); - /* 80A20E98 */ bool ctrlBtk(); - /* 80A20EA0 */ void setCollisions(); - /* 80A20EA4 */ bool setExpressionAnm(int, bool); - /* 80A20EAC */ bool setExpressionBtp(int); - /* 80A20EB4 */ void setExpression(int, f32); - /* 80A20EB8 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcKasiHana_c { - /* 80A1BE44 */ daNpcKasiHana_c(); - /* 80A1C0A4 */ ~daNpcKasiHana_c(); - /* 80A1C334 */ void Create(); - /* 80A1C5B0 */ void CreateHeap(); - /* 80A1C734 */ void Delete(); - /* 80A1C768 */ void Execute(); - /* 80A1C78C */ void Draw(); - /* 80A1C7D8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A1C964 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A1C984 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A1C9D0 */ void setParam(); - /* 80A1CA60 */ void main(); - /* 80A1CD28 */ void setAttnPos(); - /* 80A1CED0 */ void setMotionAnm(int, f32); - /* 80A1CFA0 */ void setMotion(int, f32, int); - /* 80A1CFE8 */ bool drawDbgInfo(); - /* 80A1CFF0 */ void reset(); - /* 80A1D238 */ void playMotion(); - /* 80A1D604 */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); - /* 80A1D77C */ void setAction(int (daNpcKasiHana_c::*)(int)); - /* 80A1D824 */ void setLookMode(int); - /* 80A1D848 */ void lookat(); - /* 80A1DA28 */ void step(s16, int); - /* 80A1DB1C */ void chkFindPlayer(); - /* 80A1DC00 */ void wait(int); - /* 80A1E184 */ void chace_st(int); - /* 80A1E228 */ void chace(int); - /* 80A1E3AC */ void getChacePos(); - /* 80A1E4AC */ void turn(int); - /* 80A1E578 */ void fear(int); - /* 80A1E78C */ void srchWolfTag(); - /* 80A1E7F4 */ void _srch_escape_tag(void*, void*); - /* 80A1E8C4 */ void getWolfPathNearIdx(); - /* 80A1E9F8 */ void talk(int); - /* 80A1EB5C */ void demo(int); - /* 80A1EE38 */ void escape(int); - /* 80A1EF90 */ void cheer(int); - /* 80A1F198 */ void _turn_to_link(s16); - /* 80A1F1E4 */ void _turn_pos(cXyz const&, s16); - /* 80A1F240 */ void actor_front_check(fopAc_ac_c*); - /* 80A1F318 */ void _getOffset(cXyz const&, cXyz&); - /* 80A1F384 */ void _Evt_Kasi_Appear(int); - /* 80A1F42C */ void _Evt_Kasi_Appear_CutInit(int const&); - /* 80A1F50C */ void _Evt_Kasi_Appear_CutMain(int const&); - /* 80A1F638 */ void _Evt_Kasi_Talk(int); - /* 80A1F740 */ void _Evt_Kasi_Talk_CutInit(int const&); - /* 80A1F860 */ void _Evt_Kasi_Talk_CutMain(int const&, int); - /* 80A1F9F4 */ void _Evt_Kasi(int); - /* 80A1FA9C */ void _Evt_Kasi_CutInit(int const&); - /* 80A1FBC4 */ void _Evt_Kasi_CutMain(int const&); - /* 80A1FD64 */ void _Evt_Kasi_Cheer(int); - /* 80A1FE6C */ void _Evt_Kasi_Cheer_CutInit(int const&); - /* 80A1FF78 */ void _Evt_Kasi_Cheer_CutMain(int const&, int); - /* 80A2016C */ void _Evt_Kasi_Cheer2(int); - /* 80A20244 */ void _Evt_Kasi_Cheer2_CutInit(int const&); - /* 80A20350 */ void _Evt_Kasi_Cheer2_CutMain(int const&, int); - /* 80A20678 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[72]; - static u8 mTargetTag[4]; - static u8 mTargetTagDist[4]; - static u8 mWolfAngle[2 + 2 /* padding */]; -}; - -struct daNpcKasiHana_Param_c { - /* 80A2067C */ ~daNpcKasiHana_Param_c(); - - static u8 const m[124]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 80A20734 */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150BBC */ void reverse(); - /* 80150DE0 */ void getDstPos(cXyz, cXyz&); - /* 80A206D4 */ ~daNpcF_Path_c(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A20800 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A2077C */ ~daNpcF_ActorMngr_c(); - /* 80A207C4 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A20D84 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A20DE0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A20D14 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A205CC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A20614 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A20EBC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A20E50 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -618,9 +245,6 @@ extern "C" void init__17Z2CreatureCitizenFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -636,10 +260,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -648,10 +269,7 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -698,7 +316,8 @@ asm void daNpcKasi_Mng_c::calcEscapeForm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__4cXyzFv.s" } @@ -781,7 +400,8 @@ asm void daNpcKasi_Mng_c::getOffsetFromLeader(cXyz const& param_0, cXyz& param_1 #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__5csXyzFv.s" } @@ -1398,25 +1018,30 @@ SECTION_DATA static void* lit_5860[3] = { #pragma pop /* 80A216C0-80A216E0 -00001 0020+00 1/0 0/0 0/0 .data daNpcKasiHana_MethodTable */ -SECTION_DATA static void* daNpcKasiHana_MethodTable[8] = { - (void*)daNpcKasiHana_Create__FPv, - (void*)daNpcKasiHana_Delete__FPv, - (void*)daNpcKasiHana_Execute__FPv, - (void*)daNpcKasiHana_IsDelete__FPv, - (void*)daNpcKasiHana_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcKasiHana_MethodTable = { + (process_method_func)daNpcKasiHana_Create__FPv, + (process_method_func)daNpcKasiHana_Delete__FPv, + (process_method_func)daNpcKasiHana_Execute__FPv, + (process_method_func)daNpcKasiHana_IsDelete__FPv, + (process_method_func)daNpcKasiHana_Draw__FPv, }; /* 80A216E0-80A21710 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KASIHANA */ -SECTION_DATA extern void* g_profile_NPC_KASIHANA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A10000, (void*)&g_fpcLf_Method, - (void*)0x00001AC8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A40000, (void*)&daNpcKasiHana_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KASIHANA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KASIHANA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcKasiHana_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 420, // mPriority + &daNpcKasiHana_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A21710-80A21758 00033C 0048+00 2/2 0/0 0/0 .data __vt__15daNpcKasiHana_c */ @@ -2835,7 +2460,8 @@ static bool daNpcKasiHana_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__8cM3dGCylFv.s" } @@ -2845,7 +2471,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__8cM3dGAabFv.s" } @@ -2909,7 +2536,8 @@ static asm void func_80A206CC() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__13daNpcF_Path_cFv.s" } @@ -2919,7 +2547,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__16daNpcF_SPCurve_cFv.s" } @@ -2929,7 +2558,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2939,7 +2569,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2949,19 +2580,22 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__15daNpcF_Lookat_cFv.s" } #pragma pop /* 80A208D0-80A208D4 005A10 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } /* 80A208D4-80A208D8 005A14 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2969,7 +2603,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__8daNpcF_cFv.s" } @@ -2979,7 +2614,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__ct__8daNpcF_cFv.s" } @@ -2989,7 +2625,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__12dBgS_AcchCirFv.s" } @@ -2999,7 +2636,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__10dCcD_GSttsFv.s" } @@ -3009,7 +2647,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__12dBgS_ObjAcchFv.s" } @@ -3019,39 +2658,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A20E98-80A20EA0 005FD8 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80A20EA0-80A20EA4 005FE0 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A20EA4-80A20EAC 005FE4 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80A20EAC-80A20EB4 005FEC 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80A20EB4-80A20EB8 005FF4 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 80A20EB8-80A20EBC 005FF8 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -3059,7 +2705,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_hana/d_a_npc_kasi_hana/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.cpp b/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.cpp index edcec00d21..eb86628cd0 100644 --- a/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.cpp +++ b/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.cpp @@ -1,324 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kasi_kyu -// +/** + * @file d_a_npc_kasi_kyu.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80A25134 */ ~csXyz(); - /* 80A25170 */ csXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CF0C */ void ZXYrotS(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A251B4 */ ~daNpcF_c(); - /* 80A25400 */ daNpcF_c(); - /* 80A25774 */ bool ctrlBtk(); - /* 80A2577C */ void setCollisions(); - /* 80A25780 */ bool setExpressionAnm(int, bool); - /* 80A25788 */ bool setExpressionBtp(int); - /* 80A25790 */ void setExpression(int, f32); - /* 80A25794 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A25174 */ ~cXyz(); - /* 80A251B0 */ cXyz(); -}; - -struct daNpcKasiKyu_c { - /* 80A219CC */ daNpcKasiKyu_c(); - /* 80A21C14 */ ~daNpcKasiKyu_c(); - /* 80A21E24 */ void Create(); - /* 80A220A0 */ void CreateHeap(); - /* 80A22224 */ void Delete(); - /* 80A22258 */ void Execute(); - /* 80A22284 */ void Draw(); - /* 80A222D0 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A2245C */ void createHeapCallBack(fopAc_ac_c*); - /* 80A2247C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A224C8 */ void setParam(); - /* 80A22534 */ void main(); - /* 80A227DC */ void setAttnPos(); - /* 80A22984 */ void setMotionAnm(int, f32); - /* 80A22A54 */ void setMotion(int, f32, int); - /* 80A22A9C */ bool drawDbgInfo(); - /* 80A22AA4 */ void reset(); - /* 80A22CD8 */ void playMotion(); - /* 80A2310C */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); - /* 80A23284 */ void setAction(int (daNpcKasiKyu_c::*)(int)); - /* 80A2332C */ void setLookMode(int); - /* 80A23350 */ void lookat(); - /* 80A23530 */ void step(s16, int); - /* 80A23624 */ void chkFindPlayer(); - /* 80A23708 */ void wait(int); - /* 80A23AB4 */ void fear(int); - /* 80A23C90 */ void srchWolfTag(); - /* 80A23CF8 */ void _srch_escape_tag(void*, void*); - /* 80A23DC8 */ void getWolfPathNearIdx(); - /* 80A23EFC */ void chace_st(int); - /* 80A23FA0 */ void chace(int); - /* 80A24110 */ void getChacePos(); - /* 80A241CC */ void turn_link(int); - /* 80A2428C */ void turn_home(int); - /* 80A24370 */ void turn_center(int); - /* 80A24440 */ void talk_dummy(int); - /* 80A244B8 */ void kya(int); - /* 80A24590 */ void kya2(int); - /* 80A24628 */ void kya_stop(int); - /* 80A246FC */ void iyan(int); - /* 80A24774 */ void iyan_look(int); - /* 80A2484C */ void turn_hana(int); - /* 80A2493C */ void escape(int); - /* 80A24A54 */ void wait_dummy(int); - /* 80A24AD8 */ void cheer(int); - /* 80A24CC4 */ void _turn_to_link(s16); - /* 80A24D10 */ void _turn_pos(cXyz const&, s16); - /* 80A24D6C */ void actor_front_check(fopAc_ac_c*); - /* 80A24E44 */ void _getOffset(cXyz const&, cXyz&); - /* 80A25848 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[12]; - static u8 mTargetTag[4]; - static u8 mTargetTagDist[4]; -}; - -struct daNpcKasiKyu_Param_c { - /* 80A2584C */ ~daNpcKasiKyu_Param_c(); - - static u8 const m[116]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 80A24F98 */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150DE0 */ void getDstPos(cXyz, cXyz&); - /* 80A24F38 */ ~daNpcF_Path_c(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A25064 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A24FE0 */ ~daNpcF_ActorMngr_c(); - /* 80A25028 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A25660 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A256BC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A255F0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A21B84 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A21BCC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A25798 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A2572C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -504,9 +191,6 @@ extern "C" void init__17Z2CreatureCitizenFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -521,10 +205,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -533,8 +214,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -962,25 +641,30 @@ SECTION_DATA static void* lit_5237[3] = { }; /* 80A25EC4-80A25EE4 -00001 0020+00 1/0 0/0 0/0 .data daNpcKasiKyu_MethodTable */ -SECTION_DATA static void* daNpcKasiKyu_MethodTable[8] = { - (void*)daNpcKasiKyu_Create__FPv, - (void*)daNpcKasiKyu_Delete__FPv, - (void*)daNpcKasiKyu_Execute__FPv, - (void*)daNpcKasiKyu_IsDelete__FPv, - (void*)daNpcKasiKyu_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcKasiKyu_MethodTable = { + (process_method_func)daNpcKasiKyu_Create__FPv, + (process_method_func)daNpcKasiKyu_Delete__FPv, + (process_method_func)daNpcKasiKyu_Execute__FPv, + (process_method_func)daNpcKasiKyu_IsDelete__FPv, + (process_method_func)daNpcKasiKyu_Draw__FPv, }; /* 80A25EE4-80A25F14 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KASIKYU */ -SECTION_DATA extern void* g_profile_NPC_KASIKYU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A20000, (void*)&g_fpcLf_Method, - (void*)0x0000146C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A50000, (void*)&daNpcKasiKyu_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KASIKYU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KASIKYU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcKasiKyu_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 421, // mPriority + &daNpcKasiKyu_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A25F14-80A25F5C 0003F0 0048+00 2/2 0/0 0/0 .data __vt__14daNpcKasiKyu_c */ @@ -1102,7 +786,8 @@ asm daNpcKasiKyu_c::daNpcKasiKyu_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__8cM3dGCylFv.s" } @@ -1112,7 +797,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__8cM3dGAabFv.s" } @@ -2295,7 +1981,8 @@ static bool daNpcKasiKyu_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__13daNpcF_Path_cFv.s" } @@ -2305,7 +1992,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__16daNpcF_SPCurve_cFv.s" } @@ -2315,7 +2003,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2325,7 +2014,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2335,7 +2025,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__15daNpcF_Lookat_cFv.s" } @@ -2345,14 +2036,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__5csXyzFv.s" } #pragma pop /* 80A25170-80A25174 003890 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2360,14 +2053,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__4cXyzFv.s" } #pragma pop /* 80A251B0-80A251B4 0038D0 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2375,7 +2070,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__8daNpcF_cFv.s" } @@ -2385,7 +2081,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__ct__8daNpcF_cFv.s" } @@ -2395,7 +2092,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__12dBgS_AcchCirFv.s" } @@ -2405,7 +2103,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__10dCcD_GSttsFv.s" } @@ -2415,7 +2114,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__12dBgS_ObjAcchFv.s" } @@ -2425,39 +2125,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A25774-80A2577C 003E94 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80A2577C-80A25780 003E9C 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A25780-80A25788 003EA0 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80A25788-80A25790 003EA8 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80A25790-80A25794 003EB0 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 80A25794-80A25798 003EB4 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -2465,7 +2172,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_kyu/d_a_npc_kasi_kyu/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.cpp b/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.cpp index 0ce5d03eaf..5687581b3b 100644 --- a/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.cpp +++ b/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.cpp @@ -1,324 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kasi_mich -// +/** + * @file d_a_npc_kasi_mich.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80A298C8 */ ~csXyz(); - /* 80A29904 */ csXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CF0C */ void ZXYrotS(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A29948 */ ~daNpcF_c(); - /* 80A29B94 */ daNpcF_c(); - /* 80A29F08 */ bool ctrlBtk(); - /* 80A29F10 */ void setCollisions(); - /* 80A29F14 */ bool setExpressionAnm(int, bool); - /* 80A29F1C */ bool setExpressionBtp(int); - /* 80A29F24 */ void setExpression(int, f32); - /* 80A29F28 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A29908 */ ~cXyz(); - /* 80A29944 */ cXyz(); -}; - -struct daNpcKasiMich_c { - /* 80A261CC */ daNpcKasiMich_c(); - /* 80A26414 */ ~daNpcKasiMich_c(); - /* 80A26624 */ void Create(); - /* 80A268A0 */ void CreateHeap(); - /* 80A26A24 */ void Delete(); - /* 80A26A58 */ void Execute(); - /* 80A26A84 */ void Draw(); - /* 80A26AD0 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A26C5C */ void createHeapCallBack(fopAc_ac_c*); - /* 80A26C7C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A26CC8 */ void setParam(); - /* 80A26D34 */ void main(); - /* 80A26FDC */ void setAttnPos(); - /* 80A27184 */ void setMotionAnm(int, f32); - /* 80A27254 */ void setMotion(int, f32, int); - /* 80A2729C */ bool drawDbgInfo(); - /* 80A272A4 */ void reset(); - /* 80A274D8 */ void playMotion(); - /* 80A2790C */ void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData***); - /* 80A27A84 */ void setAction(int (daNpcKasiMich_c::*)(int)); - /* 80A27B2C */ void setLookMode(int); - /* 80A27B50 */ void lookat(); - /* 80A27D30 */ void step(s16, int); - /* 80A27E24 */ void chkFindPlayer(); - /* 80A27F08 */ void wait(int); - /* 80A282B4 */ void fear(int); - /* 80A28490 */ void srchWolfTag(); - /* 80A284F8 */ void _srch_escape_tag(void*, void*); - /* 80A285C8 */ void getWolfPathNearIdx(); - /* 80A286FC */ void chace_st(int); - /* 80A287A0 */ void chace(int); - /* 80A28910 */ void getChacePos(); - /* 80A289CC */ void turn_link(int); - /* 80A28A8C */ void turn_home(int); - /* 80A28B70 */ void turn_center(int); - /* 80A28C40 */ void talk_dummy(int); - /* 80A28CB8 */ void kya(int); - /* 80A28D90 */ void kya2(int); - /* 80A28E28 */ void kya_stop(int); - /* 80A28EFC */ void iyan(int); - /* 80A28F74 */ void escape(int); - /* 80A2908C */ void iyan_look(int); - /* 80A29164 */ void turn_hana(int); - /* 80A291E8 */ void wait_dummy(int); - /* 80A2926C */ void cheer(int); - /* 80A29458 */ void _turn_to_link(s16); - /* 80A294A4 */ void _turn_pos(cXyz const&, s16); - /* 80A29500 */ void actor_front_check(fopAc_ac_c*); - /* 80A295D8 */ void _getOffset(cXyz const&, cXyz&); - /* 80A29FDC */ void adjustShapeAngle(); - - static u8 mEvtSeqList[12]; - static u8 mTargetTag[4]; - static u8 mTargetTagDist[4]; -}; - -struct daNpcKasiMich_Param_c { - /* 80A29FE0 */ ~daNpcKasiMich_Param_c(); - - static u8 const m[116]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 80A2972C */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150DE0 */ void getDstPos(cXyz, cXyz&); - /* 80A296CC */ ~daNpcF_Path_c(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A297F8 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A29774 */ ~daNpcF_ActorMngr_c(); - /* 80A297BC */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A29DF4 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A29E50 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A29D84 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A26384 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A263CC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A29F2C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A29EC0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -504,9 +191,6 @@ extern "C" void init__17Z2CreatureCitizenFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -521,10 +205,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -533,8 +214,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -962,25 +641,30 @@ SECTION_DATA static void* lit_5261[3] = { }; /* 80A2A654-80A2A674 -00001 0020+00 1/0 0/0 0/0 .data daNpcKasiMich_MethodTable */ -SECTION_DATA static void* daNpcKasiMich_MethodTable[8] = { - (void*)daNpcKasiMich_Create__FPv, - (void*)daNpcKasiMich_Delete__FPv, - (void*)daNpcKasiMich_Execute__FPv, - (void*)daNpcKasiMich_IsDelete__FPv, - (void*)daNpcKasiMich_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcKasiMich_MethodTable = { + (process_method_func)daNpcKasiMich_Create__FPv, + (process_method_func)daNpcKasiMich_Delete__FPv, + (process_method_func)daNpcKasiMich_Execute__FPv, + (process_method_func)daNpcKasiMich_IsDelete__FPv, + (process_method_func)daNpcKasiMich_Draw__FPv, }; /* 80A2A674-80A2A6A4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KASIMICH */ -SECTION_DATA extern void* g_profile_NPC_KASIMICH[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A30000, (void*)&g_fpcLf_Method, - (void*)0x0000146C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A60000, (void*)&daNpcKasiMich_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KASIMICH = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KASIMICH, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcKasiMich_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 422, // mPriority + &daNpcKasiMich_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A2A6A4-80A2A6EC 0003F0 0048+00 2/2 0/0 0/0 .data __vt__15daNpcKasiMich_c */ @@ -1102,7 +786,8 @@ asm daNpcKasiMich_c::daNpcKasiMich_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__8cM3dGCylFv.s" } @@ -1112,7 +797,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__8cM3dGAabFv.s" } @@ -2281,7 +1967,8 @@ static bool daNpcKasiMich_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__13daNpcF_Path_cFv.s" } @@ -2291,7 +1978,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__16daNpcF_SPCurve_cFv.s" } @@ -2301,7 +1989,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2311,7 +2000,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2321,7 +2011,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__15daNpcF_Lookat_cFv.s" } @@ -2331,14 +2022,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__5csXyzFv.s" } #pragma pop /* 80A29904-80A29908 003824 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2346,14 +2039,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__4cXyzFv.s" } #pragma pop /* 80A29944-80A29948 003864 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2361,7 +2056,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__8daNpcF_cFv.s" } @@ -2371,7 +2067,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__ct__8daNpcF_cFv.s" } @@ -2381,7 +2078,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__12dBgS_AcchCirFv.s" } @@ -2391,7 +2089,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__10dCcD_GSttsFv.s" } @@ -2401,7 +2100,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__12dBgS_ObjAcchFv.s" } @@ -2411,39 +2111,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A29F08-80A29F10 003E28 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80A29F10-80A29F14 003E30 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A29F14-80A29F1C 003E34 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80A29F1C-80A29F24 003E3C 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80A29F24-80A29F28 003E44 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 80A29F28-80A29F2C 003E48 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -2451,7 +2158,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kasi_mich/d_a_npc_kasi_mich/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.cpp b/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.cpp index 3c7015b907..9cea02fd37 100644 --- a/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.cpp +++ b/rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.cpp @@ -1,32 +1,26 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kdk -// +/** + * @file d_a_npc_kdk.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kdk/d_a_npc_kdk.h" #include "dol2asm.h" -// -// Forward References: -// - -extern "C" extern void* g_profile_NPC_KDK[12]; - -// -// External References: -// - -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; - -// -// Declarations: -// - /* ############################################################################################## */ /* 80A2A8E0-80A2A910 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KDK */ -SECTION_DATA extern void* g_profile_NPC_KDK[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, (void*)0x02420000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01400000, (void*)NULL, (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KDK = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KDK, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcKdk_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 320, // mPriority + NULL, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; diff --git a/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.cpp b/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.cpp index c3e412821d..c944668fef 100644 --- a/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.cpp +++ b/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.cpp @@ -1,382 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kkri -// +/** + * @file d_a_npc_kkri.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80552C04 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Kkri_c { - /* 8054F3AC */ ~daNpc_Kkri_c(); - /* 8054F4F8 */ void create(); - /* 8054F7D0 */ void CreateHeap(); - /* 8054FC10 */ void Delete(); - /* 8054FC44 */ void Execute(); - /* 8054FC64 */ void Draw(); - /* 8054FD00 */ void createHeapCallBack(fopAc_ac_c*); - /* 8054FD20 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8054FD78 */ void srchYm(void*, void*); - /* 8054FE20 */ void getType(); - /* 8054FE58 */ void isDelete(); - /* 8054FE8C */ void reset(); - /* 8054FFEC */ void checkChangeEvt(); - /* 805500A0 */ void setParam(); - /* 80550270 */ void setAfterTalkMotion(); - /* 8055032C */ void srchActors(); - /* 80550398 */ void evtTalk(); - /* 80550438 */ void evtCutProc(); - /* 80550500 */ void action(); - /* 805505F8 */ void beforeMove(); - /* 805506BC */ void setAttnPos(); - /* 80550ADC */ void setCollision(); - /* 80550CA0 */ bool drawDbgInfo(); - /* 80550CA8 */ void selectAction(); - /* 80550D44 */ void chkAction(int (daNpc_Kkri_c::*)(void*)); - /* 80550D70 */ void setAction(int (daNpc_Kkri_c::*)(void*)); - /* 80550E18 */ void cutConversationAboutSoup(int); - /* 80550F70 */ void cutYmLook(int); - /* 80551084 */ void sleep(); - /* 805512E0 */ void wait(void*); - /* 80551538 */ void sitWait1(void*); - /* 80551A4C */ void fearWait(void*); - /* 80551DA4 */ void talk(void*); - /* 80553304 */ daNpc_Kkri_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 805533E4 */ s32 getEyeballMaterialNo(); - /* 805533EC */ s32 getHeadJointNo(); - /* 805533F4 */ s32 getNeckJointNo(); - /* 805533FC */ bool getBackboneJointNo(); - /* 80553404 */ void checkChangeJoint(int); - /* 80553414 */ void checkRemoveJoint(int); - - static void* mCutNameList[3]; - static u8 mCutList[36]; -}; - -struct daNpc_Kkri_Param_c { - /* 80553424 */ ~daNpc_Kkri_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80552564 */ ~csXyz(); - /* 80552B00 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80552528 */ ~cXyz(); - /* 80552C00 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 805521A0 */ ~daNpcT_c(); - /* 805526FC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 805530F4 */ void ctrlSubFaceMotion(int); - /* 805530F8 */ s32 getFootLJointNo(); - /* 80553100 */ s32 getFootRJointNo(); - /* 80553108 */ bool getEyeballLMaterialNo(); - /* 80553110 */ bool getEyeballRMaterialNo(); - /* 80553118 */ void afterJntAnm(int); - /* 8055311C */ bool evtEndProc(); - /* 80553124 */ void afterMoved(); - /* 80553128 */ bool chkXYItems(); - /* 80553130 */ void decTmr(); - /* 80553148 */ void drawOtherMdl(); - /* 8055314C */ void drawGhost(); - /* 80553150 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80553158 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80553160 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80553190 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 805531C0 */ void changeAnm(int*, int*); - /* 805531C4 */ void changeBck(int*, int*); - /* 805531C8 */ void changeBtp(int*, int*); - /* 805531CC */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 805525E8 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80552B04 */ ~daNpcT_JntAnm_c(); - /* 80552DD0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80552EEC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 805525A0 */ ~daNpcT_ActorMngr_c(); - /* 80552630 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_danBit_c { - /* 80034BE8 */ void isSwitch(int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80552CBC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80552D18 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80552C4C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8055266C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 805526B4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80552158 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 8054FAFC */ ~J3DTexNoAnm(); - /* 8054FB44 */ J3DTexNoAnm(); - /* 80552128 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8054FB68 */ ~J3DTexMtxAnm(); - /* 8054FBA4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8054FA54 */ ~J3DTevKColorAnm(); - /* 8054FA90 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8054FAA8 */ ~J3DTevColorAnm(); - /* 8054FAE4 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8054FBBC */ ~J3DMatColorAnm(); - /* 8054FBF8 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80552D88 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -494,7 +123,6 @@ extern "C" u8 mCutList__12daNpc_Kkri_c[36]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); @@ -604,10 +232,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -626,8 +250,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -638,10 +260,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; extern "C" void __register_global_object(); @@ -944,25 +563,30 @@ SECTION_DATA static void* lit_4925[3] = { #pragma pop /* 80553D10-80553D30 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kkri_MethodTable */ -SECTION_DATA static void* daNpc_Kkri_MethodTable[8] = { - (void*)daNpc_Kkri_Create__FPv, - (void*)daNpc_Kkri_Delete__FPv, - (void*)daNpc_Kkri_Execute__FPv, - (void*)daNpc_Kkri_IsDelete__FPv, - (void*)daNpc_Kkri_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kkri_MethodTable = { + (process_method_func)daNpc_Kkri_Create__FPv, + (process_method_func)daNpc_Kkri_Delete__FPv, + (process_method_func)daNpc_Kkri_Execute__FPv, + (process_method_func)daNpc_Kkri_IsDelete__FPv, + (process_method_func)daNpc_Kkri_Draw__FPv, }; /* 80553D30-80553D60 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KKRI */ -SECTION_DATA extern void* g_profile_NPC_KKRI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02590000, (void*)&g_fpcLf_Method, - (void*)0x00000FDC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x015A0000, (void*)&daNpc_Kkri_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KKRI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KKRI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kkri_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 346, // mPriority + &daNpc_Kkri_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80553D60-80553D6C 000768 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1229,7 +853,8 @@ asm void daNpc_Kkri_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__15J3DTevKColorAnmFv.s" } @@ -1239,7 +864,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__15J3DTevKColorAnmFv.s" } @@ -1249,7 +875,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__14J3DTevColorAnmFv.s" } @@ -1259,7 +886,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__14J3DTevColorAnmFv.s" } @@ -1269,7 +897,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__11J3DTexNoAnmFv.s" } @@ -1279,7 +908,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__11J3DTexNoAnmFv.s" } @@ -1289,7 +919,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__12J3DTexMtxAnmFv.s" } @@ -1299,7 +930,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__12J3DTexMtxAnmFv.s" } @@ -1309,7 +941,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__14J3DMatColorAnmFv.s" } @@ -1319,7 +952,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__14J3DMatColorAnmFv.s" } @@ -1809,7 +1443,8 @@ static bool daNpc_Kkri_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/calc__11J3DTexNoAnmCFPUs.s" } @@ -1819,7 +1454,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__10cCcD_GSttsFv.s" } @@ -1829,7 +1465,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__8daNpcT_cFv.s" } @@ -1839,7 +1476,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__4cXyzFv.s" } @@ -1849,7 +1487,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__5csXyzFv.s" } @@ -1859,7 +1498,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1869,7 +1509,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__13daNpcT_Path_cFv.s" } @@ -1879,7 +1520,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1889,7 +1531,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__8cM3dGCylFv.s" } @@ -1899,7 +1542,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__8cM3dGAabFv.s" } @@ -1911,18 +1555,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/func_805526FC.s" } #pragma pop /* 80552B00-80552B04 003840 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1930,14 +1576,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80552C00-80552C04 003940 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1945,7 +1593,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1955,7 +1604,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__12dBgS_AcchCirFv.s" } @@ -1965,7 +1615,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__10dCcD_GSttsFv.s" } @@ -1975,7 +1626,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__12dBgS_ObjAcchFv.s" } @@ -1985,7 +1637,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/__dt__12J3DFrameCtrlFv.s" } @@ -1995,8 +1648,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2006,14 +1660,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 805530F4-805530F8 003E34 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2029,13 +1685,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80553108-80553110 003E48 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80553110-80553118 003E50 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2045,7 +1703,8 @@ void daNpcT_c::afterJntAnm(int param_0) { } /* 8055311C-80553124 003E5C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2055,7 +1714,8 @@ void daNpcT_c::afterMoved() { } /* 80553128-80553130 003E68 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2063,30 +1723,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80553148-8055314C 003E88 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 8055314C-80553150 003E8C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80553150-80553158 003E90 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80553158-80553160 003E98 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2095,7 +1760,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2106,29 +1772,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kkri/d_a_npc_kkri/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 805531C0-805531C4 003F00 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 805531C4-805531C8 003F04 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 805531C8-805531CC 003F08 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 805531CC-805531D0 003F0C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.cpp b/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.cpp index a786e81c3c..d2718c0655 100644 --- a/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.cpp +++ b/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.cpp @@ -1,649 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kn -// +/** + * @file d_a_npc_kn.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kn/d_a_npc_kn.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80A3B724 */ ~csXyz(); - /* 80A3C35C */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266B84 */ void operator*(f32) const; - /* 80266C18 */ void operator/(f32) const; - /* 80A3B760 */ ~cXyz(); - /* 80A3C45C */ cXyz(); - - static u8 BaseX[12]; -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct J3DModel {}; - -struct mDoExt_invisibleModel { - /* 8000E53C */ void create(J3DModel*, u8); - /* 8000E7C0 */ void entryDL(cXyz*); -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTexPattern {}; - -struct J3DAnmTevRegKey {}; - -struct J3DAnmColor {}; - -struct J3DMaterialTable { - /* 8032F64C */ void removeMatColorAnimator(J3DAnmColor*); - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_bpkAnm { - /* 8000D518 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); - /* 8000D9CC */ void entry(J3DModelData*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct daPy_py_c { - /* 8015F3FC */ void getAttentionOffsetY(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800842C0 */ void ChkAtHit(); - /* 80084460 */ void ChkTgHit(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 801458C0 */ void play(u16, int*, f32*); - /* 80A3C4A8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct J3DAnmTransformKey {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_evtData_c {}; - -struct _GXColorS10 {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A3C62C */ ~J3DFrameCtrl(); -}; - -struct J3DJoint {}; - -struct daNpc_Kn_c { - struct daNpc_Kn_prtclMngr_c { - /* 80A2AF98 */ ~daNpc_Kn_prtclMngr_c(); - /* 80A3C1C4 */ daNpc_Kn_prtclMngr_c(); - }; - - /* 80A2AA0C */ ~daNpc_Kn_c(); - /* 80A2AFD4 */ void create(); - /* 80A2B278 */ void CreateHeap(); - /* 80A2B620 */ void Delete(); - /* 80A2B654 */ void Execute(); - /* 80A2B6B0 */ void Draw(); - /* 80A2B764 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A2B784 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A2B7DC */ void getType(); - /* 80A2B844 */ void getDivideNo(); - /* 80A2B850 */ void getFlowNodeNo(); - /* 80A2B86C */ void getPath(); - /* 80A2B878 */ void isDelete(); - /* 80A2B91C */ void resetCol(); - /* 80A2B9E0 */ void reset(); - /* 80A2BC5C */ void resetType(); - /* 80A2BD30 */ void setParam(); - /* 80A2BFB0 */ void setParamTeach03(); - /* 80A2C044 */ void setParamTeach04(); - /* 80A2C0FC */ void setParamTeach05(); - /* 80A2C190 */ void setParamTeach06(); - /* 80A2C1B0 */ void setParamTeach07(); - /* 80A2C1D0 */ void setAfterTalkMotion(); - /* 80A2C230 */ void srchActors(); - /* 80A2C234 */ void evtTalk(); - /* 80A2C318 */ void evtCutProc(); - /* 80A2C3FC */ void action(); - /* 80A2C484 */ void beforeMove(); - /* 80A2C4FC */ void afterMoved(); - /* 80A2C56C */ void setAttnPos(); - /* 80A2C77C */ void setCollision(); - /* 80A2C984 */ void setCollisionSword(); - /* 80A2CB30 */ void checkCollisionSword(); - /* 80A2CBEC */ void setCollisionTeach03(); - /* 80A2CC24 */ void setCollisionTeach04(); - /* 80A2CD00 */ void setCollisionTeach05(); - /* 80A2CD38 */ void setCollisionTeach06(); - /* 80A2CD58 */ void setCollisionTeach07(); - /* 80A2CD78 */ bool drawDbgInfo(); - /* 80A2CD80 */ void drawOtherMdl(); - /* 80A2CF9C */ void drawGhost(); - /* 80A2D060 */ void afterSetMotionAnm(int, int, f32, int); - /* 80A2D198 */ void selectAction(); - /* 80A2D3A4 */ void teach03_selectAction(); - /* 80A2D3FC */ void teach04_selectAction(); - /* 80A2D4A0 */ void teach05_selectAction(); - /* 80A2D4F8 */ void teach06_selectAction(); - /* 80A2D600 */ void teach07_selectAction(); - /* 80A2D708 */ void chkAction(int (daNpc_Kn_c::*)(void*)); - /* 80A2D734 */ void setAction(int (daNpc_Kn_c::*)(void*)); - /* 80A2D7DC */ void wait(void*); - /* 80A2D9C4 */ void talk(void*); - /* 80A2DB94 */ void test(void*); - /* 80A2DCB4 */ void setSceneChange(int); - /* 80A2DD70 */ void ECut_noneEquipChangeTalk(int); - /* 80A2DF84 */ void ECut_noneEquipChangeTalkStand(int); - /* 80A2E26C */ void ECut_largeDamageTalk(int); - /* 80A2E528 */ void teach02_start(void*); - /* 80A2E664 */ void teach03_attackWait(void*); - /* 80A2EC04 */ void teach04_attackWait(void*); - /* 80A2EF8C */ void teach04_headBreakWait(void*); - /* 80A2F24C */ void teach04_finishWait(void*); - /* 80A2F600 */ void teach05_surpriseAttackWait(void*); - /* 80A2FC80 */ void teach06_superJumpWait(void*); - /* 80A30398 */ void teach06_divideMove(void*); - /* 80A305A8 */ void teach06_waitDivide(void*); - /* 80A30708 */ void teach06_superJumpWaitDivide(void*); - /* 80A30D44 */ void teach06_superJumpedDivide(void*); - /* 80A30EDC */ void teach06_warpDelete(void*); - /* 80A31028 */ void teach07_superTurnAttackWait(void*); - /* 80A315D0 */ void teach07_divideMove(void*); - /* 80A317F8 */ void teach07_waitDivide(void*); - /* 80A31958 */ void teach07_superTurnAttackWaitDivide(void*); - /* 80A31E24 */ void teach07_superTurnAttackedDivide(void*); - /* 80A31FBC */ void teach07_warpDelete(void*); - /* 80A3203C */ void ECut_secondEncount(int); - /* 80A324C4 */ void ECut_thirdSkillExplain(int); - /* 80A32D30 */ void ECut_thirdSkillGet(int); - /* 80A33358 */ void ECut_fourthSkillExplain(int); - /* 80A33D80 */ void ECut_fourthSkillGet(int); - /* 80A343A8 */ void ECut_fifthSkillExplain(int); - /* 80A34DB8 */ void ECut_fifthSkillGet(int); - /* 80A353E0 */ void ECut_sixthSkillExplain(int); - /* 80A35D88 */ void ECut_sixthSkillGet(int); - /* 80A363C0 */ void ECut_seventhSkillExplain(int); - /* 80A36C20 */ void ECut_seventhSkillGet(int); - /* 80A372D0 */ void setPrtcl(); - /* 80A37430 */ void setSlipPrtcl(); - /* 80A37558 */ void setLandingPrtcl(); - /* 80A37598 */ void calcMagicBallPos(); - /* 80A37670 */ void setSwordChargePtcl(); - /* 80A37B08 */ void calcSlip(); - /* 80A37D20 */ void calcSwordAttackMove(int); - /* 80A3805C */ void setSe(); - /* 80A38520 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80A38550 */ void getTrnsfrmAnmP(char const*, int); - /* 80A3858C */ void getTrnsfrmKeyAnmP(char const*, int); - /* 80A385C8 */ void getTexPtrnAnmP(char const*, int); - /* 80A38604 */ void getTexSRTKeyAnmP(char const*, int); - /* 80A38640 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80A38684 */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80A3877C */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80A387BC */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80A387FC */ void loadRes(s8 const*, char const**); - /* 80A388B0 */ void deleteRes(s8 const*, char const**); - /* 80A38930 */ void execute(); - /* 80A38BB8 */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80A38FAC */ void setEnvTevColor(); - /* 80A39008 */ void setRoomNo(); - /* 80A3904C */ void checkEndAnm(f32); - /* 80A390F8 */ void checkEndAnm(J3DFrameCtrl*, f32); - /* 80A3917C */ void playAllAnm(); - /* 80A3949C */ void ctrlBtk(); - /* 80A39558 */ void setMtx(); - /* 80A395DC */ void ctrlFaceMotion(); - /* 80A39684 */ void ctrlMotion(); - /* 80A39738 */ void ctrlMsgAnm(int*, int*, fopAc_ac_c*, int); - /* 80A3989C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A39BBC */ void evtProc(); - /* 80A39DBC */ void setFootPos(); - /* 80A39F84 */ void setFootPrtcl(cXyz*, f32); - /* 80A3A254 */ bool checkCullDraw(); - /* 80A3A25C */ void twilight(); - /* 80A3A2A8 */ void evtOrder(); - /* 80A3A404 */ void evtChange(); - /* 80A3A504 */ void clrParam(); - /* 80A3A568 */ void setFaceMotionAnm(int, bool); - /* 80A3A7C0 */ void setMotionAnm(int, f32, int); - /* 80A3AA58 */ void setPos(cXyz); - /* 80A3AAF0 */ void setAngle(s16); - /* 80A3AB18 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 80A3AC24 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 80A3ACD4 */ void chkPointInArea(cXyz, cXyz, cXyz, s16); - /* 80A3AD50 */ void chkFindPlayer(int, s16); - /* 80A3AF64 */ void srchPlayerActor(); - /* 80A3B000 */ void getAttnPos(fopAc_ac_c*); - /* 80A3B074 */ void turn(s16, int, int); - /* 80A3B220 */ void step(s16, int, int, int, int); - /* 80A3B3E8 */ void initTalk(int, fopAc_ac_c**); - /* 80A3B448 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80A3B5EC */ void setHitodamaPrtcl(); - /* 80A3B708 */ void decTmr(); - /* 80A3B720 */ void afterJntAnm(int); - /* 80A3B79C */ bool evtEndProc(); - /* 80A3B7A4 */ bool checkChangeEvt(); - /* 80A3B7AC */ s32 getFootRJointNo(); - /* 80A3B7B4 */ s32 getFootLJointNo(); - /* 80A3B7BC */ bool chkXYItems(); - /* 80A3B7C4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A3B7CC */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A3B7FC */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A3B82C */ daNpc_Kn_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A3BD14 */ bool getEyeballMaterialNo(); - /* 80A3BD1C */ bool getEyeballLMaterialNo(); - /* 80A3BD24 */ bool getEyeballRMaterialNo(); - /* 80A3C998 */ void setParamTeach01(); - /* 80A3CB14 */ void setCollisionTeach01(); - /* 80A3CBFC */ void teach01_selectAction(); - /* 80A3CCC0 */ void teach01_start(void*); - /* 80A3CDFC */ void teach01_attackWait(void*); - /* 80A3CF78 */ void teach01_swordAttackWait(void*); - /* 80A3D32C */ void teach01_swordFinishWait(void*); - /* 80A3D6D8 */ void ctrlWarp(); - /* 80A3DCEC */ void ECut_firstEncount(int); - /* 80A3DEC4 */ void ECut_attackFailed(int); - /* 80A3E550 */ void ECut_firstSkillGet(int); - /* 80A3EB84 */ void setParamTeach02(); - /* 80A3EE38 */ void setCollisionTeach02(); - /* 80A3EF1C */ void teach02_selectAction(); - /* 80A3EFE0 */ void teach02_shieldBashWait(void*); - /* 80A3F358 */ void teach02_finishWait(void*); - /* 80A3F5A4 */ void teach02_shieldReflectWait(void*); - /* 80A3F99C */ void ECut_secondSkillExplain(int); - /* 80A3FFB4 */ void ECut_reflectExplain(int); - /* 80A403B8 */ void ECut_secondSkillGet(int); - - static u8 const mCcDObjData[48]; - static u8 mCcDCyl[68]; - static u8 mCcDSph[64]; - static void* mCutNameList[21]; - static u8 mCutList[252]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpc_Kn_Param_c { - /* 80A3C124 */ ~daNpc_Kn_Param_c(); - - static u8 const m[180]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80A3C17C */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A3C360 */ ~daNpcT_JntAnm_c(); - /* 80A3C674 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A3C790 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A3C460 */ ~daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A3C4F0 */ ~dBgS_AcchCir(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dBgS { - /* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&); - /* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&); - /* 80075100 */ void GetRoomId(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); - /* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - csXyz const*, cXyz const*, s8, f32, f32); -}; - -struct dPaPoT_c { - /* 8005115C */ void setEffectTwo(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*, - cXyz const*, cXyz const*, csXyz const*, cXyz const*, s8, f32, - f32); -}; - -struct dMsgObject_c { - /* 8023819C */ void getActor(); - /* 802382C8 */ void offMsgSendControl(); - /* 802382F4 */ void isMsgSendControl(); - /* 802383A4 */ void isMouthCheck(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); - /* 8024A424 */ void checkEventRender(int*, int*, int*, int*); - /* 8024A528 */ void getEventId(int*); - /* 8024A538 */ void getMsgNo(); - /* 8024A548 */ void getMsg(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); - /* 800432EC */ void convPId(unsigned int); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80046800 */ void setObjectArchive(char*); - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); - - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 80A2AECC */ ~dCcD_Sph(); - /* 80A3C1C8 */ dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80083830 */ void Move(); - /* 80A3C560 */ ~dCcD_GStts(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A3C5BC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dAttention_c { - /* 800737E4 */ void LockonTruth(); - /* 80A3AF50 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cSGlobe { - /* 80271880 */ cSGlobe(cXyz const&); -}; - -struct cSAngle { - /* 80270F68 */ cSAngle(cSAngle const&); - /* 80270F98 */ cSAngle(s16); - /* 802710E8 */ void Inv() const; - /* 80271228 */ void operator-(s16) const; -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 80A3C24C */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A3C294 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A3C2DC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A384D8 */ ~cCcD_GStts(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct _GXTexObj {}; - -struct Z2SeqMgr { - /* 802AF010 */ void bgmStart(u32, u32, s32); - /* 802AF408 */ void bgmStop(u32, s32); - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DLightObj { - /* 80A3C324 */ J3DLightObj(); -}; - -struct J3DLightInfo { - /* 803256C4 */ void operator=(J3DLightInfo const&); -}; - // // Forward References: // @@ -880,7 +242,6 @@ extern "C" u8 mFindCount__10daNpc_Kn_c[4]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_ZXYrotS__FPA4_fsss(); extern "C" void mDoMtx_ZXYrotM__FPA4_fsss(); extern "C" void mDoMtx_YrotS__FPA4_fs(); @@ -1071,14 +432,6 @@ extern "C" void removeMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXConcat(); -extern "C" void PSMTXInverse(); -extern "C" void PSMTXMultVec(); -extern "C" void PSMTXMultVecSR(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -1100,12 +453,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void strlen(); -extern "C" extern u8 const j3dDefaultLightInfo[52]; extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; @@ -1115,17 +463,12 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; extern "C" u8 BaseX__4cXyz[12]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -3755,25 +3098,30 @@ SECTION_DATA static void* lit_14591[31] = { }; /* 80A43148-80A43168 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kn_MethodTable */ -SECTION_DATA static void* daNpc_Kn_MethodTable[8] = { - (void*)daNpc_Kn_Create__FPv, - (void*)daNpc_Kn_Delete__FPv, - (void*)daNpc_Kn_Execute__FPv, - (void*)daNpc_Kn_IsDelete__FPv, - (void*)daNpc_Kn_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kn_MethodTable = { + (process_method_func)daNpc_Kn_Create__FPv, + (process_method_func)daNpc_Kn_Delete__FPv, + (process_method_func)daNpc_Kn_Execute__FPv, + (process_method_func)daNpc_Kn_IsDelete__FPv, + (process_method_func)daNpc_Kn_Draw__FPv, }; /* 80A43168-80A43198 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KN */ -SECTION_DATA extern void* g_profile_NPC_KN[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x025A0000, (void*)&g_fpcLf_Method, - (void*)0x00001758, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x015B0000, (void*)&daNpc_Kn_MethodTable, - (void*)0x00044107, (void*)0x020E0000, +extern actor_process_profile_definition g_profile_NPC_KN = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KN, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kn_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 347, // mPriority + &daNpc_Kn_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_ENEMY_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A43198-80A431A4 002464 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */ @@ -3910,7 +3258,8 @@ asm daNpc_Kn_c::~daNpc_Kn_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::~dCcD_Sph() { +// asm dCcD_Sph::~dCcD_Sph() { +extern "C" asm void __dt__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__8dCcD_SphFv.s" } @@ -5574,7 +4923,8 @@ static bool daNpc_Kn_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__10cCcD_GSttsFv.s" } @@ -6002,7 +5352,8 @@ asm void daNpc_Kn_c::chkFindPlayer(int param_0, s16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/getDistTable__12dAttention_cFi.s" } @@ -6098,7 +5449,8 @@ void daNpc_Kn_c::afterJntAnm(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__5csXyzFv.s" } @@ -6108,7 +5460,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__4cXyzFv.s" } @@ -6294,7 +5647,8 @@ static asm void func_80A3C174() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__13daNpcT_Path_cFv.s" } @@ -6310,7 +5664,8 @@ daNpc_Kn_c::daNpc_Kn_prtclMngr_c::daNpc_Kn_prtclMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::dCcD_Sph() { +// asm dCcD_Sph::dCcD_Sph() { +extern "C" asm void __ct__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__ct__8dCcD_SphFv.s" } @@ -6320,7 +5675,8 @@ asm dCcD_Sph::dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__8cM3dGSphFv.s" } @@ -6330,7 +5686,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__8cM3dGCylFv.s" } @@ -6340,7 +5697,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__8cM3dGAabFv.s" } @@ -6350,14 +5708,16 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DLightObj::J3DLightObj() { +// asm J3DLightObj::J3DLightObj() { +extern "C" asm void __ct__11J3DLightObjFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__ct__11J3DLightObjFv.s" } #pragma pop /* 80A3C35C-80A3C360 011A3C 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -6365,14 +5725,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A3C45C-80A3C460 011B3C 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -6380,7 +5742,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -6390,7 +5753,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -6400,7 +5764,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__12dBgS_AcchCirFv.s" } @@ -6410,7 +5775,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__10dCcD_GSttsFv.s" } @@ -6420,7 +5786,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__12dBgS_ObjAcchFv.s" } @@ -6430,7 +5797,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/__dt__12J3DFrameCtrlFv.s" } @@ -6440,8 +5808,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -6451,7 +5820,8 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kn/d_a_npc_kn/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } diff --git a/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.cpp b/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.cpp index afd0d2d7c2..4b72a9d542 100644 --- a/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.cpp +++ b/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.cpp @@ -1,291 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_knj -// +/** + * @file d_a_npc_knj.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_knj/d_a_npc_knj.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A4511C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_Knj_c { - /* 80A4356C */ ~daNpc_Knj_c(); - /* 80A43608 */ void create(); - /* 80A43848 */ void CreateHeap(); - /* 80A439A0 */ void Delete(); - /* 80A439D4 */ void Execute(); - /* 80A439F4 */ void Draw(); - /* 80A43A88 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A43AA8 */ void getType(); - /* 80A43B1C */ void getFlowNodeNo(); - /* 80A43B38 */ bool isDelete(); - /* 80A43B40 */ void reset(); - /* 80A43C64 */ void setParam(); - /* 80A43D58 */ void srchActors(); - /* 80A43D5C */ void evtTalk(); - /* 80A43E5C */ void evtCutProc(); - /* 80A43F24 */ void action(); - /* 80A43FAC */ void beforeMove(); - /* 80A44024 */ void setAttnPos(); - /* 80A44080 */ bool drawDbgInfo(); - /* 80A44088 */ void afterSetMotionAnm(int, int, f32, int); - /* 80A44264 */ void drawGhost(); - /* 80A442D0 */ void selectAction(); - /* 80A44318 */ void chkAction(int (daNpc_Knj_c::*)(void*)); - /* 80A44344 */ void setAction(int (daNpc_Knj_c::*)(void*)); - /* 80A443EC */ void wait(void*); - /* 80A44598 */ void talk(void*); - /* 80A45460 */ daNpc_Knj_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Knj_Param_c { - /* 80A454A4 */ ~daNpc_Knj_Param_c(); - - static u8 const m[140]; -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80A44B54 */ ~cXyz(); - /* 80A450D0 */ cXyz(); -}; - -struct daNpcT_c { - /* 801480D0 */ void getTexPtrnAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 801482F8 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80A447CC */ ~daNpcT_c(); - /* 80A44BCC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A452E8 */ bool getEyeballMaterialNo(); - /* 80A452F0 */ void ctrlSubFaceMotion(int); - /* 80A452F4 */ bool checkChangeJoint(int); - /* 80A452FC */ bool checkRemoveJoint(int); - /* 80A45304 */ s32 getBackboneJointNo(); - /* 80A4530C */ s32 getNeckJointNo(); - /* 80A45314 */ s32 getHeadJointNo(); - /* 80A4531C */ s32 getFootLJointNo(); - /* 80A45324 */ s32 getFootRJointNo(); - /* 80A4532C */ bool getEyeballLMaterialNo(); - /* 80A45334 */ bool getEyeballRMaterialNo(); - /* 80A4533C */ void afterJntAnm(int); - /* 80A45340 */ bool checkChangeEvt(); - /* 80A45348 */ bool evtEndProc(); - /* 80A45350 */ void setAfterTalkMotion(); - /* 80A45354 */ void afterMoved(); - /* 80A45358 */ void setCollision(); - /* 80A4535C */ bool chkXYItems(); - /* 80A45364 */ void decTmr(); - /* 80A4537C */ void drawOtherMdl(); - /* 80A45380 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A45388 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A453B8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A453E8 */ void changeAnm(int*, int*); - /* 80A453EC */ void changeBck(int*, int*); - /* 80A453F0 */ void changeBtp(int*, int*); - /* 80A453F4 */ void changeBtk(int*, int*); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80A44FD4 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80A450D4 */ ~daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A451D4 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A45230 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A45164 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A44B90 */ ~csXyz(); - /* 80A44FD0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcD_GStts { - /* 80A44784 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A452A0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -378,7 +98,6 @@ extern "C" u8 mCutList__11daNpc_Knj_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void entryDL__16mDoExt_McaMorfSOFv(); @@ -469,13 +188,9 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_26(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" void __register_global_object(); // @@ -626,25 +341,30 @@ SECTION_DATA static void* lit_4468[3] = { }; /* 80A456F0-80A45710 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Knj_MethodTable */ -SECTION_DATA static void* daNpc_Knj_MethodTable[8] = { - (void*)daNpc_Knj_Create__FPv, - (void*)daNpc_Knj_Delete__FPv, - (void*)daNpc_Knj_Execute__FPv, - (void*)daNpc_Knj_IsDelete__FPv, - (void*)daNpc_Knj_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Knj_MethodTable = { + (process_method_func)daNpc_Knj_Create__FPv, + (process_method_func)daNpc_Knj_Delete__FPv, + (process_method_func)daNpc_Knj_Execute__FPv, + (process_method_func)daNpc_Knj_IsDelete__FPv, + (process_method_func)daNpc_Knj_Draw__FPv, }; /* 80A45710-80A45740 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KNJ */ -SECTION_DATA extern void* g_profile_NPC_KNJ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x025C0000, (void*)&g_fpcLf_Method, - (void*)0x00000E68, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x015D0000, (void*)&daNpc_Knj_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_KNJ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KNJ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Knj_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 349, // mPriority + &daNpc_Knj_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A45740-80A4574C 000170 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1118,7 +838,8 @@ static bool daNpc_Knj_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__10cCcD_GSttsFv.s" } @@ -1128,7 +849,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__8daNpcT_cFv.s" } @@ -1138,7 +860,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__4cXyzFv.s" } @@ -1148,7 +871,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__5csXyzFv.s" } @@ -1160,18 +884,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/func_80A44BCC.s" } #pragma pop /* 80A44FD0-80A44FD4 001B50 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1179,14 +905,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A450D0-80A450D4 001C50 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1194,7 +922,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1204,7 +933,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1214,7 +944,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__12dBgS_AcchCirFv.s" } @@ -1224,7 +955,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__10dCcD_GSttsFv.s" } @@ -1234,7 +966,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__12dBgS_ObjAcchFv.s" } @@ -1244,7 +977,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/__dt__12J3DFrameCtrlFv.s" } @@ -1257,7 +991,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80A452F0-80A452F4 001E70 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1298,13 +1033,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A4532C-80A45334 001EAC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A45334-80A4533C 001EB4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1319,7 +1056,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80A45348-80A45350 001EC8 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1339,7 +1077,8 @@ void daNpcT_c::setCollision() { } /* 80A4535C-80A45364 001EDC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1347,19 +1086,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A4537C-80A45380 001EFC 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A45380-80A45388 001F00 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1368,7 +1110,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1379,29 +1122,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_knj/d_a_npc_knj/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A453E8-80A453EC 001F68 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A453EC-80A453F0 001F6C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A453F0-80A453F4 001F70 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A453F4-80A453F8 001F74 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.cpp b/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.cpp index 186fcd29f1..8ef4ad2875 100644 --- a/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.cpp +++ b/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.cpp @@ -1,443 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kolin -// +/** + * @file d_a_npc_kolin.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 8055953C */ ~cXyz(); - /* 80559C14 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 8055A540 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80559C18 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Kolin_c { - /* 80553FEC */ ~daNpc_Kolin_c(); - /* 80554138 */ void create(); - /* 80554414 */ void CreateHeap(); - /* 80554930 */ void Delete(); - /* 80554964 */ void Execute(); - /* 80554984 */ void Draw(); - /* 80554A18 */ void createHeapCallBack(fopAc_ac_c*); - /* 80554A38 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80554A90 */ void getType(); - /* 80554B30 */ void isDelete(); - /* 80554CB0 */ void reset(); - /* 80554EBC */ void afterJntAnm(int); - /* 80554F48 */ void setParam(); - /* 80555118 */ void checkChangeEvt(); - /* 8055523C */ void setAfterTalkMotion(); - /* 805552DC */ void srchActors(); - /* 80555448 */ void evtTalk(); - /* 805554E8 */ void evtCutProc(); - /* 805555B0 */ void action(); - /* 8055574C */ void beforeMove(); - /* 80555810 */ void setAttnPos(); - /* 80555B48 */ void setCollision(); - /* 80555CE4 */ bool drawDbgInfo(); - /* 80555CEC */ void drawOtherMdl(); - /* 80555DC4 */ void changeAnm(int*, int*); - /* 80555DEC */ void changeBck(int*, int*); - /* 80555E38 */ void selectAction(); - /* 80555F28 */ void chkAction(int (daNpc_Kolin_c::*)(void*)); - /* 80555F54 */ void setAction(int (daNpc_Kolin_c::*)(void*)); - /* 80555FFC */ void calcFollowSpeedAndAngle(fopAc_ac_c*, int, int); - /* 805563BC */ void followPlayer(int); - /* 805567AC */ void lookup(u8); - /* 805568AC */ void cutNoRide(int); - /* 80556A04 */ void cutHail(int); - /* 80556DB4 */ void cutGiveMeWoodSwd(int); - /* 80557054 */ void cutGetWoodSwd(int); - /* 805576C4 */ void cutConversationAboutLoopHole(int); - /* 805579DC */ void cutCacaricoConversation(int); - /* 80557BD4 */ void cutConversationAboutDeathMt(int); - /* 80557C6C */ void cutConversationAboutGoron(int); - /* 80557D04 */ void cutClothTry(int); - /* 80557E38 */ void cutThankYou(int); - /* 80557ED8 */ void wait(void*); - /* 80558698 */ void timidWalk(void*); - /* 80558AF8 */ void follow(void*); - /* 80558C4C */ void clothWait(void*); - /* 80558E90 */ void talk(void*); - /* 8055A3B8 */ daNpc_Kolin_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8055A498 */ s32 getEyeballMaterialNo(); - /* 8055A4A0 */ s32 getHeadJointNo(); - /* 8055A4A8 */ s32 getNeckJointNo(); - /* 8055A4B0 */ bool getBackboneJointNo(); - /* 8055A4B8 */ void checkChangeJoint(int); - /* 8055A4C8 */ void checkRemoveJoint(int); - /* 8055A4D8 */ s32 getFootLJointNo(); - /* 8055A4E0 */ s32 getFootRJointNo(); - - static void* mCutNameList[11]; - static u8 mCutList[132]; -}; - -struct daNpc_Kolin_Param_c { - /* 8055A4E8 */ ~daNpc_Kolin_Param_c(); - - static u8 const m[160]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80559578 */ ~csXyz(); - /* 80559B14 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 805591B4 */ ~daNpcT_c(); - /* 80559710 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8055A108 */ void ctrlSubFaceMotion(int); - /* 8055A10C */ bool getEyeballLMaterialNo(); - /* 8055A114 */ bool getEyeballRMaterialNo(); - /* 8055A11C */ bool evtEndProc(); - /* 8055A124 */ void afterMoved(); - /* 8055A128 */ bool chkXYItems(); - /* 8055A130 */ void decTmr(); - /* 8055A148 */ void drawGhost(); - /* 8055A14C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8055A154 */ bool afterSetMotionAnm(int, int, f32, int); - /* 8055A15C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 8055A18C */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 8055A1BC */ void changeBtp(int*, int*); - /* 8055A1C0 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 805595FC */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80559B18 */ ~daNpcT_JntAnm_c(); - /* 80559DE4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80559F00 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 805595B4 */ ~daNpcT_ActorMngr_c(); - /* 80559644 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80559C60 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80559CD0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80559D2C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dAttention_c { - /* 80556798 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80559680 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 805596C8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 8055916C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct J3DTexNoAnm { - /* 8055481C */ ~J3DTexNoAnm(); - /* 80554864 */ J3DTexNoAnm(); - /* 8055913C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80554888 */ ~J3DTexMtxAnm(); - /* 805548C4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80554774 */ ~J3DTevKColorAnm(); - /* 805547B0 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 805547C8 */ ~J3DTevColorAnm(); - /* 80554804 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 805548DC */ ~J3DMatColorAnm(); - /* 80554918 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80559D9C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -567,7 +135,6 @@ extern "C" u8 mCutList__13daNpc_Kolin_c[132]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -702,11 +269,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -727,8 +289,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -740,11 +300,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); extern "C" void checkStartDemo13StbEvt__11daNpc_Len_cFP10fopAc_ac_cfffffff(); @@ -1305,25 +860,30 @@ SECTION_DATA static void* lit_5841[8] = { }; /* 8055B1FC-8055B21C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kolin_MethodTable */ -SECTION_DATA static void* daNpc_Kolin_MethodTable[8] = { - (void*)daNpc_Kolin_Create__FPv, - (void*)daNpc_Kolin_Delete__FPv, - (void*)daNpc_Kolin_Execute__FPv, - (void*)daNpc_Kolin_IsDelete__FPv, - (void*)daNpc_Kolin_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kolin_MethodTable = { + (process_method_func)daNpc_Kolin_Create__FPv, + (process_method_func)daNpc_Kolin_Delete__FPv, + (process_method_func)daNpc_Kolin_Execute__FPv, + (process_method_func)daNpc_Kolin_IsDelete__FPv, + (process_method_func)daNpc_Kolin_Draw__FPv, }; /* 8055B21C-8055B24C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KOLIN */ -SECTION_DATA extern void* g_profile_NPC_KOLIN[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x025D0000, (void*)&g_fpcLf_Method, - (void*)0x00001020, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x015E0000, (void*)&daNpc_Kolin_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KOLIN = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KOLIN, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kolin_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 350, // mPriority + &daNpc_Kolin_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 8055B24C-8055B258 000984 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1594,7 +1154,8 @@ asm void daNpc_Kolin_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__15J3DTevKColorAnmFv.s" } @@ -1604,7 +1165,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__15J3DTevKColorAnmFv.s" } @@ -1614,7 +1176,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__14J3DTevColorAnmFv.s" } @@ -1624,7 +1187,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__14J3DTevColorAnmFv.s" } @@ -1634,7 +1198,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__11J3DTexNoAnmFv.s" } @@ -1644,7 +1209,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__11J3DTexNoAnmFv.s" } @@ -1654,7 +1220,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__12J3DTexMtxAnmFv.s" } @@ -1664,7 +1231,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__12J3DTexMtxAnmFv.s" } @@ -1674,7 +1242,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__14J3DMatColorAnmFv.s" } @@ -1684,7 +1253,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__14J3DMatColorAnmFv.s" } @@ -2238,7 +1808,8 @@ asm void daNpc_Kolin_c::followPlayer(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/getDistTable__12dAttention_cFi.s" } @@ -2619,7 +2190,8 @@ static bool daNpc_Kolin_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/calc__11J3DTexNoAnmCFPUs.s" } @@ -2629,7 +2201,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__10cCcD_GSttsFv.s" } @@ -2639,7 +2212,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__8daNpcT_cFv.s" } @@ -2649,7 +2223,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__4cXyzFv.s" } @@ -2659,7 +2234,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__5csXyzFv.s" } @@ -2669,7 +2245,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2679,7 +2256,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__13daNpcT_Path_cFv.s" } @@ -2689,7 +2267,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2699,7 +2278,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__8cM3dGCylFv.s" } @@ -2709,7 +2289,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__8cM3dGAabFv.s" } @@ -2721,18 +2302,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/func_80559710.s" } #pragma pop /* 80559B14-80559B18 005C14 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2740,14 +2323,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80559C14-80559C18 005D14 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2755,7 +2340,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2765,7 +2351,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__12dBgS_AcchCirFv.s" } @@ -2775,7 +2362,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__10dCcD_GSttsFv.s" } @@ -2785,7 +2373,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__12dBgS_ObjAcchFv.s" } @@ -2795,7 +2384,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/__dt__12J3DFrameCtrlFv.s" } @@ -2805,8 +2395,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2816,31 +2407,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 8055A108-8055A10C 006208 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 8055A10C-8055A114 00620C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8055A114-8055A11C 006214 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 8055A11C-8055A124 00621C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2850,7 +2446,8 @@ void daNpcT_c::afterMoved() { } /* 8055A128-8055A130 006228 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2858,25 +2455,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/decTmr__8daNpcT_cFv.s" } #pragma pop /* 8055A148-8055A14C 006248 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 8055A14C-8055A154 00624C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 8055A154-8055A15C 006254 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2885,7 +2486,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2896,19 +2498,22 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 8055A1BC-8055A1C0 0062BC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 8055A1C0-8055A1C4 0062C0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -3062,7 +2667,8 @@ static asm void func_8055A538() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolin/d_a_npc_kolin/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.cpp b/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.cpp index f0abe470bb..e3f6a2fcfc 100644 --- a/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.cpp +++ b/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.cpp @@ -1,331 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kolinb -// +/** + * @file d_a_npc_kolinb.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A48184 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Kolinb_c { - /* 80A4598C */ ~daNpc_Kolinb_c(); - /* 80A45ADC */ void create(); - /* 80A45DC4 */ void CreateHeap(); - /* 80A4603C */ void Delete(); - /* 80A46070 */ void Execute(); - /* 80A46090 */ void Draw(); - /* 80A46124 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A46144 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A4619C */ void getType(); - /* 80A461E8 */ void isDelete(); - /* 80A462C8 */ void reset(); - /* 80A46420 */ void setParam(); - /* 80A4651C */ void checkChangeEvt(); - /* 80A465D0 */ void setAfterTalkMotion(); - /* 80A46630 */ void srchActors(); - /* 80A46634 */ void evtTalk(); - /* 80A466D4 */ void evtCutProc(); - /* 80A4679C */ void action(); - /* 80A46824 */ void beforeMove(); - /* 80A468E8 */ void setAttnPos(); - /* 80A46A4C */ void setCollision(); - /* 80A46A9C */ bool drawDbgInfo(); - /* 80A46AA4 */ void selectAction(); - /* 80A46AEC */ void chkAction(int (daNpc_Kolinb_c::*)(void*)); - /* 80A46B18 */ void setAction(int (daNpc_Kolinb_c::*)(void*)); - /* 80A46BC0 */ void cutConversationInHotel(int); - /* 80A46C48 */ void cutConversationAboutDeathMt(int); - /* 80A46EE4 */ void cutConversationAboutGoron(int); - /* 80A47180 */ void cutNurse(int); - /* 80A472EC */ void cutClothTry(int); - /* 80A4738C */ void cutThankYou(int); - /* 80A4742C */ void wait(void*); - /* 80A475D4 */ void talk(void*); - /* 80A4854C */ daNpc_Kolinb_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A4860C */ void getHeadJointNo(); - /* 80A48624 */ void checkChangeJoint(int); - /* 80A4864C */ void checkRemoveJoint(int); - /* 80A48674 */ void getBackboneJointNo(); - /* 80A4868C */ void getNeckJointNo(); - - static void* mCutNameList[7]; - static u8 mCutList[84]; -}; - -struct daNpc_Kolinb_Param_c { - /* 80A486A4 */ ~daNpc_Kolinb_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80A47B20 */ ~csXyz(); - /* 80A48038 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80A47AE4 */ ~cXyz(); - /* 80A48138 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A99C */ void setAngle(csXyz); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80A4775C */ ~daNpcT_c(); - /* 80A47C34 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A48350 */ bool getEyeballMaterialNo(); - /* 80A48358 */ void ctrlSubFaceMotion(int); - /* 80A4835C */ s32 getFootLJointNo(); - /* 80A48364 */ s32 getFootRJointNo(); - /* 80A4836C */ bool getEyeballLMaterialNo(); - /* 80A48374 */ bool getEyeballRMaterialNo(); - /* 80A4837C */ void afterJntAnm(int); - /* 80A48380 */ bool evtEndProc(); - /* 80A48388 */ void afterMoved(); - /* 80A4838C */ bool chkXYItems(); - /* 80A48394 */ void decTmr(); - /* 80A483AC */ void drawOtherMdl(); - /* 80A483B0 */ void drawGhost(); - /* 80A483B4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A483BC */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A483C4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A483F4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A48424 */ void changeAnm(int*, int*); - /* 80A48428 */ void changeBck(int*, int*); - /* 80A4842C */ void changeBtp(int*, int*); - /* 80A48430 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80A47B5C */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80A4803C */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 80A4813C */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A4823C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgW_Base {}; - -struct dBgW { - /* 8007B970 */ dBgW(); - /* 8007B9C0 */ void Move(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A48298 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A481CC */ ~dBgS_AcchCir(); -}; - -struct dBgS { - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 80A47BA4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A47BEC */ ~cM3dGAab(); -}; - -struct cCcD_GStts { - /* 80A47714 */ ~cCcD_GStts(); -}; - -struct cBgD_t {}; - -struct cBgW { - /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A48308 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -428,7 +108,6 @@ extern "C" u8 mCutList__14daNpc_Kolinb_c[84]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); @@ -513,8 +192,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -529,8 +206,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -539,8 +214,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" void __register_global_object(); // @@ -816,25 +489,30 @@ SECTION_DATA static void* lit_4677[3] = { }; /* 80A48CC4-80A48CE4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kolinb_MethodTable */ -SECTION_DATA static void* daNpc_Kolinb_MethodTable[8] = { - (void*)daNpc_Kolinb_Create__FPv, - (void*)daNpc_Kolinb_Delete__FPv, - (void*)daNpc_Kolinb_Execute__FPv, - (void*)daNpc_Kolinb_IsDelete__FPv, - (void*)daNpc_Kolinb_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kolinb_MethodTable = { + (process_method_func)daNpc_Kolinb_Create__FPv, + (process_method_func)daNpc_Kolinb_Delete__FPv, + (process_method_func)daNpc_Kolinb_Execute__FPv, + (process_method_func)daNpc_Kolinb_IsDelete__FPv, + (process_method_func)daNpc_Kolinb_Draw__FPv, }; /* 80A48CE4-80A48D14 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KOLINB */ -SECTION_DATA extern void* g_profile_NPC_KOLINB[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x025E0000, (void*)&g_fpcLf_Method, - (void*)0x00000FFC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x015F0000, (void*)&daNpc_Kolinb_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KOLINB = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KOLINB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kolinb_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 351, // mPriority + &daNpc_Kolinb_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A48D14-80A48D20 0004C0 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1462,7 +1140,8 @@ static bool daNpc_Kolinb_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__10cCcD_GSttsFv.s" } @@ -1472,7 +1151,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__8daNpcT_cFv.s" } @@ -1482,7 +1162,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__4cXyzFv.s" } @@ -1492,7 +1173,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__5csXyzFv.s" } @@ -1502,7 +1184,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__13daNpcT_Path_cFv.s" } @@ -1512,7 +1195,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__8cM3dGCylFv.s" } @@ -1522,7 +1206,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__8cM3dGAabFv.s" } @@ -1534,18 +1219,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/func_80A47C34.s" } #pragma pop /* 80A48038-80A4803C 002798 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1553,14 +1240,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A48138-80A4813C 002898 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1568,7 +1257,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1578,7 +1268,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1588,7 +1279,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__12dBgS_AcchCirFv.s" } @@ -1598,7 +1290,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__10dCcD_GSttsFv.s" } @@ -1608,7 +1301,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__12dBgS_ObjAcchFv.s" } @@ -1618,7 +1312,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/__dt__12J3DFrameCtrlFv.s" } @@ -1631,7 +1326,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80A48358-80A4835C 002AB8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1647,13 +1343,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A4836C-80A48374 002ACC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A48374-80A4837C 002AD4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1663,7 +1361,8 @@ void daNpcT_c::afterJntAnm(int param_0) { } /* 80A48380-80A48388 002AE0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1673,7 +1372,8 @@ void daNpcT_c::afterMoved() { } /* 80A4838C-80A48394 002AEC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1681,30 +1381,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A483AC-80A483B0 002B0C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A483B0-80A483B4 002B10 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A483B4-80A483BC 002B14 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A483BC-80A483C4 002B1C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1713,7 +1418,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1724,29 +1430,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kolinb/d_a_npc_kolinb/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A48424-80A48428 002B84 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A48428-80A4842C 002B88 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A4842C-80A48430 002B8C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A48430-80A48434 002B90 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.cpp b/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.cpp index 9f14db9ede..25d1c37122 100644 --- a/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.cpp +++ b/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.cpp @@ -1,273 +1,13 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_ks -// +/** + * @file d_a_npc_ks.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" +#include "d/d_camera.h" -// -// Types: -// - -namespace std { -/* 80A5DC98 */ void fabsf(f32); -}; - -struct request_of_phase_process_class {}; - -struct npc_ks_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTexPattern {}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct mDoCPd_c { - static u8 m_cpadInfo[256]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daPy_py_c { - /* 8015F4F0 */ void setLookPos(cXyz*); - /* 80A5DB40 */ void cancelOriginalDemo(); - /* 80A5DC48 */ void changeDemoPos0(cXyz const*); - /* 80A5DCD0 */ void changeDemoParam0(int); - /* 80A5DCD8 */ void changeDemoMode(u32, int, int, s16); - /* 80A5DCEC */ void changeOriginalDemo(); - - static u8 m_midnaActor[4]; -}; - -struct daNpc_Ks_HIO_c { - /* 80A48F8C */ daNpc_Ks_HIO_c(); - /* 80A5DA90 */ ~daNpc_Ks_HIO_c(); -}; - -struct daMidna_c { - /* 80A5DD70 */ void checkShadowReturnEnd() const; - /* 80A5DDC0 */ void changeDemoMode(u32); - /* 80A5DDC8 */ void changeOriginalDemo(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_player_item_c { - /* 80032FB8 */ void setItem(int, u8); -}; - -struct dSv_memBit_c { - /* 800347A0 */ void onTbox(int); - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct csXyz {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); - /* 8024A540 */ void getNowMsgNo(); -}; - -struct dEvt_info_c { - /* 80A5DD00 */ void onCondition(u16); - /* 80A5DD10 */ void checkCommandDemoAccrpt(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct J3DModel {}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); - - static u8 mSimpleTexObj[32]; -}; - -struct dCamera_c { - /* 801614AC */ void Start(); - /* 801614D0 */ void Stop(); - /* 8016300C */ void SetTrimSize(s32); - /* 80180AE0 */ void Set(cXyz, cXyz, f32, s16); - /* 80180BA0 */ void Reset(cXyz, cXyz, f32, s16); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk_Spl { - /* 800777B0 */ dBgS_ObjGndChk_Spl(); - /* 80077848 */ ~dBgS_ObjGndChk_Spl(); -}; - -struct dBgS_ObjAcch { - /* 80A5D968 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A5D9D8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 8007353C */ void LockonTarget(s32); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct _GXTexObj {}; - -struct Z2SeqMgr { - /* 802B4164 */ void setBattleBgmOff(bool); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DJoint {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80A5C768 */ ~J3DFrameCtrl(); -}; // // Forward References: @@ -375,7 +115,7 @@ extern "C" void __apl__4cXyzFRC3Vec(); extern "C" void fabsf__3stdFf(); extern "C" void set__4cXyzFfff(); extern "C" void __as__4cXyzFRC4cXyz(); -extern "C" void changeDemoParam0__9daPy_py_cFi(); +extern "C" void changeDemoParam0__9daPy_py_cFi(daPy_py_c*, int); extern "C" void changeDemoMode__9daPy_py_cFUliis(); extern "C" void changeOriginalDemo__9daPy_py_cFv(); extern "C" void onCondition__11dEvt_info_cFUs(); @@ -384,7 +124,7 @@ extern "C" static void dComIfGp_getCamera__Fi(); extern "C" static void dComIfGp_getPlayerCameraID__Fi(); extern "C" static void dComIfGp_getPlayer__Fi(); extern "C" void checkShadowReturnEnd__9daMidna_cCFv(); -extern "C" void changeDemoMode__9daMidna_cFUl(); +extern "C" void changeDemoMode__9daMidna_cFUl(daMidna_c*, u32); extern "C" void changeOriginalDemo__9daMidna_cFv(); extern "C" static void dComIfGp_getVibration__Fv(); extern "C" void __ct__4cXyzFfff(); @@ -525,8 +265,6 @@ extern "C" void __dl__FPv(); extern "C" void JUTReport__FiiPCce(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); extern "C" void __cvt_fp2unsigned(); extern "C" void _savegpr_19(); extern "C" void _savegpr_22(); @@ -544,8 +282,6 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -554,16 +290,11 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; extern "C" extern u8 struct_80450C98[4]; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; extern "C" u8 m_midnaActor__9daPy_py_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1383,25 +1114,30 @@ static dCcD_SrcCyl cc_cyl_src = { }; /* 80A5FD74-80A5FD94 -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Ks_Method */ -SECTION_DATA static void* l_daNpc_Ks_Method[8] = { - (void*)daNpc_Ks_Create__FP10fopAc_ac_c, - (void*)daNpc_Ks_Delete__FP12npc_ks_class, - (void*)daNpc_Ks_Execute__FP12npc_ks_class, - (void*)daNpc_Ks_IsDelete__FP12npc_ks_class, - (void*)daNpc_Ks_Draw__FP12npc_ks_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Ks_Method = { + (process_method_func)daNpc_Ks_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Ks_Delete__FP12npc_ks_class, + (process_method_func)daNpc_Ks_Execute__FP12npc_ks_class, + (process_method_func)daNpc_Ks_IsDelete__FP12npc_ks_class, + (process_method_func)daNpc_Ks_Draw__FP12npc_ks_class, }; /* 80A5FD94-80A5FDC4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KS */ -SECTION_DATA extern void* g_profile_NPC_KS[12] = { - (void*)0xFFFFFFFD, (void*)0x0003FFFD, - (void*)0x00600000, (void*)&g_fpcLf_Method, - (void*)0x00000C20, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02BD0000, (void*)&l_daNpc_Ks_Method, - (void*)0x00044100, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_KS = { + fpcLy_CURRENT_e, // mLayerID + 3, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_ks_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 701, // mPriority + &l_daNpc_Ks_Method, // sub_method + 0x00044100, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A5FDC4-80A5FDD0 00196C 000C+00 1/1 0/0 0/0 .data __vt__12dBgS_AcchCir */ @@ -4590,7 +4326,8 @@ static asm void useHeapInit(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/__dt__12J3DFrameCtrlFv.s" } @@ -4763,7 +4500,8 @@ extern "C" asm void __dt__10dCcD_GSttsFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/__dt__12dBgS_ObjAcchFv.s" } @@ -4773,7 +4511,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/__dt__12dBgS_AcchCirFv.s" } @@ -4839,7 +4578,8 @@ static asm void func_80A5DB38() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::cancelOriginalDemo() { +// asm void daPy_py_c::cancelOriginalDemo() { +extern "C" asm void cancelOriginalDemo__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/cancelOriginalDemo__9daPy_py_cFv.s" } @@ -4849,7 +4589,8 @@ asm void daPy_py_c::cancelOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_event_reset() { +// static asm void dComIfGp_event_reset() { +extern "C" static asm void dComIfGp_event_reset__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_event_reset__Fv.s" } @@ -4870,7 +4611,8 @@ extern "C" asm void __ct__4cXyzFRC4cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_setItemOilCount(s32 param_0) { +// static asm void dComIfGp_setItemOilCount(s32 param_0) { +extern "C" static asm void dComIfGp_setItemOilCount__Fl() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_setItemOilCount__Fl.s" } @@ -4880,7 +4622,8 @@ static asm void dComIfGp_setItemOilCount(s32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_getMaxOil() { +// static asm void dComIfGs_getMaxOil() { +extern "C" static asm void dComIfGs_getMaxOil__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGs_getMaxOil__Fv.s" } @@ -4890,7 +4633,8 @@ static asm void dComIfGs_getMaxOil() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daPy_getPlayerActorClass() { +// static asm void daPy_getPlayerActorClass() { +extern "C" static asm void daPy_getPlayerActorClass__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/daPy_getPlayerActorClass__Fv.s" } @@ -4901,8 +4645,9 @@ static asm void daPy_getPlayerActorClass() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_particle_set(u16 param_0, cXyz const* param_1, csXyz const* param_2, - cXyz const* param_3) { +// static asm void dComIfGp_particle_set(u16 param_0, cXyz const* param_1, csXyz const* param_2, +// cXyz const* param_3) { +extern "C" static asm void dComIfGp_particle_set__FUsPC4cXyzPC5csXyzPC4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_particle_set__FUsPC4cXyzPC5csXyzPC4cXyz.s" } @@ -4913,7 +4658,8 @@ static asm void dComIfGp_particle_set(u16 param_0, cXyz const* param_1, csXyz co #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::changeDemoPos0(cXyz const* param_0) { +// asm void daPy_py_c::changeDemoPos0(cXyz const* param_0) { +extern "C" asm void changeDemoPos0__9daPy_py_cFPC4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/changeDemoPos0__9daPy_py_cFPC4cXyz.s" } @@ -4934,7 +4680,8 @@ extern "C" asm void __apl__4cXyzFRC3Vec() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void std::fabsf(f32 param_0) { +// asm void std::fabsf(f32 param_0) { +extern "C" asm void fabsf__3stdFf() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/fabsf__3stdFf.s" } @@ -4963,15 +4710,17 @@ extern "C" asm void __as__4cXyzFRC4cXyz() { #pragma pop /* 80A5DCD0-80A5DCD8 -00001 0008+00 0/0 0/0 0/0 .text changeDemoParam0__9daPy_py_cFi */ -void daPy_py_c::changeDemoParam0(int param_0) { - *(u32*)(((u8*)this) + 1548) /* this->field_0x60c */ = (u32)(param_0); +// void daPy_py_c::changeDemoParam0(int param_0) { +extern "C" void changeDemoParam0__9daPy_py_cFi(daPy_py_c* param_0, int param_1) { + *(u32*)(((u8*)param_0) + 1548) /* this->field_0x60c */ = (u32)(param_1); } /* 80A5DCD8-80A5DCEC 014E38 0014+00 1/1 0/0 0/0 .text changeDemoMode__9daPy_py_cFUliis */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 param_3) { +// asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 param_3) { +extern "C" asm void changeDemoMode__9daPy_py_cFUliis() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/changeDemoMode__9daPy_py_cFUliis.s" } @@ -4981,7 +4730,8 @@ asm void daPy_py_c::changeDemoMode(u32 param_0, int param_1, int param_2, s16 pa #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::changeOriginalDemo() { +// asm void daPy_py_c::changeOriginalDemo() { +extern "C" asm void changeOriginalDemo__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/changeOriginalDemo__9daPy_py_cFv.s" } @@ -4991,7 +4741,8 @@ asm void daPy_py_c::changeOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dEvt_info_c::onCondition(u16 param_0) { +// asm void dEvt_info_c::onCondition(u16 param_0) { +extern "C" asm void onCondition__11dEvt_info_cFUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/onCondition__11dEvt_info_cFUs.s" } @@ -5001,7 +4752,8 @@ asm void dEvt_info_c::onCondition(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dEvt_info_c::checkCommandDemoAccrpt() { +// asm void dEvt_info_c::checkCommandDemoAccrpt() { +extern "C" asm void checkCommandDemoAccrpt__11dEvt_info_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/checkCommandDemoAccrpt__11dEvt_info_cFv.s" } @@ -5011,7 +4763,8 @@ asm void dEvt_info_c::checkCommandDemoAccrpt() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getCamera(int param_0) { +// static asm void dComIfGp_getCamera(int param_0) { +extern "C" static asm void dComIfGp_getCamera__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_getCamera__Fi.s" } @@ -5021,7 +4774,8 @@ static asm void dComIfGp_getCamera(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getPlayerCameraID(int param_0) { +// static asm void dComIfGp_getPlayerCameraID(int param_0) { +extern "C" static asm void dComIfGp_getPlayerCameraID__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_getPlayerCameraID__Fi.s" } @@ -5031,7 +4785,8 @@ static asm void dComIfGp_getPlayerCameraID(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getPlayer(int param_0) { +// static asm void dComIfGp_getPlayer(int param_0) { +extern "C" asm void dComIfGp_getPlayer__Fi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_getPlayer__Fi.s" } @@ -5042,22 +4797,25 @@ static asm void dComIfGp_getPlayer(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daMidna_c::checkShadowReturnEnd() const { +// asm void daMidna_c::checkShadowReturnEnd() const { +extern "C" asm void checkShadowReturnEnd__9daMidna_cCFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/checkShadowReturnEnd__9daMidna_cCFv.s" } #pragma pop /* 80A5DDC0-80A5DDC8 -00001 0008+00 0/0 0/0 0/0 .text changeDemoMode__9daMidna_cFUl */ -void daMidna_c::changeDemoMode(u32 param_0) { - *(u32*)(((u8*)this) + 2240) /* this->field_0x8c0 */ = (u32)(param_0); +// void daMidna_c::changeDemoMode(u32 param_0) { +extern "C" void changeDemoMode__9daMidna_cFUl(daMidna_c* param_0, u32 param_1) { + *(u32*)(((u8*)param_0) + 2240) /* this->field_0x8c0 */ = (u32)(param_1); } /* 80A5DDC8-80A5DDD4 014F28 000C+00 1/1 0/0 0/0 .text changeOriginalDemo__9daMidna_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daMidna_c::changeOriginalDemo() { +// asm void daMidna_c::changeOriginalDemo() { +extern "C" asm void changeOriginalDemo__9daMidna_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/changeOriginalDemo__9daMidna_cFv.s" } @@ -5067,7 +4825,8 @@ asm void daMidna_c::changeOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getVibration() { +// static asm void dComIfGp_getVibration() { +extern "C" static asm void dComIfGp_getVibration__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGp_getVibration__Fv.s" } @@ -5089,7 +4848,8 @@ extern "C" asm void __ct__4cXyzFfff() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dMeter2Info_setOilGaugeBackUp(u16 param_0) { +// static asm void dMeter2Info_setOilGaugeBackUp(u16 param_0) { +extern "C" static asm void dMeter2Info_setOilGaugeBackUp__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dMeter2Info_setOilGaugeBackUp__FUs.s" } @@ -5099,7 +4859,8 @@ static asm void dMeter2Info_setOilGaugeBackUp(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_getOil() { +// static asm void dComIfGs_getOil() { +extern "C" static asm void dComIfGs_getOil__Fv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGs_getOil__Fv.s" } @@ -5109,7 +4870,8 @@ static asm void dComIfGs_getOil() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_setItem(int param_0, u8 param_1) { +// static asm void dComIfGs_setItem(int param_0, u8 param_1) { +extern "C" static asm void dComIfGs_setItem__FiUc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGs_setItem__FiUc.s" } @@ -5128,7 +4890,8 @@ void __ct__10JAISoundIDFUl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3) { +// static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3) { +extern "C" static asm void mDoAud_seStart__FUlPC3VecUlSc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/mDoAud_seStart__FUlPC3VecUlSc.s" } @@ -5138,7 +4901,8 @@ static asm void mDoAud_seStart(u32 param_0, Vec const* param_1, u32 param_2, s8 #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_onEventBit(u16 param_0) { +// static asm void dComIfGs_onEventBit(u16 param_0) { +extern "C" static asm void dComIfGs_onEventBit__FUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks/dComIfGs_onEventBit__FUs.s" } diff --git a/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.cpp b/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.cpp index 7595c35b6e..f43ddf13b2 100644 --- a/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.cpp +++ b/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.cpp @@ -1,379 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_kyury -// +/** + * @file d_a_npc_kyury.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A630D4 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Kyury_c { - /* 80A600CC */ ~daNpc_Kyury_c(); - /* 80A60218 */ void create(); - /* 80A604E4 */ void CreateHeap(); - /* 80A609A8 */ void Delete(); - /* 80A609DC */ void Execute(); - /* 80A609FC */ void Draw(); - /* 80A60A90 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A60AB0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A60B08 */ void getType(); - /* 80A60B54 */ void isDelete(); - /* 80A60B9C */ void reset(); - /* 80A60CF8 */ void afterJntAnm(int); - /* 80A60D84 */ void setParam(); - /* 80A60EB0 */ void checkChangeEvt(); - /* 80A60FB0 */ void setAfterTalkMotion(); - /* 80A61060 */ void srchActors(); - /* 80A610C4 */ void evtTalk(); - /* 80A61164 */ void evtCutProc(); - /* 80A6122C */ void action(); - /* 80A61324 */ void beforeMove(); - /* 80A613E8 */ void setAttnPos(); - /* 80A61730 */ void setCollision(); - /* 80A618A8 */ bool drawDbgInfo(); - /* 80A618B0 */ void drawOtherMdl(); - /* 80A619B8 */ void selectAction(); - /* 80A61A00 */ void chkAction(int (daNpc_Kyury_c::*)(void*)); - /* 80A61A2C */ void setAction(int (daNpc_Kyury_c::*)(void*)); - /* 80A61AD4 */ void cutConversation(int); - /* 80A61ED0 */ void wait(void*); - /* 80A62370 */ void talk(void*); - /* 80A63720 */ daNpc_Kyury_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A63800 */ s32 getEyeballMaterialNo(); - /* 80A63808 */ s32 getHeadJointNo(); - /* 80A63810 */ s32 getNeckJointNo(); - /* 80A63818 */ bool getBackboneJointNo(); - /* 80A63820 */ void checkChangeJoint(int); - /* 80A63830 */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_Kyury_Param_c { - /* 80A63840 */ ~daNpc_Kyury_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A629F8 */ ~cXyz(); - /* 80A630D0 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A62670 */ ~daNpcT_c(); - /* 80A62BCC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A635C4 */ void ctrlSubFaceMotion(int); - /* 80A635C8 */ s32 getFootLJointNo(); - /* 80A635D0 */ s32 getFootRJointNo(); - /* 80A635D8 */ bool getEyeballLMaterialNo(); - /* 80A635E0 */ bool getEyeballRMaterialNo(); - /* 80A635E8 */ bool evtEndProc(); - /* 80A635F0 */ void afterMoved(); - /* 80A635F4 */ bool chkXYItems(); - /* 80A635FC */ void decTmr(); - /* 80A63614 */ void drawGhost(); - /* 80A63618 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A63620 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A63628 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A63658 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A63688 */ void changeAnm(int*, int*); - /* 80A6368C */ void changeBck(int*, int*); - /* 80A63690 */ void changeBtp(int*, int*); - /* 80A63694 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80A62AB8 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A62FD4 */ ~daNpcT_JntAnm_c(); - /* 80A632A0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A633BC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A62A70 */ ~daNpcT_ActorMngr_c(); - /* 80A62B00 */ daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A6318C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A631E8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A6311C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A62A34 */ ~csXyz(); - /* 80A62FD0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A62B3C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A62B84 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A62628 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A60894 */ ~J3DTexNoAnm(); - /* 80A608DC */ J3DTexNoAnm(); - /* 80A625F8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A60900 */ ~J3DTexMtxAnm(); - /* 80A6093C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A607EC */ ~J3DTevKColorAnm(); - /* 80A60828 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A60840 */ ~J3DTevColorAnm(); - /* 80A6087C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A60954 */ ~J3DMatColorAnm(); - /* 80A60990 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A63258 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -484,7 +116,6 @@ extern "C" u8 mCutList__13daNpc_Kyury_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -589,10 +220,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -611,8 +238,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -623,10 +248,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -879,25 +500,30 @@ SECTION_DATA static void* lit_4897[3] = { }; /* 80A64050-80A64070 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kyury_MethodTable */ -SECTION_DATA static void* daNpc_Kyury_MethodTable[8] = { - (void*)daNpc_Kyury_Create__FPv, - (void*)daNpc_Kyury_Delete__FPv, - (void*)daNpc_Kyury_Execute__FPv, - (void*)daNpc_Kyury_IsDelete__FPv, - (void*)daNpc_Kyury_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Kyury_MethodTable = { + (process_method_func)daNpc_Kyury_Create__FPv, + (process_method_func)daNpc_Kyury_Delete__FPv, + (process_method_func)daNpc_Kyury_Execute__FPv, + (process_method_func)daNpc_Kyury_IsDelete__FPv, + (process_method_func)daNpc_Kyury_Draw__FPv, }; /* 80A64070-80A640A0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KYURY */ -SECTION_DATA extern void* g_profile_NPC_KYURY[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x025F0000, (void*)&g_fpcLf_Method, - (void*)0x00000FDC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01600000, (void*)&daNpc_Kyury_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_KYURY = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_KYURY, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Kyury_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 352, // mPriority + &daNpc_Kyury_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A640A0-80A640AC 00068C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1164,7 +790,8 @@ asm void daNpc_Kyury_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__15J3DTevKColorAnmFv.s" } @@ -1174,7 +801,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__15J3DTevKColorAnmFv.s" } @@ -1184,7 +812,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__14J3DTevColorAnmFv.s" } @@ -1194,7 +823,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__14J3DTevColorAnmFv.s" } @@ -1204,7 +834,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__11J3DTexNoAnmFv.s" } @@ -1214,7 +845,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__11J3DTexNoAnmFv.s" } @@ -1224,7 +856,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__12J3DTexMtxAnmFv.s" } @@ -1234,7 +867,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__12J3DTexMtxAnmFv.s" } @@ -1244,7 +878,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__14J3DMatColorAnmFv.s" } @@ -1254,7 +889,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__14J3DMatColorAnmFv.s" } @@ -1709,7 +1345,8 @@ static bool daNpc_Kyury_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/calc__11J3DTexNoAnmCFPUs.s" } @@ -1719,7 +1356,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__10cCcD_GSttsFv.s" } @@ -1729,7 +1367,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__8daNpcT_cFv.s" } @@ -1739,7 +1378,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__4cXyzFv.s" } @@ -1749,7 +1389,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__5csXyzFv.s" } @@ -1759,7 +1400,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1769,7 +1411,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__13daNpcT_Path_cFv.s" } @@ -1779,7 +1422,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1789,7 +1433,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__8cM3dGCylFv.s" } @@ -1799,7 +1444,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__8cM3dGAabFv.s" } @@ -1811,18 +1457,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/func_80A62BCC.s" } #pragma pop /* 80A62FD0-80A62FD4 002FF0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1830,14 +1478,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A630D0-80A630D4 0030F0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1845,7 +1495,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1855,7 +1506,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__12dBgS_AcchCirFv.s" } @@ -1865,7 +1517,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__10dCcD_GSttsFv.s" } @@ -1875,7 +1528,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__12dBgS_ObjAcchFv.s" } @@ -1885,7 +1539,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/__dt__12J3DFrameCtrlFv.s" } @@ -1895,8 +1550,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1906,14 +1562,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A635C4-80A635C8 0035E4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1929,18 +1587,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A635D8-80A635E0 0035F8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A635E0-80A635E8 003600 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A635E8-80A635F0 003608 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1950,7 +1611,8 @@ void daNpcT_c::afterMoved() { } /* 80A635F4-80A635FC 003614 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1958,25 +1620,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A63614-80A63618 003634 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A63618-80A63620 003638 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A63620-80A63628 003640 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1985,7 +1651,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1996,29 +1663,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_kyury/d_a_npc_kyury/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A63688-80A6368C 0036A8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A6368C-80A63690 0036AC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A63690-80A63694 0036B0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A63694-80A63698 0036B4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_len/d_a_npc_len.cpp b/rel/d/a/npc/d_a_npc_len/d_a_npc_len.cpp index db92f8e99b..f922bb62e6 100644 --- a/rel/d/a/npc/d_a_npc_len/d_a_npc_len.cpp +++ b/rel/d/a/npc/d_a_npc_len/d_a_npc_len.cpp @@ -1,392 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_len -// +/** + * @file d_a_npc_len.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_len/d_a_npc_len.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daPy_py_c { - /* 8015F424 */ void checkNowWolfEyeUp(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A68604 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Len_c { - /* 80A6432C */ ~daNpc_Len_c(); - /* 80A64478 */ void create(); - /* 80A64740 */ void CreateHeap(); - /* 80A64BE0 */ void Delete(); - /* 80A64C14 */ void Execute(); - /* 80A64C34 */ void Draw(); - /* 80A64CC8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A64CE8 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A64D40 */ void getType(); - /* 80A64DB8 */ void isDelete(); - /* 80A64FBC */ void reset(); - /* 80A6516C */ void afterJntAnm(int); - /* 80A65278 */ void setParam(); - /* 80A6546C */ void checkChangeEvt(); - /* 80A6556C */ void setAfterTalkMotion(); - /* 80A65624 */ void srchActors(); - /* 80A65710 */ void evtTalk(); - /* 80A657B0 */ void evtCutProc(); - /* 80A65878 */ void action(); - /* 80A65A60 */ void beforeMove(); - /* 80A65B24 */ void setAttnPos(); - /* 80A65E28 */ void setCollision(); - /* 80A65F80 */ bool drawDbgInfo(); - /* 80A65F88 */ void selectAction(); - /* 80A66004 */ void chkAction(int (daNpc_Len_c::*)(void*)); - /* 80A66030 */ void setAction(int (daNpc_Len_c::*)(void*)); - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); - /* 80A661B4 */ void cutConversationInHotel(int); - /* 80A66664 */ void cutHurry(int); - /* 80A668B8 */ void cutTakeWoodStatue(int); - /* 80A66C74 */ void wait(void*); - /* 80A6736C */ void patrol(void*); - /* 80A67794 */ void talk(void*); - /* 80A68D00 */ daNpc_Len_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A68DE0 */ bool getEyeballMaterialNo(); - /* 80A68DE8 */ s32 getHeadJointNo(); - /* 80A68DF0 */ s32 getNeckJointNo(); - /* 80A68DF8 */ bool getBackboneJointNo(); - /* 80A68E00 */ void checkChangeJoint(int); - /* 80A68E10 */ void checkRemoveJoint(int); - /* 80A68E20 */ s32 getFootLJointNo(); - /* 80A68E28 */ s32 getFootRJointNo(); - /* 80A68E30 */ bool chkXYItems(); - - static void* mCutNameList[4]; - static u8 mCutList[48]; -}; - -struct daNpc_Len_Param_c { - /* 80A68E38 */ ~daNpc_Len_Param_c(); - - static u8 const m[148]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80A67F64 */ ~csXyz(); - /* 80A68500 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A67F28 */ ~cXyz(); - /* 80A68600 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A67BA0 */ ~daNpcT_c(); - /* 80A680FC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A68AF4 */ void ctrlSubFaceMotion(int); - /* 80A68AF8 */ bool getEyeballLMaterialNo(); - /* 80A68B00 */ bool getEyeballRMaterialNo(); - /* 80A68B08 */ bool evtEndProc(); - /* 80A68B10 */ void afterMoved(); - /* 80A68B14 */ void decTmr(); - /* 80A68B2C */ void drawOtherMdl(); - /* 80A68B30 */ void drawGhost(); - /* 80A68B34 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A68B3C */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A68B44 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A68B74 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A68BA4 */ void changeAnm(int*, int*); - /* 80A68BA8 */ void changeBck(int*, int*); - /* 80A68BAC */ void changeBtp(int*, int*); - /* 80A68BB0 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80A67FE8 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A68504 */ ~daNpcT_JntAnm_c(); - /* 80A687D0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A688EC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A67FA0 */ ~daNpcT_ActorMngr_c(); - /* 80A68030 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A6864C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A686BC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A68718 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A6806C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A680B4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A67B58 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A64ACC */ ~J3DTexNoAnm(); - /* 80A64B14 */ J3DTexNoAnm(); - /* 80A67B28 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A64B38 */ ~J3DTexMtxAnm(); - /* 80A64B74 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A64A24 */ ~J3DTevKColorAnm(); - /* 80A64A60 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A64A78 */ ~J3DTevColorAnm(); - /* 80A64AB4 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A64B8C */ ~J3DMatColorAnm(); - /* 80A64BC8 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A68788 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -503,7 +122,6 @@ extern "C" u8 mCutList__11daNpc_Len_c[48]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -626,10 +244,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -647,10 +261,7 @@ extern "C" void _restgpr_24(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -661,10 +272,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -1010,25 +617,30 @@ SECTION_DATA static void* lit_4999[3] = { }; /* 80A69884-80A698A4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Len_MethodTable */ -SECTION_DATA static void* daNpc_Len_MethodTable[8] = { - (void*)daNpc_Len_Create__FPv, - (void*)daNpc_Len_Delete__FPv, - (void*)daNpc_Len_Execute__FPv, - (void*)daNpc_Len_IsDelete__FPv, - (void*)daNpc_Len_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Len_MethodTable = { + (process_method_func)daNpc_Len_Create__FPv, + (process_method_func)daNpc_Len_Delete__FPv, + (process_method_func)daNpc_Len_Execute__FPv, + (process_method_func)daNpc_Len_IsDelete__FPv, + (process_method_func)daNpc_Len_Draw__FPv, }; /* 80A698A4-80A698D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_LEN */ -SECTION_DATA extern void* g_profile_NPC_LEN[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02500000, (void*)&g_fpcLf_Method, - (void*)0x00000FF4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01510000, (void*)&daNpc_Len_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_LEN = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_LEN, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Len_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 337, // mPriority + &daNpc_Len_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A698D4-80A698E0 00084C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1298,7 +910,8 @@ asm void daNpc_Len_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__15J3DTevKColorAnmFv.s" } @@ -1308,7 +921,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__15J3DTevKColorAnmFv.s" } @@ -1318,7 +932,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__14J3DTevColorAnmFv.s" } @@ -1328,7 +943,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__14J3DTevColorAnmFv.s" } @@ -1338,7 +954,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__11J3DTexNoAnmFv.s" } @@ -1348,7 +965,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__11J3DTexNoAnmFv.s" } @@ -1358,7 +976,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__12J3DTexMtxAnmFv.s" } @@ -1368,7 +987,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__12J3DTexMtxAnmFv.s" } @@ -1378,7 +998,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__14J3DMatColorAnmFv.s" } @@ -1388,7 +1009,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__14J3DMatColorAnmFv.s" } @@ -1880,7 +1502,8 @@ static bool daNpc_Len_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/calc__11J3DTexNoAnmCFPUs.s" } @@ -1890,7 +1513,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__10cCcD_GSttsFv.s" } @@ -1900,7 +1524,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__8daNpcT_cFv.s" } @@ -1910,7 +1535,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__4cXyzFv.s" } @@ -1920,7 +1546,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__5csXyzFv.s" } @@ -1930,7 +1557,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1940,7 +1568,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__13daNpcT_Path_cFv.s" } @@ -1950,7 +1579,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1960,7 +1590,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__8cM3dGCylFv.s" } @@ -1970,7 +1601,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__8cM3dGAabFv.s" } @@ -1982,18 +1614,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/func_80A680FC.s" } #pragma pop /* 80A68500-80A68504 0042C0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2001,14 +1635,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A68600-80A68604 0043C0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2016,7 +1652,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2026,7 +1663,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__12dBgS_AcchCirFv.s" } @@ -2036,7 +1674,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__10dCcD_GSttsFv.s" } @@ -2046,7 +1685,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__12dBgS_ObjAcchFv.s" } @@ -2056,7 +1696,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/__dt__12J3DFrameCtrlFv.s" } @@ -2066,8 +1707,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2077,31 +1719,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A68AF4-80A68AF8 0048B4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80A68AF8-80A68B00 0048B8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A68B00-80A68B08 0048C0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A68B08-80A68B10 0048C8 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2114,30 +1761,35 @@ void daNpcT_c::afterMoved() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A68B2C-80A68B30 0048EC 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A68B30-80A68B34 0048F0 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A68B34-80A68B3C 0048F4 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A68B3C-80A68B44 0048FC 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2146,7 +1798,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2157,29 +1810,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_len/d_a_npc_len/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A68BA4-80A68BA8 004964 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A68BA8-80A68BAC 004968 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A68BAC-80A68BB0 00496C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A68BB0-80A68BB4 004970 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.cpp b/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.cpp index 5cfdabd5a8..e2f432d4c9 100644 --- a/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.cpp +++ b/rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.cpp @@ -1,72 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_lf -// +/** + * @file d_a_npc_lf.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_lf/d_a_npc_lf.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_lf_class {}; - -struct mDoMtx_stack_c { - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct lf_s { - /* 80A6A8A4 */ ~lf_s(); - /* 80A6A8E0 */ lf_s(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNPC_LF_HIO_c { - /* 80A69B6C */ daNPC_LF_HIO_c(); - /* 80A6A8E4 */ ~daNPC_LF_HIO_c(); -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - // // Forward References: // @@ -113,10 +52,6 @@ extern "C" void cLib_addCalc2__FPffff(); extern "C" void cLib_addCalcAngleS2__FPssss(); extern "C" void MtxPosition__FP4cXyzP4cXyz(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __construct_array(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); @@ -124,16 +59,9 @@ extern "C" void _savegpr_29(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -176,25 +104,30 @@ SECTION_DATA static u8 wp[12] = { }; /* 80A6AA28-80A6AA48 -00001 0020+00 1/1 0/0 0/0 .data l_daNPC_LF_Method */ -SECTION_DATA static void* l_daNPC_LF_Method[8] = { - (void*)daNPC_LF_Create__FP10fopAc_ac_c, - (void*)daNPC_LF_Delete__FP12npc_lf_class, - (void*)daNPC_LF_Execute__FP12npc_lf_class, - (void*)daNPC_LF_IsDelete__FP12npc_lf_class, - (void*)daNPC_LF_Draw__FP12npc_lf_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNPC_LF_Method = { + (process_method_func)daNPC_LF_Create__FP10fopAc_ac_c, + (process_method_func)daNPC_LF_Delete__FP12npc_lf_class, + (process_method_func)daNPC_LF_Execute__FP12npc_lf_class, + (process_method_func)daNPC_LF_IsDelete__FP12npc_lf_class, + (process_method_func)daNPC_LF_Draw__FP12npc_lf_class, }; /* 80A6AA48-80A6AA78 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_LF */ -SECTION_DATA extern void* g_profile_NPC_LF[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x010F0000, (void*)&g_fpcLf_Method, - (void*)0x00001FC4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02BE0000, (void*)&l_daNPC_LF_Method, - (void*)0x00040000, (void*)0x02000000, +extern actor_process_profile_definition g_profile_NPC_LF = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_LF, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_lf_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 702, // mPriority + &l_daNPC_LF_Method, // sub_method + 0x00040000, // mStatus + fopAc_ENEMY_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80A6AA78-80A6AA84 00005C 000C+00 2/2 0/0 0/0 .data __vt__14daNPC_LF_HIO_c */ diff --git a/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.cpp b/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.cpp index 0c427e07aa..4880e1ba9c 100644 --- a/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.cpp +++ b/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.cpp @@ -1,407 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_lud -// +/** + * @file d_a_npc_lud.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_lud/d_a_npc_lud.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80A6F518 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Lud_c { - /* 80A6ABAC */ ~daNpc_Lud_c(); - /* 80A6ACF4 */ void create(); - /* 80A6AFA8 */ void CreateHeap(); - /* 80A6B5FC */ void Delete(); - /* 80A6B630 */ void Execute(); - /* 80A6B650 */ void Draw(); - /* 80A6B6E4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A6B704 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A6B75C */ void getType(); - /* 80A6B7CC */ void isDelete(); - /* 80A6B954 */ void reset(); - /* 80A6BB1C */ void afterJntAnm(int); - /* 80A6BBA8 */ void setParam(); - /* 80A6BD44 */ void checkChangeEvt(); - /* 80A6BE6C */ void setAfterTalkMotion(); - /* 80A6BEE4 */ void srchActors(); - /* 80A6BFA4 */ void evtTalk(); - /* 80A6C044 */ void evtCutProc(); - /* 80A6C10C */ void action(); - /* 80A6C2E4 */ void beforeMove(); - /* 80A6C3A8 */ void setAttnPos(); - /* 80A6C8EC */ void setCollision(); - /* 80A6CA9C */ bool drawDbgInfo(); - /* 80A6CAA4 */ void drawOtherMdl(); - /* 80A6CC2C */ void setBowlAnm(int, int, f32); - /* 80A6CCFC */ void afterSetMotionAnm(int, int, f32, int); - /* 80A6CD30 */ void selectAction(); - /* 80A6CDF4 */ void chkAction(int (daNpc_Lud_c::*)(void*)); - /* 80A6CE20 */ void setAction(int (daNpc_Lud_c::*)(void*)); - /* 80A6CEC8 */ void mop(int, int); - /* 80A6D01C */ void cutHurry(int); - /* 80A6D160 */ void cutConversationInHotel(int); - /* 80A6D450 */ void cutConversationAboutDeathMt(int); - /* 80A6D708 */ void cutConversationAboutGoron(int); - /* 80A6D998 */ void cutNurse(int); - /* 80A6DC48 */ void cutClothTry(int); - /* 80A6DCE8 */ void cutThankYou(int); - /* 80A6DE14 */ void wait(void*); - /* 80A6E32C */ void nurse(void*); - /* 80A6E6EC */ void giveSoup(void*); - /* 80A6E7EC */ void talk(void*); - /* 80A6FC04 */ daNpc_Lud_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A6FCD0 */ bool getEyeballMaterialNo(); - /* 80A6FCD8 */ s32 getHeadJointNo(); - /* 80A6FCE0 */ s32 getNeckJointNo(); - /* 80A6FCE8 */ bool getBackboneJointNo(); - /* 80A6FCF0 */ void checkChangeJoint(int); - /* 80A6FD00 */ void checkRemoveJoint(int); - - static void* mCutNameList[8]; - static u8 mCutList[96]; -}; - -struct daNpc_Lud_Param_c { - /* 80A6FD10 */ ~daNpc_Lud_Param_c(); - - static u8 const m[144]; -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80A6EEC0 */ ~csXyz(); - /* 80A6F414 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A6EE84 */ ~cXyz(); - /* 80A6F514 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A6EAFC */ ~daNpcT_c(); - /* 80A6F010 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A6FA08 */ void ctrlSubFaceMotion(int); - /* 80A6FA0C */ s32 getFootLJointNo(); - /* 80A6FA14 */ s32 getFootRJointNo(); - /* 80A6FA1C */ bool getEyeballLMaterialNo(); - /* 80A6FA24 */ bool getEyeballRMaterialNo(); - /* 80A6FA2C */ bool evtEndProc(); - /* 80A6FA34 */ void afterMoved(); - /* 80A6FA38 */ bool chkXYItems(); - /* 80A6FA40 */ void decTmr(); - /* 80A6FA58 */ void drawGhost(); - /* 80A6FA5C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A6FA64 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A6FA94 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A6FAC4 */ void changeAnm(int*, int*); - /* 80A6FAC8 */ void changeBck(int*, int*); - /* 80A6FACC */ void changeBtp(int*, int*); - /* 80A6FAD0 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A6F418 */ ~daNpcT_JntAnm_c(); - /* 80A6F6E4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A6F800 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A6EEFC */ ~daNpcT_ActorMngr_c(); - /* 80A6EF44 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A6F5D0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A6F62C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A6F560 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A6EF80 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A6EFC8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A6EAB4 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A6B4E8 */ ~J3DTexNoAnm(); - /* 80A6B530 */ J3DTexNoAnm(); - /* 80A6EA84 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A6B554 */ ~J3DTexMtxAnm(); - /* 80A6B590 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A6B440 */ ~J3DTevKColorAnm(); - /* 80A6B47C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A6B494 */ ~J3DTevColorAnm(); - /* 80A6B4D0 */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A6B5A8 */ ~J3DMatColorAnm(); - /* 80A6B5E4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A6F69C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -522,7 +126,6 @@ extern "C" u8 mCutList__11daNpc_Lud_c[96]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -640,10 +243,6 @@ extern "C" void show__13J3DShapeTableFv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -661,10 +260,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -675,10 +271,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void checkStartDemo13StbEvt__11daNpc_Len_cFP10fopAc_ac_cfffffff(); extern "C" void __register_global_object(); @@ -1141,25 +733,30 @@ SECTION_DATA static void* lit_5168[3] = { #pragma pop /* 80A70990-80A709B0 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Lud_MethodTable */ -SECTION_DATA static void* daNpc_Lud_MethodTable[8] = { - (void*)daNpc_Lud_Create__FPv, - (void*)daNpc_Lud_Delete__FPv, - (void*)daNpc_Lud_Execute__FPv, - (void*)daNpc_Lud_IsDelete__FPv, - (void*)daNpc_Lud_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Lud_MethodTable = { + (process_method_func)daNpc_Lud_Create__FPv, + (process_method_func)daNpc_Lud_Delete__FPv, + (process_method_func)daNpc_Lud_Execute__FPv, + (process_method_func)daNpc_Lud_IsDelete__FPv, + (process_method_func)daNpc_Lud_Draw__FPv, }; /* 80A709B0-80A709E0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_LUD */ -SECTION_DATA extern void* g_profile_NPC_LUD[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02510000, (void*)&g_fpcLf_Method, - (void*)0x00000FDC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01520000, (void*)&daNpc_Lud_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_LUD = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_LUD, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Lud_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 338, // mPriority + &daNpc_Lud_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A709E0-80A709EC 000A14 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1421,7 +1018,8 @@ asm void daNpc_Lud_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__15J3DTevKColorAnmFv.s" } @@ -1431,7 +1029,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__15J3DTevKColorAnmFv.s" } @@ -1441,7 +1040,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__14J3DTevColorAnmFv.s" } @@ -1451,7 +1051,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__14J3DTevColorAnmFv.s" } @@ -1461,7 +1062,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__11J3DTexNoAnmFv.s" } @@ -1471,7 +1073,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__11J3DTexNoAnmFv.s" } @@ -1481,7 +1084,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__12J3DTexMtxAnmFv.s" } @@ -1491,7 +1095,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__12J3DTexMtxAnmFv.s" } @@ -1501,7 +1106,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__14J3DMatColorAnmFv.s" } @@ -1511,7 +1117,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__14J3DMatColorAnmFv.s" } @@ -2132,7 +1739,8 @@ static bool daNpc_Lud_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/calc__11J3DTexNoAnmCFPUs.s" } @@ -2142,7 +1750,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__10cCcD_GSttsFv.s" } @@ -2152,7 +1761,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__8daNpcT_cFv.s" } @@ -2162,7 +1772,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__4cXyzFv.s" } @@ -2172,7 +1783,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__5csXyzFv.s" } @@ -2182,7 +1794,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2192,7 +1805,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2202,7 +1816,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__8cM3dGCylFv.s" } @@ -2212,7 +1827,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__8cM3dGAabFv.s" } @@ -2224,18 +1840,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/func_80A6F010.s" } #pragma pop /* 80A6F414-80A6F418 004954 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2243,14 +1861,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A6F514-80A6F518 004A54 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2258,7 +1878,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2268,7 +1889,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__12dBgS_AcchCirFv.s" } @@ -2278,7 +1900,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__10dCcD_GSttsFv.s" } @@ -2288,7 +1911,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__12dBgS_ObjAcchFv.s" } @@ -2298,7 +1922,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/__dt__12J3DFrameCtrlFv.s" } @@ -2308,8 +1933,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2319,14 +1945,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A6FA08-80A6FA0C 004F48 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2342,18 +1970,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A6FA1C-80A6FA24 004F5C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A6FA24-80A6FA2C 004F64 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A6FA2C-80A6FA34 004F6C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2363,7 +1994,8 @@ void daNpcT_c::afterMoved() { } /* 80A6FA38-80A6FA40 004F78 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2371,19 +2003,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A6FA58-80A6FA5C 004F98 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A6FA5C-80A6FA64 004F9C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2392,7 +2027,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2403,29 +2039,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_lud/d_a_npc_lud/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A6FAC4-80A6FAC8 005004 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A6FAC8-80A6FACC 005008 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A6FACC-80A6FAD0 00500C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A6FAD0-80A6FAD4 005010 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.cpp b/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.cpp index 1de056ce45..f389065c96 100644 --- a/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.cpp +++ b/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.cpp @@ -1,481 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_maro -// +/** + * @file d_a_npc_maro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_maro/d_a_npc_maro.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80563994 */ ~cXyz(); - /* 80563F10 */ cXyz(); - /* 805644E8 */ void absXZ(Vec const&) const; -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daTag_ShopItem_c { - /* 80D61044 */ void getSwitchBit1(); -}; - -struct daTag_EvtArea_c { - /* 80564B38 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80563F14 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Maro_c { - /* 8055B58C */ ~daNpc_Maro_c(); - /* 8055B6E0 */ void create(); - /* 8055B9A8 */ void CreateHeap(); - /* 8055BDE8 */ void Delete(); - /* 8055BE1C */ void Execute(); - /* 8055BF0C */ void Draw(); - /* 8055BFA0 */ void createHeapCallBack(fopAc_ac_c*); - /* 8055BFC0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 8055C018 */ void srchArrow(void*, void*); - /* 8055C0B4 */ void getArrowP(); - /* 8055C1AC */ void srchItaMato(void*, void*); - /* 8055C248 */ void getItaMatoP(int); - /* 8055C330 */ void getType(); - /* 8055C3E0 */ void isDelete(); - /* 8055C614 */ void reset(); - /* 8055C834 */ void afterJntAnm(int); - /* 8055C8B0 */ void setParam(); - /* 8055CB14 */ void checkChangeEvt(); - /* 8055CC9C */ void evtEndProc(); - /* 8055CCD8 */ void setAfterTalkMotion(); - /* 8055CD74 */ void srchActors(); - /* 8055D0D8 */ void evtTalk(); - /* 8055D1F4 */ void evtCutProc(); - /* 8055D368 */ void action(); - /* 8055D5C4 */ void beforeMove(); - /* 8055D688 */ void setAttnPos(); - /* 8055D918 */ void setCollision(); - /* 8055DA70 */ bool drawDbgInfo(); - /* 8055DA78 */ void drawOtherMdl(); - /* 8055DAD8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 8055DB64 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 8055DBF0 */ void selectAction(); - /* 8055DD08 */ void chkAction(int (daNpc_Maro_c::*)(void*)); - /* 8055DD34 */ void setAction(int (daNpc_Maro_c::*)(void*)); - /* 8055DDDC */ void cutConversationAboutPachinko(int); - /* 8055DF7C */ void cutConversationAboutWoodSwd(int); - /* 8055E124 */ void cutSwdTutorial(int); - /* 8055E414 */ void cutHail(int); - /* 8055E578 */ void cutFindMonkey(int); - /* 8055E968 */ void cutGiveMeWoodSwd(int); - /* 8055ECF4 */ void cutGetWoodSwd(int); - /* 8055F508 */ void cutConversationWithMaro(int); - /* 8055F634 */ void cutCacaricoConversation(int); - /* 8055F82C */ void cutSurprise(int); - /* 8055FAF0 */ void cutArrowTutorial(int); - /* 805611E0 */ void cutBokinTalk(int); - /* 80561328 */ void cutMarosWhisper(int); - /* 80561614 */ void cutTagPush1(int); - /* 8056178C */ void cutNotGonnaLet(int); - /* 80561E70 */ void cutTalkToKakashi(int); - /* 80562174 */ void wait(void*); - /* 805629A4 */ void swdTutorial(void*); - /* 80562B14 */ void talk_withTaro(void*); - /* 80562CA4 */ void choccai(void*); - /* 80562EC8 */ void tend(void*); - /* 8056319C */ void arrowTutorial(void*); - /* 8056342C */ void talk(void*); - /* 80563660 */ void shop(void*); - /* 805648A4 */ daNpc_Maro_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80564970 */ bool getEyeballMaterialNo(); - /* 80564978 */ s32 getHeadJointNo(); - /* 80564980 */ s32 getNeckJointNo(); - /* 80564988 */ bool getBackboneJointNo(); - /* 80564990 */ void checkChangeJoint(int); - /* 805649A0 */ void checkRemoveJoint(int); - - static void* mCutNameList[17]; - static u8 mCutList[204]; -}; - -struct daNpc_Maro_Param_c { - /* 805649B0 */ ~daNpc_Maro_Param_c(); - - static u8 const m[144]; -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 805639D0 */ ~csXyz(); - /* 80563E10 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 8014BFB0 */ void getShopItemTagP(); - /* 80563A0C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80564630 */ void ctrlSubFaceMotion(int); - /* 80564634 */ s32 getFootLJointNo(); - /* 8056463C */ s32 getFootRJointNo(); - /* 80564644 */ bool getEyeballLMaterialNo(); - /* 8056464C */ bool getEyeballRMaterialNo(); - /* 80564654 */ void afterMoved(); - /* 80564658 */ bool chkXYItems(); - /* 80564660 */ void decTmr(); - /* 80564678 */ void drawGhost(); - /* 8056467C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80564684 */ bool afterSetMotionAnm(int, int, f32, int); - /* 8056468C */ void changeAnm(int*, int*); - /* 80564690 */ void changeBck(int*, int*); - /* 80564694 */ void changeBtp(int*, int*); - /* 80564698 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80563E14 */ ~daNpcT_JntAnm_c(); - /* 805640E0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 805641FC */ void setEyeAngleX(cXyz, f32, s16); - /* 80564404 */ void lookActor(fopAc_ac_c*, f32, u8); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80563880 */ ~daNpcT_ActorMngr_c(); - /* 805638C8 */ daNpcT_ActorMngr_c(); -}; - -struct dTimer_c { - /* 8025DA9C */ void getRestTimeMs(); -}; - -struct dSv_memBit_c { - /* 80034838 */ void offSwitch(int); - /* 80034860 */ void isSwitch(int) const; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; - /* 800349E0 */ void setEventReg(u16, u8); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 80564A08 */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80564B20 */ bool getResName2(int); - /* 80564B28 */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80564B30 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); - /* 8004368C */ void setPtT(void*); - /* 800436BC */ void setPtI(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002CBBC */ void getTimerMode(); - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80563FCC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80564028 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80563F5C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80563904 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8056394C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80563838 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DTexNoAnm { - /* 8055BCD4 */ ~J3DTexNoAnm(); - /* 8055BD1C */ J3DTexNoAnm(); - /* 80563808 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 8055BD40 */ ~J3DTexMtxAnm(); - /* 8055BD7C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 8055BC2C */ ~J3DTevKColorAnm(); - /* 8055BC68 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 8055BC80 */ ~J3DTevColorAnm(); - /* 8055BCBC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 8055BD94 */ ~J3DMatColorAnm(); - /* 8055BDD0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80564098 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -618,7 +148,6 @@ extern "C" u8 mCutList__12daNpc_Maro_c[204]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -774,11 +303,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -800,10 +324,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -815,12 +336,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -1785,25 +1302,30 @@ SECTION_DATA static void* lit_7425[32] = { }; /* 80565BB8-80565BD8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Maro_MethodTable */ -SECTION_DATA static void* daNpc_Maro_MethodTable[8] = { - (void*)daNpc_Maro_Create__FPv, - (void*)daNpc_Maro_Delete__FPv, - (void*)daNpc_Maro_Execute__FPv, - (void*)daNpc_Maro_IsDelete__FPv, - (void*)daNpc_Maro_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Maro_MethodTable = { + (process_method_func)daNpc_Maro_Create__FPv, + (process_method_func)daNpc_Maro_Delete__FPv, + (process_method_func)daNpc_Maro_Execute__FPv, + (process_method_func)daNpc_Maro_IsDelete__FPv, + (process_method_func)daNpc_Maro_Draw__FPv, }; /* 80565BD8-80565C08 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_MARO */ -SECTION_DATA extern void* g_profile_NPC_MARO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02600000, (void*)&g_fpcLf_Method, - (void*)0x00001140, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01610000, (void*)&daNpc_Maro_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_MARO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_MARO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Maro_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 353, // mPriority + &daNpc_Maro_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80565C08-80565C14 000C78 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -2102,7 +1624,8 @@ asm void daNpc_Maro_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__15J3DTevKColorAnmFv.s" } @@ -2112,7 +1635,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__15J3DTevKColorAnmFv.s" } @@ -2122,7 +1646,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__14J3DTevColorAnmFv.s" } @@ -2132,7 +1657,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__14J3DTevColorAnmFv.s" } @@ -2142,7 +1668,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__11J3DTexNoAnmFv.s" } @@ -2152,7 +1679,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__11J3DTexNoAnmFv.s" } @@ -2162,7 +1690,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__12J3DTexMtxAnmFv.s" } @@ -2172,7 +1701,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__12J3DTexMtxAnmFv.s" } @@ -2182,7 +1712,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__14J3DMatColorAnmFv.s" } @@ -2192,7 +1723,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__14J3DMatColorAnmFv.s" } @@ -3052,7 +2584,8 @@ static bool daNpc_Maro_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/calc__11J3DTexNoAnmCFPUs.s" } @@ -3062,7 +2595,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__10cCcD_GSttsFv.s" } @@ -3072,7 +2606,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3082,7 +2617,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -3092,7 +2628,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__8cM3dGCylFv.s" } @@ -3102,7 +2639,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__8cM3dGAabFv.s" } @@ -3112,7 +2650,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__4cXyzFv.s" } @@ -3122,7 +2661,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__5csXyzFv.s" } @@ -3134,18 +2674,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/func_80563A0C.s" } #pragma pop /* 80563E10-80563E14 008970 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3153,14 +2695,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80563F10-80563F14 008A70 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3168,7 +2712,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3178,7 +2723,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__12dBgS_AcchCirFv.s" } @@ -3188,7 +2734,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__10dCcD_GSttsFv.s" } @@ -3198,7 +2745,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__12dBgS_ObjAcchFv.s" } @@ -3208,7 +2756,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/__dt__12J3DFrameCtrlFv.s" } @@ -3218,8 +2767,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3229,7 +2779,8 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } @@ -3240,7 +2791,8 @@ asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::lookActor(fopAc_ac_c* param_0, f32 param_1, u8 param_2) { +// asm void daNpcT_JntAnm_c::lookActor(fopAc_ac_c* param_0, f32 param_1, u8 param_2) { +extern "C" asm void lookActor__15daNpcT_JntAnm_cFP10fopAc_ac_cfUc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/lookActor__15daNpcT_JntAnm_cFP10fopAc_ac_cfUc.s" } @@ -3250,36 +2802,40 @@ asm void daNpcT_JntAnm_c::lookActor(fopAc_ac_c* param_0, f32 param_1, u8 param_2 #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cXyz::absXZ(Vec const& param_0) const { +// asm void cXyz::absXZ(Vec const& param_0) const { +extern "C" asm void absXZ__4cXyzCFRC3Vec() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/absXZ__4cXyzCFRC3Vec.s" } #pragma pop /* 80564630-80564634 009190 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80564634-8056463C 009194 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ -s32 daNpcT_c::getFootLJointNo() { +s32 getFootLJointNo__8daNpcT_cFv() { return -1; } /* 8056463C-80564644 00919C 0008+00 1/0 0/0 0/0 .text getFootRJointNo__8daNpcT_cFv */ -s32 daNpcT_c::getFootRJointNo() { +s32 getFootRJointNo__8daNpcT_cFv() { return -1; } /* 80564644-8056464C 0091A4 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8056464C-80564654 0091AC 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -3289,7 +2845,8 @@ void daNpcT_c::afterMoved() { } /* 80564658-80564660 0091B8 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3297,45 +2854,53 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80564678-8056467C 0091D8 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 8056467C-80564684 0091DC 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80564684-8056468C 0091E4 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } /* 8056468C-80564690 0091EC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80564690-80564694 0091F0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80564694-80564698 0091F4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80564698-8056469C 0091F8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -3473,31 +3038,35 @@ static asm void func_80564A00() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/func_80564A08.s" } #pragma pop /* 80564B20-80564B28 009680 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 80564B28-80564B30 009688 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80564B30-80564B38 009690 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } @@ -3505,7 +3074,8 @@ bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_maro/d_a_npc_maro/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.cpp b/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.cpp index 2a372e428e..6528080a49 100644 --- a/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.cpp +++ b/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.cpp @@ -1,368 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_midp -// +/** + * @file d_a_npc_midp.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_midp/d_a_npc_midp.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A731A4 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_midP_c { - /* 80A70C6C */ ~daNpc_midP_c(); - /* 80A70D90 */ void create(); - /* 80A71074 */ void CreateHeap(); - /* 80A714BC */ void Delete(); - /* 80A714F0 */ void Execute(); - /* 80A71510 */ void Draw(); - /* 80A715D4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A715F4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A7164C */ void getType(); - /* 80A7166C */ void isDelete(); - /* 80A7168C */ void reset(); - /* 80A717D4 */ void afterJntAnm(int); - /* 80A71860 */ void ctrlBtk(); - /* 80A7199C */ void setParam(); - /* 80A71A98 */ void setAfterTalkMotion(); - /* 80A71AF8 */ void srchActors(); - /* 80A71AFC */ void evtTalk(); - /* 80A71BFC */ void evtCutProc(); - /* 80A71CC4 */ void action(); - /* 80A71DB0 */ void beforeMove(); - /* 80A71E28 */ void setAttnPos(); - /* 80A72064 */ void setCollision(); - /* 80A7216C */ bool drawDbgInfo(); - /* 80A72174 */ void drawGhost(); - /* 80A721E0 */ void selectAction(); - /* 80A72228 */ void chkAction(int (daNpc_midP_c::*)(void*)); - /* 80A72254 */ void setAction(int (daNpc_midP_c::*)(void*)); - /* 80A722FC */ void wait(void*); - /* 80A72548 */ void talk(void*); - /* 80A737D0 */ daNpc_midP_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A7390C */ s32 getEyeballRMaterialNo(); - /* 80A73914 */ s32 getEyeballLMaterialNo(); - /* 80A7391C */ s32 getHeadJointNo(); - /* 80A73924 */ s32 getNeckJointNo(); - /* 80A7392C */ s32 getBackboneJointNo(); - /* 80A73934 */ void checkChangeJoint(int); - /* 80A73944 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_midP_Param_c { - /* 80A73954 */ ~daNpc_midP_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A72BDC */ ~cXyz(); - /* 80A73158 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80A72854 */ ~daNpcT_c(); - /* 80A72C54 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A73694 */ void ctrlSubFaceMotion(int); - /* 80A73698 */ s32 getFootLJointNo(); - /* 80A736A0 */ s32 getFootRJointNo(); - /* 80A736A8 */ bool getEyeballMaterialNo(); - /* 80A736B0 */ bool checkChangeEvt(); - /* 80A736B8 */ bool evtEndProc(); - /* 80A736C0 */ void afterMoved(); - /* 80A736C4 */ bool chkXYItems(); - /* 80A736CC */ void decTmr(); - /* 80A736E4 */ void drawOtherMdl(); - /* 80A736E8 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A736F0 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A736F8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A73728 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A73758 */ void changeAnm(int*, int*); - /* 80A7375C */ void changeBck(int*, int*); - /* 80A73760 */ void changeBtp(int*, int*); - /* 80A73764 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A7305C */ ~daNpcT_JntAnm_c(); - /* 80A73370 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A7348C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A7315C */ ~daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A7325C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A732B8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A731EC */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A72C18 */ ~csXyz(); - /* 80A73058 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A7387C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A738C4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A7280C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80A713A8 */ ~J3DTexNoAnm(); - /* 80A713F0 */ J3DTexNoAnm(); - /* 80A727DC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A71414 */ ~J3DTexMtxAnm(); - /* 80A71450 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A71300 */ ~J3DTevKColorAnm(); - /* 80A7133C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A71354 */ ~J3DTevColorAnm(); - /* 80A71390 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A71468 */ ~J3DMatColorAnm(); - /* 80A714A4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A73328 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -471,7 +114,6 @@ extern "C" u8 mCutList__12daNpc_midP_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -565,9 +207,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -582,8 +221,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -594,11 +231,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -731,25 +364,30 @@ SECTION_DATA static void* lit_4833[3] = { }; /* 80A73B8C-80A73BAC -00001 0020+00 1/0 0/0 0/0 .data daNpc_midP_MethodTable */ -SECTION_DATA static void* daNpc_midP_MethodTable[8] = { - (void*)daNpc_midP_Create__FPv, - (void*)daNpc_midP_Delete__FPv, - (void*)daNpc_midP_Execute__FPv, - (void*)daNpc_midP_IsDelete__FPv, - (void*)daNpc_midP_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_midP_MethodTable = { + (process_method_func)daNpc_midP_Create__FPv, + (process_method_func)daNpc_midP_Delete__FPv, + (process_method_func)daNpc_midP_Execute__FPv, + (process_method_func)daNpc_midP_IsDelete__FPv, + (process_method_func)daNpc_midP_Draw__FPv, }; /* 80A73BAC-80A73BDC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_MIDP */ -SECTION_DATA extern void* g_profile_NPC_MIDP[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02610000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01620000, (void*)&daNpc_midP_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_MIDP = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_MIDP, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_midP_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 354, // mPriority + &daNpc_midP_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A73BDC-80A73BE8 000128 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1000,7 +638,8 @@ asm void daNpc_midP_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__15J3DTevKColorAnmFv.s" } @@ -1010,7 +649,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__ct__15J3DTevKColorAnmFv.s" } @@ -1020,7 +660,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__14J3DTevColorAnmFv.s" } @@ -1030,7 +671,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__ct__14J3DTevColorAnmFv.s" } @@ -1040,7 +682,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__11J3DTexNoAnmFv.s" } @@ -1050,7 +693,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__ct__11J3DTexNoAnmFv.s" } @@ -1060,7 +704,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__12J3DTexMtxAnmFv.s" } @@ -1070,7 +715,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__ct__12J3DTexMtxAnmFv.s" } @@ -1080,7 +726,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__14J3DMatColorAnmFv.s" } @@ -1090,7 +737,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__ct__14J3DMatColorAnmFv.s" } @@ -1432,7 +1080,8 @@ static bool daNpc_midP_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/calc__11J3DTexNoAnmCFPUs.s" } @@ -1442,7 +1091,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__10cCcD_GSttsFv.s" } @@ -1452,7 +1102,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__8daNpcT_cFv.s" } @@ -1462,7 +1113,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__4cXyzFv.s" } @@ -1472,7 +1124,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__5csXyzFv.s" } @@ -1484,18 +1137,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/func_80A72C54.s" } #pragma pop /* 80A73058-80A7305C 0024D8 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1503,14 +1158,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A73158-80A7315C 0025D8 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1518,7 +1175,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1528,7 +1186,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1538,7 +1197,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__12dBgS_AcchCirFv.s" } @@ -1548,7 +1208,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__10dCcD_GSttsFv.s" } @@ -1558,7 +1219,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__12dBgS_ObjAcchFv.s" } @@ -1568,7 +1230,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__12J3DFrameCtrlFv.s" } @@ -1578,8 +1241,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1617,14 +1281,16 @@ COMPILER_STRIP_GATE(0x80A73A98, &lit_4784); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A73694-80A73698 002B14 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1650,7 +1316,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80A736B8-80A736C0 002B38 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1660,7 +1327,8 @@ void daNpcT_c::afterMoved() { } /* 80A736C4-80A736CC 002B44 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1668,25 +1336,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A736E4-80A736E8 002B64 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A736E8-80A736F0 002B68 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A736F0-80A736F8 002B70 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1695,7 +1367,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1706,29 +1379,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A73758-80A7375C 002BD8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A7375C-80A73760 002BDC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A73760-80A73764 002BE0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A73764-80A73768 002BE4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1782,7 +1460,8 @@ asm daNpc_midP_c::daNpc_midP_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__8cM3dGCylFv.s" } @@ -1792,7 +1471,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_midp/d_a_npc_midp/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.cpp b/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.cpp index d256fe5e20..d3019e03e7 100644 --- a/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.cpp +++ b/rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.cpp @@ -1,7 +1,7 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_mk -// +/** + * @file d_a_npc_mk.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_mk/d_a_npc_mk.h" #include "dol2asm.h" @@ -15,14 +15,11 @@ extern "C" static bool daNpc_Mk_Delete__FPv(); extern "C" static bool daNpc_Mk_Execute__FPv(); extern "C" static bool daNpc_Mk_Draw__FPv(); extern "C" static bool daNpc_Mk_IsDelete__FPv(); -extern "C" extern void* g_profile_NPC_MK[12]; // // External References: // -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; // // Declarations: @@ -55,23 +52,28 @@ static bool daNpc_Mk_IsDelete(void* param_0) { /* ############################################################################################## */ /* 80A73E08-80A73E28 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Mk_MethodTable */ -SECTION_DATA static void* daNpc_Mk_MethodTable[8] = { - (void*)daNpc_Mk_Create__FPv, - (void*)daNpc_Mk_Delete__FPv, - (void*)daNpc_Mk_Execute__FPv, - (void*)daNpc_Mk_IsDelete__FPv, - (void*)daNpc_Mk_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Mk_MethodTable = { + (process_method_func)daNpc_Mk_Create__FPv, + (process_method_func)daNpc_Mk_Delete__FPv, + (process_method_func)daNpc_Mk_Execute__FPv, + (process_method_func)daNpc_Mk_IsDelete__FPv, + (process_method_func)daNpc_Mk_Draw__FPv, }; /* 80A73E28-80A73E58 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_MK */ -SECTION_DATA extern void* g_profile_NPC_MK[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A80000, (void*)&g_fpcLf_Method, - (void*)0x00000001, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01AB0000, (void*)&daNpc_Mk_MethodTable, - (void*)0x020C4407, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_MK = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_MK, // mProcName + &g_fpcLf_Method.mBase, // sub_method + 0x00000001, // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 427, // mPriority + &daNpc_Mk_MethodTable, // sub_method + 0x020C4407, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; diff --git a/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.cpp b/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.cpp index bdfc370295..86d6c5960c 100644 --- a/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.cpp +++ b/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.cpp @@ -1,465 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_moi -// +/** + * @file d_a_npc_moi.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_moi/d_a_npc_moi.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80A7A5C8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A79D58 */ ~cXyz(); - /* 80A7A5C4 */ cXyz(); -}; - -struct daNpc_Moi_c { - /* 80A73F4C */ ~daNpc_Moi_c(); - /* 80A74150 */ void create(); - /* 80A74474 */ void CreateHeap(); - /* 80A749F8 */ void Delete(); - /* 80A74A2C */ void Execute(); - /* 80A74A4C */ void Draw(); - /* 80A74B80 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A74BA0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A74BF8 */ void getType(); - /* 80A74C6C */ void isDelete(); - /* 80A74D8C */ void reset(); - /* 80A7513C */ void chkMoiN(); - /* 80A75160 */ void afterJntAnm(int); - /* 80A751E4 */ void setParam(); - /* 80A75460 */ void checkChangeEvt(); - /* 80A75514 */ void setAfterTalkMotion(); - /* 80A755C8 */ void srchActors(); - /* 80A75664 */ void evtTalk(); - /* 80A75704 */ void evtCutProc(); - /* 80A757CC */ void action(); - /* 80A759F4 */ void beforeMove(); - /* 80A75AB8 */ void setAttnPos(); - /* 80A75E68 */ void setCollision(); - /* 80A760E0 */ bool drawDbgInfo(); - /* 80A760E8 */ void drawOtherMdl(); - /* 80A762A8 */ void afterSetMotionAnm(int, int, f32, int); - /* 80A762CC */ void changeAnm(int*, int*); - /* 80A7633C */ void changeBck(int*, int*); - /* 80A76384 */ void changeBtp(int*, int*); - /* 80A7643C */ void changeBtk(int*, int*); - /* 80A764B0 */ void selectAction(); - /* 80A765CC */ void chkAction(int (daNpc_Moi_c::*)(void*)); - /* 80A765F8 */ void setAction(int (daNpc_Moi_c::*)(void*)); - /* 80A766A0 */ void chkPlayerGetWoodShield(); - /* 80A766DC */ void setSSlash(int); - /* 80A76888 */ void chkPullOutSw(); - /* 80A768FC */ void pullOutSw(); - /* 80A76954 */ void chkSetInSw(); - /* 80A769C8 */ void setInSw(); - /* 80A76A20 */ void setSwAT(); - /* 80A76AFC */ void torch(); - /* 80A76C7C */ void injuryCheck(); - /* 80A76E10 */ void injuryTurn(cXyz); - /* 80A76F3C */ void injuryWalk(); - /* 80A770FC */ void poise(); - /* 80A77740 */ void cutDeliveredSw(int); - /* 80A77BA0 */ void cutAppearanceMoi(int); - /* 80A7838C */ void cutConversationWithUri(int); - /* 80A785FC */ void cutFindWolf(int); - /* 80A789D8 */ void wait(void*); - /* 80A78E0C */ void walk(void*); - /* 80A78FF4 */ void walkOnEggshell(void*); - /* 80A794C0 */ void rest(void*); - /* 80A79608 */ void talk(void*); - /* 80A7AC88 */ daNpc_Moi_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A7AE0C */ void getEyeballMaterialNo(); - /* 80A7AE3C */ s32 getHeadJointNo(); - /* 80A7AE44 */ s32 getNeckJointNo(); - /* 80A7AE4C */ bool getBackboneJointNo(); - /* 80A7AE54 */ void checkChangeJoint(int); - /* 80A7AE64 */ void checkRemoveJoint(int); - /* 80A7AE74 */ s32 getFootLJointNo(); - /* 80A7AE7C */ s32 getFootRJointNo(); - - static void* mCutNameList[5]; - static u8 mCutList[60]; -}; - -struct daNpc_Moi_Param_c { - /* 80A7AE84 */ ~daNpc_Moi_Param_c(); - - static u8 const m[188]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800842C0 */ void ChkAtHit(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80A79EA8 */ ~csXyz(); - /* 80A7AE08 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148058 */ void getTrnsfrmAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); - /* 8014B4A4 */ void turn(s16, int, int); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A799D0 */ ~daNpcT_c(); - /* 80A7A0C4 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A7AAB8 */ void ctrlSubFaceMotion(int); - /* 80A7AABC */ bool getEyeballLMaterialNo(); - /* 80A7AAC4 */ bool getEyeballRMaterialNo(); - /* 80A7AACC */ bool evtEndProc(); - /* 80A7AAD4 */ void afterMoved(); - /* 80A7AAD8 */ bool chkXYItems(); - /* 80A7AAE0 */ void decTmr(); - /* 80A7AAF8 */ void drawGhost(); - /* 80A7AAFC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A7AB04 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A7AB34 */ void getMotionAnm(daNpcT_motionAnmData_c); - - static u8 mCcDCyl[68]; - static u8 mCcDSph[64]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145DA0 */ void reverse(); - /* 80145DD0 */ void setNextIdx(int); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80A79EE4 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A7A4C8 */ ~daNpcT_JntAnm_c(); - /* 80A7A794 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A7A8B0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A79E60 */ ~daNpcT_ActorMngr_c(); - /* 80A79F2C */ daNpcT_ActorMngr_c(); -}; - -struct dSv_player_get_item_c { - /* 80033EC8 */ void isFirstBit(u8) const; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A7A610 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A7A680 */ ~dCcD_GStts(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); - /* 80A79D94 */ ~dCcD_Cyl(); - /* 80A7A040 */ dCcD_Cyl(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A7A6DC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dAttention_c { - /* 80A7772C */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 80A79F68 */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A79FB0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A79FF8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A79988 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXColor {}; - -struct LIGHT_INFLUENCE {}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80A748E4 */ ~J3DTexNoAnm(); - /* 80A7492C */ J3DTexNoAnm(); - /* 80A79958 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A74950 */ ~J3DTexMtxAnm(); - /* 80A7498C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A7483C */ ~J3DTevKColorAnm(); - /* 80A74878 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A74890 */ ~J3DTevColorAnm(); - /* 80A748CC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A749A4 */ ~J3DMatColorAnm(); - /* 80A749E0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80A7A74C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -595,7 +141,6 @@ extern "C" u8 mCutList__11daNpc_Moi_c[60]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -739,11 +284,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -765,10 +305,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; @@ -783,13 +320,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_Counter[12 + 4 /* padding */]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -1268,25 +800,30 @@ SECTION_DATA static void* lit_6275[7] = { }; /* 80A7BDCC-80A7BDEC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Moi_MethodTable */ -SECTION_DATA static void* daNpc_Moi_MethodTable[8] = { - (void*)daNpc_Moi_Create__FPv, - (void*)daNpc_Moi_Delete__FPv, - (void*)daNpc_Moi_Execute__FPv, - (void*)daNpc_Moi_IsDelete__FPv, - (void*)daNpc_Moi_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Moi_MethodTable = { + (process_method_func)daNpc_Moi_Create__FPv, + (process_method_func)daNpc_Moi_Delete__FPv, + (process_method_func)daNpc_Moi_Execute__FPv, + (process_method_func)daNpc_Moi_IsDelete__FPv, + (process_method_func)daNpc_Moi_Draw__FPv, }; /* 80A7BDEC-80A7BE1C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_MOI */ -SECTION_DATA extern void* g_profile_NPC_MOI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02620000, (void*)&g_fpcLf_Method, - (void*)0x00001674, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01630000, (void*)&daNpc_Moi_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_MOI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_MOI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Moi_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 355, // mPriority + &daNpc_Moi_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A7BE1C-80A7BE28 000CC0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1574,7 +1111,8 @@ asm void daNpc_Moi_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__15J3DTevKColorAnmFv.s" } @@ -1584,7 +1122,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__15J3DTevKColorAnmFv.s" } @@ -1594,7 +1133,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__14J3DTevColorAnmFv.s" } @@ -1604,7 +1144,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__14J3DTevColorAnmFv.s" } @@ -1614,7 +1155,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__11J3DTexNoAnmFv.s" } @@ -1624,7 +1166,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__11J3DTexNoAnmFv.s" } @@ -1634,7 +1177,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__12J3DTexMtxAnmFv.s" } @@ -1644,7 +1188,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__12J3DTexMtxAnmFv.s" } @@ -1654,7 +1199,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__14J3DMatColorAnmFv.s" } @@ -1664,7 +1210,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__14J3DMatColorAnmFv.s" } @@ -2444,7 +1991,8 @@ asm void daNpc_Moi_c::poise() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/getDistTable__12dAttention_cFi.s" } @@ -2666,7 +2214,8 @@ static bool daNpc_Moi_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/calc__11J3DTexNoAnmCFPUs.s" } @@ -2676,7 +2225,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__10cCcD_GSttsFv.s" } @@ -2686,7 +2236,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__8daNpcT_cFv.s" } @@ -2696,7 +2247,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__4cXyzFv.s" } @@ -2706,7 +2258,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Cyl::~dCcD_Cyl() { +// asm dCcD_Cyl::~dCcD_Cyl() { +extern "C" asm void __dt__8dCcD_CylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__8dCcD_CylFv.s" } @@ -2716,7 +2269,8 @@ asm dCcD_Cyl::~dCcD_Cyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2726,7 +2280,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__5csXyzFv.s" } @@ -2736,7 +2291,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__13daNpcT_Path_cFv.s" } @@ -2746,7 +2302,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2756,7 +2313,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__8cM3dGSphFv.s" } @@ -2766,7 +2324,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__8cM3dGCylFv.s" } @@ -2776,7 +2335,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__8cM3dGAabFv.s" } @@ -2786,7 +2346,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Cyl::dCcD_Cyl() { +// asm dCcD_Cyl::dCcD_Cyl() { +extern "C" asm void __ct__8dCcD_CylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__ct__8dCcD_CylFv.s" } @@ -2798,11 +2359,12 @@ asm dCcD_Cyl::dCcD_Cyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/func_80A7A0C4.s" } @@ -2812,14 +2374,16 @@ asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A7A5C4-80A7A5C8 006764 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2827,7 +2391,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2837,7 +2402,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__12dBgS_AcchCirFv.s" } @@ -2847,7 +2413,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__10dCcD_GSttsFv.s" } @@ -2857,7 +2424,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__12dBgS_ObjAcchFv.s" } @@ -2867,7 +2435,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/__dt__12J3DFrameCtrlFv.s" } @@ -2877,8 +2446,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2888,31 +2458,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A7AAB8-80A7AABC 006C58 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80A7AABC-80A7AAC4 006C5C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A7AAC4-80A7AACC 006C64 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A7AACC-80A7AAD4 006C6C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2922,7 +2497,8 @@ void daNpcT_c::afterMoved() { } /* 80A7AAD8-80A7AAE0 006C78 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2930,19 +2506,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A7AAF8-80A7AAFC 006C98 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A7AAFC-80A7AB04 006C9C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2951,7 +2530,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2962,7 +2542,8 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moi/d_a_npc_moi/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } @@ -3028,7 +2609,8 @@ asm daNpc_Moi_c::daNpc_Moi_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma pop /* 80A7AE08-80A7AE0C 006FA8 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.cpp b/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.cpp index 8448538987..b700c5d650 100644 --- a/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.cpp +++ b/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.cpp @@ -1,370 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_moir -// +/** + * @file d_a_npc_moir.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_moir/d_a_npc_moir.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcMoiR_c { - /* 80A7C16C */ daNpcMoiR_c(); - /* 80A7C380 */ ~daNpcMoiR_c(); - /* 80A7C580 */ void Create(); - /* 80A7C978 */ void CreateHeap(); - /* 80A7CE48 */ void Delete(); - /* 80A7CE7C */ void Execute(); - /* 80A7CEA0 */ void Draw(); - /* 80A7CEFC */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80A7D0CC */ void createHeapCallBack(fopAc_ac_c*); - /* 80A7D0EC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A7D138 */ void setExpressionAnm(int, bool); - /* 80A7D394 */ void setExpressionBtp(int); - /* 80A7D474 */ void setMotionAnm(int, f32); - /* 80A7D5C4 */ void reset(); - /* 80A7D73C */ void setWaitAction(); - /* 80A7D934 */ void wait_type0(void*); - /* 80A7DD94 */ void setMotion(int, f32, int); - /* 80A7DDD8 */ void setExpression(int, f32); - /* 80A7DE04 */ void wait_type1(void*); - /* 80A7E668 */ void wait_type2(void*); - /* 80A7E8C0 */ void talk(void*); - /* 80A7EFBC */ void multiTalk(void*); - /* 80A7F40C */ void fight(void*); - /* 80A7F9AC */ void demo(void*); - /* 80A7FEE8 */ void leave(void*); - /* 80A802C4 */ void EvCut_Introduction(int); - /* 80A803A0 */ void EvCut_Appear(int); - /* 80A8081C */ void EvCut_Appear2(int); - /* 80A810FC */ void setParam(); - /* 80A81274 */ void main(); - /* 80A815D4 */ void checkHeadGear(); - /* 80A818B4 */ void playMotion(); - /* 80A8210C */ void ctrlBtk(); - /* 80A821E0 */ void setAttnPos(); - /* 80A825A0 */ void lookat(); - /* 80A82878 */ void drawOtherMdls(); - /* 80A82900 */ bool drawDbgInfo(); - - static u8 mEvtSeqList[48]; -}; - -struct daNpcMoiR_Param_c { - /* 80A83240 */ ~daNpcMoiR_Param_c(); - - static u8 const m[116]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80A82ADC */ ~daNpcF_c(); - /* 80A82D28 */ daNpcF_c(); - /* 80A8309C */ void adjustShapeAngle(); - /* 80A830A0 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80A82A5C */ ~csXyz(); - /* 80A82A98 */ csXyz(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A82A9C */ ~cXyz(); - /* 80A82AD8 */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80A8298C */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80A82908 */ ~daNpcF_ActorMngr_c(); - /* 80A82950 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A82F88 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A82FE4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A82F18 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A7C2F0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A7C338 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A830A4 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80A7CD34 */ ~J3DTexNoAnm(); - /* 80A7CD7C */ J3DTexNoAnm(); - /* 80A810CC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A7CDA0 */ ~J3DTexMtxAnm(); - /* 80A7CDDC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A7CC8C */ ~J3DTevKColorAnm(); - /* 80A7CCC8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A7CCE0 */ ~J3DTevColorAnm(); - /* 80A7CD1C */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A7CDF4 */ ~J3DMatColorAnm(); - /* 80A7CE30 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80A83054 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -574,10 +215,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -593,11 +230,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -608,12 +241,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -922,25 +551,30 @@ SECTION_DATA static void* lit_5387[3] = { }; /* 80A83C38-80A83C58 -00001 0020+00 1/0 0/0 0/0 .data daNpcMoiR_MethodTable */ -SECTION_DATA static void* daNpcMoiR_MethodTable[8] = { - (void*)daNpcMoiR_Create__FPv, - (void*)daNpcMoiR_Delete__FPv, - (void*)daNpcMoiR_Execute__FPv, - (void*)daNpcMoiR_IsDelete__FPv, - (void*)daNpcMoiR_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcMoiR_MethodTable = { + (process_method_func)daNpcMoiR_Create__FPv, + (process_method_func)daNpcMoiR_Delete__FPv, + (process_method_func)daNpcMoiR_Execute__FPv, + (process_method_func)daNpcMoiR_IsDelete__FPv, + (process_method_func)daNpcMoiR_Draw__FPv, }; /* 80A83C58-80A83C88 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_MOIR */ -SECTION_DATA extern void* g_profile_NPC_MOIR[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029C0000, (void*)&g_fpcLf_Method, - (void*)0x00000E0C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x019F0000, (void*)&daNpcMoiR_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_MOIR = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_MOIR, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcMoiR_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 415, // mPriority + &daNpcMoiR_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A83C88-80A83C94 0003D8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1055,7 +689,8 @@ asm daNpcMoiR_c::daNpcMoiR_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__8cM3dGCylFv.s" } @@ -1065,7 +700,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__8cM3dGAabFv.s" } @@ -1169,7 +805,8 @@ asm void daNpcMoiR_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__15J3DTevKColorAnmFv.s" } @@ -1179,7 +816,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__15J3DTevKColorAnmFv.s" } @@ -1189,7 +827,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__14J3DTevColorAnmFv.s" } @@ -1199,7 +838,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__14J3DTevColorAnmFv.s" } @@ -1209,7 +849,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__11J3DTexNoAnmFv.s" } @@ -1219,7 +860,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__11J3DTexNoAnmFv.s" } @@ -1229,7 +871,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__12J3DTexMtxAnmFv.s" } @@ -1239,7 +882,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__12J3DTexMtxAnmFv.s" } @@ -1249,7 +893,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__14J3DMatColorAnmFv.s" } @@ -1259,7 +904,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__14J3DMatColorAnmFv.s" } @@ -2693,7 +2339,8 @@ static bool daNpcMoiR_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/calc__11J3DTexNoAnmCFPUs.s" } @@ -2873,7 +2520,8 @@ bool daNpcMoiR_c::drawDbgInfo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2883,7 +2531,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2893,7 +2542,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__15daNpcF_Lookat_cFv.s" } @@ -2903,14 +2553,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__5csXyzFv.s" } #pragma pop /* 80A82A98-80A82A9C 006A18 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2918,14 +2570,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__4cXyzFv.s" } #pragma pop /* 80A82AD8-80A82ADC 006A58 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2933,7 +2587,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__8daNpcF_cFv.s" } @@ -2943,7 +2598,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__ct__8daNpcF_cFv.s" } @@ -2953,7 +2609,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__12dBgS_AcchCirFv.s" } @@ -2963,7 +2620,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__10dCcD_GSttsFv.s" } @@ -2973,7 +2631,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__12dBgS_ObjAcchFv.s" } @@ -2983,19 +2642,22 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A8309C-80A830A0 00701C 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80A830A0-80A830A4 007020 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -3003,7 +2665,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_moir/d_a_npc_moir/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.cpp b/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.cpp index d65a47f784..8e5c53bc83 100644 --- a/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.cpp +++ b/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.cpp @@ -1,297 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_myna2 -// +/** + * @file d_a_npc_myna2.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266F48 */ void normalizeZP(); - /* 80A87BBC */ ~cXyz(); - /* 80A87BF8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpc_myna2_c { - /* 80A83E8C */ daNpc_myna2_c(); - /* 80A840A0 */ ~daNpc_myna2_c(); - /* 80A842C8 */ void create(); - /* 80A845AC */ void CreateHeap(); - /* 80A846E0 */ void Delete(); - /* 80A84714 */ void Execute(); - /* 80A84734 */ void Draw(); - /* 80A847A8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A847C8 */ void setParam(); - /* 80A848B4 */ void main(); - /* 80A84B64 */ void setAttnPos(); - /* 80A84DAC */ void setExpressionBtp(int); - /* 80A84EAC */ void setMotionAnm(int, f32); - /* 80A84FEC */ void setMotion(int, f32, int); - /* 80A85030 */ bool drawDbgInfo(); - /* 80A85038 */ void drawOtherMdls(); - /* 80A8503C */ void getTypeFromParam(); - /* 80A85094 */ void isDelete(); - /* 80A85160 */ void reset(); - /* 80A85358 */ void playMotion(); - /* 80A855E8 */ void chkAction(int (daNpc_myna2_c::*)(void*)); - /* 80A85614 */ void setAction(int (daNpc_myna2_c::*)(void*)); - /* 80A856BC */ void selectAction(); - /* 80A857B0 */ void doNormalAction(int); - /* 80A85894 */ void doEvent(); - /* 80A85BA4 */ void setLookMode(int); - /* 80A85BC8 */ void wait(void*); - /* 80A85C60 */ void waitHovering(void*); - /* 80A86194 */ void waitFailure(void*); - /* 80A862BC */ void waitGoal(void*); - /* 80A86400 */ void talk(void*); - /* 80A865FC */ void test(void*); - /* 80A866B0 */ void ECut_firstTalk(int); - /* 80A8684C */ void ECut_gameFailure(int); - /* 80A86A0C */ void ECut_gameGoal(int); - /* 80A86BEC */ void ECut_gameGoalSuccess(int); - /* 80A86E8C */ void calcHovering(int, int); - - static void* mEvtCutNameList[5]; - static u8 mEvtCutList[60]; -}; - -struct daNpc_myna2_Param_c { - /* 80A883C8 */ ~daNpc_myna2_Param_c(); - - static u8 const m[116]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084658 */ void ChkCoHit(); -}; - -struct J3DAnmTexPattern {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80A87BFC */ ~daNpcF_c(); - /* 80A87E48 */ daNpcF_c(); - /* 80A881BC */ bool ctrlBtk(); - /* 80A881C4 */ void adjustShapeAngle(); - /* 80A881C8 */ void setCollisions(); - /* 80A881CC */ bool setExpressionAnm(int, bool); - /* 80A881D4 */ void setExpression(int, f32); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 80A87AAC */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 80A87A28 */ ~daNpcF_ActorMngr_c(); - /* 80A87A70 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A880A8 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A88104 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80A88038 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A87B7C */ ~csXyz(); - /* 80A87BB8 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A84010 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A84058 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A881D8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2CreatureSumomo { - /* 802C1BE8 */ Z2CreatureSumomo(); - /* 802C1C24 */ void playSumomoBgm(u32); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A88174 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -480,11 +194,6 @@ extern "C" void playSumomoBgm__16Z2CreatureSumomoFUl(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -501,10 +210,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -514,9 +220,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__16Z2CreatureSumomo[12]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -853,25 +557,30 @@ SECTION_DATA static void* lit_5497[31] = { }; /* 80A889C4-80A889E4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_myna2_MethodTable */ -SECTION_DATA static void* daNpc_myna2_MethodTable[8] = { - (void*)daNpc_myna2_Create__FPv, - (void*)daNpc_myna2_Delete__FPv, - (void*)daNpc_myna2_Execute__FPv, - (void*)daNpc_myna2_IsDelete__FPv, - (void*)daNpc_myna2_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_myna2_MethodTable = { + (process_method_func)daNpc_myna2_Create__FPv, + (process_method_func)daNpc_myna2_Delete__FPv, + (process_method_func)daNpc_myna2_Execute__FPv, + (process_method_func)daNpc_myna2_IsDelete__FPv, + (process_method_func)daNpc_myna2_Draw__FPv, }; /* 80A889E4-80A88A14 -00001 0030+00 0/0 0/0 1/0 .data g_profile_MYNA2 */ -SECTION_DATA extern void* g_profile_MYNA2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02860000, (void*)&g_fpcLf_Method, - (void*)0x00000E34, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01890000, (void*)&daNpc_myna2_MethodTable, - (void*)0x08044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_MYNA2 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_MYNA2, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_myna2_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 393, // mPriority + &daNpc_myna2_MethodTable, // sub_method + 0x08044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A88A14-80A88A5C 000360 0048+00 2/2 0/0 0/0 .data __vt__13daNpc_myna2_c */ @@ -979,7 +688,8 @@ asm daNpc_myna2_c::daNpc_myna2_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__8cM3dGCylFv.s" } @@ -989,7 +699,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__8cM3dGAabFv.s" } @@ -2070,7 +1781,8 @@ static bool daNpc_myna2_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2080,7 +1792,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2090,7 +1803,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__15daNpcF_Lookat_cFv.s" } @@ -2100,14 +1814,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__5csXyzFv.s" } #pragma pop /* 80A87BB8-80A87BBC 003E18 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2115,14 +1831,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__4cXyzFv.s" } #pragma pop /* 80A87BF8-80A87BFC 003E58 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2130,7 +1848,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__8daNpcF_cFv.s" } @@ -2140,7 +1859,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__ct__8daNpcF_cFv.s" } @@ -2150,7 +1870,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__12dBgS_AcchCirFv.s" } @@ -2160,7 +1881,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__10dCcD_GSttsFv.s" } @@ -2170,7 +1892,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__12dBgS_ObjAcchFv.s" } @@ -2180,34 +1903,40 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80A881BC-80A881C4 00441C 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80A881C4-80A881C8 004424 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80A881C8-80A881CC 004428 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80A881CC-80A881D4 00442C 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80A881D4-80A881D8 004434 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } @@ -2215,7 +1944,8 @@ void daNpcF_c::setExpression(int param_0, f32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_myna2/d_a_npc_myna2/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp b/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp index 85ed5996ef..d94ae06572 100644 --- a/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp +++ b/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp @@ -247,10 +247,6 @@ SECTION_RODATA static f32 const lit_3993 = 2.0f; COMPILER_STRIP_GATE(0x80A92428, &lit_3993); #pragma pop -struct home_path_pnt { - /* 0x0 */ int mNo; - /* 0x4 */ Vec mPosition; -}; // Size: 0x10 /* 80A925F0-80A92850 000000 0260+00 3/3 0/0 0/0 .data home_path */ SECTION_DATA static home_path_pnt home_path[38] = { diff --git a/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.cpp b/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.cpp index ff4e9c922e..cc8b640af9 100644 --- a/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.cpp +++ b/rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.cpp @@ -1,7 +1,7 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_p2 -// +/** + * @file d_a_npc_p2.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_p2/d_a_npc_p2.h" #include "dol2asm.h" @@ -15,14 +15,11 @@ extern "C" static bool daNpc_P2Delete__FPv(); extern "C" static bool daNpc_P2Execute__FPv(); extern "C" static bool daNpc_P2Draw__FPv(); extern "C" static bool daNpc_P2IsDelete__FPv(); -extern "C" extern void* g_profile_NPC_P2[12]; // // External References: // -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; // // Declarations: @@ -55,23 +52,28 @@ static bool daNpc_P2IsDelete(void* param_0) { /* ############################################################################################## */ /* 80A92C28-80A92C48 -00001 0020+00 1/0 0/0 0/0 .data daNpc_P2MethodTable */ -SECTION_DATA static void* daNpc_P2MethodTable[8] = { - (void*)daNpc_P2Create__FPv, - (void*)daNpc_P2Delete__FPv, - (void*)daNpc_P2Execute__FPv, - (void*)daNpc_P2IsDelete__FPv, - (void*)daNpc_P2Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_P2MethodTable = { + (process_method_func)daNpc_P2Create__FPv, + (process_method_func)daNpc_P2Delete__FPv, + (process_method_func)daNpc_P2Execute__FPv, + (process_method_func)daNpc_P2IsDelete__FPv, + (process_method_func)daNpc_P2Draw__FPv, }; /* 80A92C48-80A92C78 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_P2 */ -SECTION_DATA extern void* g_profile_NPC_P2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A90000, (void*)&g_fpcLf_Method, - (void*)0x00000001, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01AC0000, (void*)&daNpc_P2MethodTable, - (void*)0x020C4407, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_P2 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_P2, // mProcName + &g_fpcLf_Method.mBase, // sub_method + 0x00000001, // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 428, // mPriority + &daNpc_P2MethodTable, // sub_method + 0x020C4407, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; diff --git a/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.cpp b/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.cpp index 75d32ad9e8..4ee11d0686 100644 --- a/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.cpp +++ b/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.cpp @@ -1,396 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_pachi_besu -// +/** + * @file d_a_npc_pachi_besu.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80A961D4 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A95B40 */ ~cXyz(); - /* 80A961D0 */ cXyz(); -}; - -struct daNpc_Pachi_Besu_c { - /* 80A92D6C */ ~daNpc_Pachi_Besu_c(); - /* 80A92EA4 */ void create(); - /* 80A9317C */ void CreateHeap(); - /* 80A93608 */ void Delete(); - /* 80A9363C */ void Execute(); - /* 80A9365C */ void Draw(); - /* 80A936F0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A93710 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A93768 */ void getType(); - /* 80A93788 */ void isDelete(); - /* 80A937A8 */ void reset(); - /* 80A93910 */ void afterJntAnm(int); - /* 80A9398C */ void setParam(); - /* 80A93A88 */ void afterMoved(); - /* 80A93D70 */ bool checkChangeEvt(); - /* 80A93D78 */ void setAfterTalkMotion(); - /* 80A93E24 */ void srchActors(); - /* 80A93EAC */ void evtTalk(); - /* 80A93FB0 */ void evtCutProc(); - /* 80A94078 */ void action(); - /* 80A94220 */ void beforeMove(); - /* 80A94298 */ void setAttnPos(); - /* 80A944F0 */ void setCollision(); - /* 80A94620 */ bool drawDbgInfo(); - /* 80A94628 */ void selectAction(); - /* 80A946A4 */ void chkAction(int (daNpc_Pachi_Besu_c::*)(void*)); - /* 80A946D0 */ void setAction(int (daNpc_Pachi_Besu_c::*)(void*)); - /* 80A94778 */ void wait(void*); - /* 80A949EC */ void talk(void*); - /* 80A94A7C */ void _turn_to_link(s16); - /* 80A94B24 */ void _turn_pos(cXyz const&); - /* 80A94AC8 */ void _turn_pos(cXyz const&, s16); - /* 80A94B64 */ void cutTutrialBegin(int); - /* 80A94BF8 */ bool _cutTutrialBegin_Init(int const&); - /* 80A94C00 */ bool _cutTutrialBegin_Main(int const&); - /* 80A94C08 */ void cutTutrialBegin_Skip(int); - /* 80A94C9C */ bool _cutTutrialBegin_Skip_Init(int const&); - /* 80A94CA4 */ bool _cutTutrialBegin_Skip_Main(int const&); - /* 80A94CAC */ void cutTutrialClear(int); - /* 80A94D40 */ void _cutTutrialClear_Init(int const&); - /* 80A94E38 */ void _cutTutrialClear_Main(int const&); - /* 80A94ECC */ void cutTalk(int); - /* 80A94F60 */ bool _cutTalk_Init(int const&); - /* 80A94F68 */ void _cutTalk_Main(int const&); - /* 80A94FC4 */ void cutTalk2(int); - /* 80A95058 */ bool _cutTalk2_Init(int const&); - /* 80A95060 */ void _cutTalk2_Main(int const&); - /* 80A950BC */ void cut1stHit_KakasiBody(int); - /* 80A95150 */ void _cut1stHit_KakasiBody_Init(int const&); - /* 80A951DC */ void _cut1stHit_KakasiBody_Main(int const&); - /* 80A95270 */ void cutTutrialSelectGiveUp(int); - /* 80A95304 */ bool _cutTutrialSelectGiveUp_Init(int const&); - /* 80A9530C */ void _cutTutrialSelectGiveUp_Main(int const&); - /* 80A95408 */ void cutTutrialGiveUp(int); - /* 80A9549C */ bool _cutTutrialGiveUp_Init(int const&); - /* 80A954A4 */ void _cutTutrialGiveUp_Main(int const&); - /* 80A954E0 */ void cutTutrialContinue(int); - /* 80A95574 */ bool _cutTutrialContinue_Init(int const&); - /* 80A9557C */ void _cutTutrialContinue_Main(int const&); - /* 80A955B8 */ void cutTutrialCaution(int); - /* 80A9564C */ bool _cutTutrialCaution_Init(int const&); - /* 80A95654 */ void _cutTutrialCaution_Main(int const&); - /* 80A968F4 */ daNpc_Pachi_Besu_c(daNpcT_faceMotionAnmData_c const*, - daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A969C0 */ s32 getEyeballMaterialNo(); - /* 80A969C8 */ s32 getHeadJointNo(); - /* 80A969D0 */ s32 getNeckJointNo(); - /* 80A969D8 */ bool getBackboneJointNo(); - /* 80A969E0 */ void checkChangeJoint(int); - /* 80A969F0 */ void checkRemoveJoint(int); - - static void* mCutNameList[11]; - static u8 mCutList[132]; -}; - -struct daNpc_Pachi_Besu_Param_c { - /* 80A96A00 */ ~daNpc_Pachi_Besu_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A957B8 */ ~daNpcT_c(); - /* 80A95CCC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A966C4 */ void ctrlSubFaceMotion(int); - /* 80A966C8 */ s32 getFootLJointNo(); - /* 80A966D0 */ s32 getFootRJointNo(); - /* 80A966D8 */ bool getEyeballLMaterialNo(); - /* 80A966E0 */ bool getEyeballRMaterialNo(); - /* 80A966E8 */ bool evtEndProc(); - /* 80A966F0 */ bool chkXYItems(); - /* 80A966F8 */ void decTmr(); - /* 80A96710 */ void drawOtherMdl(); - /* 80A96714 */ void drawGhost(); - /* 80A96718 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A96720 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A96728 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A96758 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A96788 */ void changeAnm(int*, int*); - /* 80A9678C */ void changeBck(int*, int*); - /* 80A96790 */ void changeBtp(int*, int*); - /* 80A96794 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A960D4 */ ~daNpcT_JntAnm_c(); - /* 80A963A0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A964BC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A95BB8 */ ~daNpcT_ActorMngr_c(); - /* 80A95C00 */ daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A9628C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A962E8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A9621C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A95B7C */ ~csXyz(); - /* 80A960D0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A95C3C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A95C84 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A95770 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A934F4 */ ~J3DTexNoAnm(); - /* 80A9353C */ J3DTexNoAnm(); - /* 80A95740 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A93560 */ ~J3DTexMtxAnm(); - /* 80A9359C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A9344C */ ~J3DTevKColorAnm(); - /* 80A93488 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A934A0 */ ~J3DTevColorAnm(); - /* 80A934DC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A935B4 */ ~J3DMatColorAnm(); - /* 80A935F0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A96358 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -532,7 +147,6 @@ extern "C" u8 mCutList__18daNpc_Pachi_Besu_c[132]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -632,10 +246,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -650,8 +260,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -662,9 +270,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -1183,25 +788,30 @@ SECTION_DATA static void* lit_5022[3] = { }; /* 80A97900-80A97920 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Pachi_Besu_MethodTable */ -SECTION_DATA static void* daNpc_Pachi_Besu_MethodTable[8] = { - (void*)daNpc_Pachi_Besu_Create__FPv, - (void*)daNpc_Pachi_Besu_Delete__FPv, - (void*)daNpc_Pachi_Besu_Execute__FPv, - (void*)daNpc_Pachi_Besu_IsDelete__FPv, - (void*)daNpc_Pachi_Besu_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Pachi_Besu_MethodTable = { + (process_method_func)daNpc_Pachi_Besu_Create__FPv, + (process_method_func)daNpc_Pachi_Besu_Delete__FPv, + (process_method_func)daNpc_Pachi_Besu_Execute__FPv, + (process_method_func)daNpc_Pachi_Besu_IsDelete__FPv, + (process_method_func)daNpc_Pachi_Besu_Draw__FPv, }; /* 80A97920-80A97950 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PACHI_BESU */ -SECTION_DATA extern void* g_profile_NPC_PACHI_BESU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026F0000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01700000, (void*)&daNpc_Pachi_Besu_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PACHI_BESU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PACHI_BESU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Pachi_Besu_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 368, // mPriority + &daNpc_Pachi_Besu_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A97950-80A9795C 000D10 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1453,7 +1063,8 @@ asm void daNpc_Pachi_Besu_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__15J3DTevKColorAnmFv.s" } @@ -1463,7 +1074,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__15J3DTevKColorAnmFv.s" } @@ -1473,7 +1085,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__14J3DTevColorAnmFv.s" } @@ -1483,7 +1096,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__14J3DTevColorAnmFv.s" } @@ -1493,7 +1107,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__11J3DTexNoAnmFv.s" } @@ -1503,7 +1118,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__11J3DTexNoAnmFv.s" } @@ -1513,7 +1129,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__12J3DTexMtxAnmFv.s" } @@ -1523,7 +1140,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__12J3DTexMtxAnmFv.s" } @@ -1533,7 +1151,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__14J3DMatColorAnmFv.s" } @@ -1543,7 +1162,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__14J3DMatColorAnmFv.s" } @@ -2376,7 +1996,8 @@ static bool daNpc_Pachi_Besu_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/calc__11J3DTexNoAnmCFPUs.s" } @@ -2386,7 +2007,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__10cCcD_GSttsFv.s" } @@ -2396,7 +2018,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__8daNpcT_cFv.s" } @@ -2406,7 +2029,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__4cXyzFv.s" } @@ -2416,7 +2040,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__5csXyzFv.s" } @@ -2426,7 +2051,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2436,7 +2062,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2446,7 +2073,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__8cM3dGCylFv.s" } @@ -2456,7 +2084,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__8cM3dGAabFv.s" } @@ -2468,18 +2097,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/func_80A95CCC.s" } #pragma pop /* 80A960D0-80A960D4 003450 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2487,14 +2118,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A961D0-80A961D4 003550 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2502,7 +2135,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2512,7 +2146,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__12dBgS_AcchCirFv.s" } @@ -2522,7 +2157,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__10dCcD_GSttsFv.s" } @@ -2532,7 +2168,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__12dBgS_ObjAcchFv.s" } @@ -2542,7 +2179,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/__dt__12J3DFrameCtrlFv.s" } @@ -2552,8 +2190,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2563,14 +2202,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A966C4-80A966C8 003A44 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2586,23 +2227,27 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A966D8-80A966E0 003A58 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A966E0-80A966E8 003A60 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A966E8-80A966F0 003A68 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 80A966F0-80A966F8 003A70 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2610,30 +2255,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A96710-80A96714 003A90 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A96714-80A96718 003A94 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A96718-80A96720 003A98 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A96720-80A96728 003AA0 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2642,7 +2292,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2653,29 +2304,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_besu/d_a_npc_pachi_besu/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80A96788-80A9678C 003B08 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A9678C-80A96790 003B0C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A96790-80A96794 003B10 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A96794-80A96798 003B14 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.cpp b/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.cpp index 3c14219f5b..96910e3890 100644 --- a/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.cpp +++ b/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.cpp @@ -1,395 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_pachi_maro -// +/** + * @file d_a_npc_pachi_maro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80A9B054 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80A9A9C0 */ ~cXyz(); - /* 80A9B050 */ cXyz(); -}; - -struct daNpc_Pachi_Maro_c { - /* 80A97C8C */ ~daNpc_Pachi_Maro_c(); - /* 80A97DC4 */ void create(); - /* 80A9809C */ void CreateHeap(); - /* 80A984DC */ void Delete(); - /* 80A98510 */ void Execute(); - /* 80A98530 */ void Draw(); - /* 80A985C4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A985E4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A9863C */ void getType(); - /* 80A9865C */ void isDelete(); - /* 80A9867C */ void reset(); - /* 80A987F4 */ void afterJntAnm(int); - /* 80A98870 */ void setParam(); - /* 80A9896C */ bool checkChangeEvt(); - /* 80A98974 */ void setAfterTalkMotion(); - /* 80A98A10 */ void srchActors(); - /* 80A98A98 */ void evtTalk(); - /* 80A98B9C */ void evtCutProc(); - /* 80A98C64 */ void action(); - /* 80A98DE8 */ void beforeMove(); - /* 80A98E60 */ void afterMoved(); - /* 80A98FB4 */ void setAttnPos(); - /* 80A9928C */ void setCollision(); - /* 80A99394 */ bool drawDbgInfo(); - /* 80A9939C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80A99428 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80A994B4 */ void selectAction(); - /* 80A99530 */ void chkAction(int (daNpc_Pachi_Maro_c::*)(void*)); - /* 80A9955C */ void setAction(int (daNpc_Pachi_Maro_c::*)(void*)); - /* 80A99604 */ void wait(void*); - /* 80A9986C */ void talk(void*); - /* 80A998FC */ void _turn_to_link(s16); - /* 80A999A4 */ void _turn_pos(cXyz const&); - /* 80A99948 */ void _turn_pos(cXyz const&, s16); - /* 80A999E4 */ void cutTutrialBegin(int); - /* 80A99A78 */ bool _cutTutrialBegin_Init(int const&); - /* 80A99A80 */ bool _cutTutrialBegin_Main(int const&); - /* 80A99A88 */ void cutTutrialBegin_Skip(int); - /* 80A99B1C */ bool _cutTutrialBegin_Skip_Init(int const&); - /* 80A99B24 */ bool _cutTutrialBegin_Skip_Main(int const&); - /* 80A99B2C */ void cutTutrialClear(int); - /* 80A99BC0 */ void _cutTutrialClear_Init(int const&); - /* 80A99CB8 */ void _cutTutrialClear_Main(int const&); - /* 80A99D4C */ void cutTalk(int); - /* 80A99DE0 */ bool _cutTalk_Init(int const&); - /* 80A99DE8 */ void _cutTalk_Main(int const&); - /* 80A99E44 */ void cutTalk2(int); - /* 80A99ED8 */ bool _cutTalk2_Init(int const&); - /* 80A99EE0 */ void _cutTalk2_Main(int const&); - /* 80A99F3C */ void cut1stHit_KakasiBody(int); - /* 80A99FD0 */ void _cut1stHit_KakasiBody_Init(int const&); - /* 80A9A05C */ void _cut1stHit_KakasiBody_Main(int const&); - /* 80A9A0F0 */ void cutTutrialSelectGiveUp(int); - /* 80A9A184 */ bool _cutTutrialSelectGiveUp_Init(int const&); - /* 80A9A18C */ void _cutTutrialSelectGiveUp_Main(int const&); - /* 80A9A288 */ void cutTutrialGiveUp(int); - /* 80A9A31C */ bool _cutTutrialGiveUp_Init(int const&); - /* 80A9A324 */ void _cutTutrialGiveUp_Main(int const&); - /* 80A9A360 */ void cutTutrialContinue(int); - /* 80A9A3F4 */ bool _cutTutrialContinue_Init(int const&); - /* 80A9A3FC */ void _cutTutrialContinue_Main(int const&); - /* 80A9A438 */ void cutTutrialCaution(int); - /* 80A9A4CC */ bool _cutTutrialCaution_Init(int const&); - /* 80A9A4D4 */ void _cutTutrialCaution_Main(int const&); - /* 80A9B714 */ daNpc_Pachi_Maro_c(daNpcT_faceMotionAnmData_c const*, - daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A9B7E0 */ bool getEyeballMaterialNo(); - /* 80A9B7E8 */ s32 getHeadJointNo(); - /* 80A9B7F0 */ s32 getNeckJointNo(); - /* 80A9B7F8 */ bool getBackboneJointNo(); - /* 80A9B800 */ void checkChangeJoint(int); - /* 80A9B810 */ void checkRemoveJoint(int); - - static void* mCutNameList[11]; - static u8 mCutList[132]; -}; - -struct daNpc_Pachi_Maro_Param_c { - /* 80A9B820 */ ~daNpc_Pachi_Maro_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80A9A638 */ ~daNpcT_c(); - /* 80A9AB4C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80A9B544 */ void ctrlSubFaceMotion(int); - /* 80A9B548 */ s32 getFootLJointNo(); - /* 80A9B550 */ s32 getFootRJointNo(); - /* 80A9B558 */ bool getEyeballLMaterialNo(); - /* 80A9B560 */ bool getEyeballRMaterialNo(); - /* 80A9B568 */ bool evtEndProc(); - /* 80A9B570 */ bool chkXYItems(); - /* 80A9B578 */ void decTmr(); - /* 80A9B590 */ void drawOtherMdl(); - /* 80A9B594 */ void drawGhost(); - /* 80A9B598 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80A9B5A0 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80A9B5A8 */ void changeAnm(int*, int*); - /* 80A9B5AC */ void changeBck(int*, int*); - /* 80A9B5B0 */ void changeBtp(int*, int*); - /* 80A9B5B4 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80A9AF54 */ ~daNpcT_JntAnm_c(); - /* 80A9B220 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80A9B33C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80A9AA38 */ ~daNpcT_ActorMngr_c(); - /* 80A9AA80 */ daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80A9B10C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80A9B168 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80A9B09C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80A9A9FC */ ~csXyz(); - /* 80A9AF50 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80A9AABC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80A9AB04 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80A9A5F0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A983C8 */ ~J3DTexNoAnm(); - /* 80A98410 */ J3DTexNoAnm(); - /* 80A9A5C0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A98434 */ ~J3DTexMtxAnm(); - /* 80A98470 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A98320 */ ~J3DTevKColorAnm(); - /* 80A9835C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A98374 */ ~J3DTevColorAnm(); - /* 80A983B0 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A98488 */ ~J3DMatColorAnm(); - /* 80A984C4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80A9B1D8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -531,7 +147,6 @@ extern "C" u8 mCutList__18daNpc_Pachi_Maro_c[132]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -629,9 +244,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -646,8 +258,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -658,9 +268,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -1040,25 +647,30 @@ SECTION_DATA static void* lit_4975[3] = { }; /* 80A9BFBC-80A9BFDC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Pachi_Maro_MethodTable */ -SECTION_DATA static void* daNpc_Pachi_Maro_MethodTable[8] = { - (void*)daNpc_Pachi_Maro_Create__FPv, - (void*)daNpc_Pachi_Maro_Delete__FPv, - (void*)daNpc_Pachi_Maro_Execute__FPv, - (void*)daNpc_Pachi_Maro_IsDelete__FPv, - (void*)daNpc_Pachi_Maro_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Pachi_Maro_MethodTable = { + (process_method_func)daNpc_Pachi_Maro_Create__FPv, + (process_method_func)daNpc_Pachi_Maro_Delete__FPv, + (process_method_func)daNpc_Pachi_Maro_Execute__FPv, + (process_method_func)daNpc_Pachi_Maro_IsDelete__FPv, + (process_method_func)daNpc_Pachi_Maro_Draw__FPv, }; /* 80A9BFDC-80A9C00C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PACHI_MARO */ -SECTION_DATA extern void* g_profile_NPC_PACHI_MARO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02710000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01720000, (void*)&daNpc_Pachi_Maro_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PACHI_MARO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PACHI_MARO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Pachi_Maro_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 370, // mPriority + &daNpc_Pachi_Maro_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80A9C00C-80A9C018 000594 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1310,7 +922,8 @@ asm void daNpc_Pachi_Maro_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__15J3DTevKColorAnmFv.s" } @@ -1320,7 +933,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__15J3DTevKColorAnmFv.s" } @@ -1330,7 +944,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__14J3DTevColorAnmFv.s" } @@ -1340,7 +955,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__14J3DTevColorAnmFv.s" } @@ -1350,7 +966,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__11J3DTexNoAnmFv.s" } @@ -1360,7 +977,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__11J3DTexNoAnmFv.s" } @@ -1370,7 +988,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__12J3DTexMtxAnmFv.s" } @@ -1380,7 +999,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__12J3DTexMtxAnmFv.s" } @@ -1390,7 +1010,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__14J3DMatColorAnmFv.s" } @@ -1400,7 +1021,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__14J3DMatColorAnmFv.s" } @@ -2152,7 +1774,8 @@ static bool daNpc_Pachi_Maro_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/calc__11J3DTexNoAnmCFPUs.s" } @@ -2162,7 +1785,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__10cCcD_GSttsFv.s" } @@ -2172,7 +1796,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__8daNpcT_cFv.s" } @@ -2182,7 +1807,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__4cXyzFv.s" } @@ -2192,7 +1818,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__5csXyzFv.s" } @@ -2202,7 +1829,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2212,7 +1840,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2222,7 +1851,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__8cM3dGCylFv.s" } @@ -2232,7 +1862,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__8cM3dGAabFv.s" } @@ -2244,18 +1875,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/func_80A9AB4C.s" } #pragma pop /* 80A9AF50-80A9AF54 0033B0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2263,14 +1896,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80A9B050-80A9B054 0034B0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2278,7 +1913,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2288,7 +1924,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__12dBgS_AcchCirFv.s" } @@ -2298,7 +1935,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__10dCcD_GSttsFv.s" } @@ -2308,7 +1946,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__12dBgS_ObjAcchFv.s" } @@ -2318,7 +1957,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/__dt__12J3DFrameCtrlFv.s" } @@ -2328,8 +1968,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2339,14 +1980,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80A9B544-80A9B548 0039A4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2362,23 +2005,27 @@ s32 daNpcT_c::getFootRJointNo() { /* 80A9B558-80A9B560 0039B8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80A9B560-80A9B568 0039C0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80A9B568-80A9B570 0039C8 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 80A9B570-80A9B578 0039D0 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2386,50 +2033,59 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_maro/d_a_npc_pachi_maro/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80A9B590-80A9B594 0039F0 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80A9B594-80A9B598 0039F4 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80A9B598-80A9B5A0 0039F8 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A9B5A0-80A9B5A8 003A00 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } /* 80A9B5A8-80A9B5AC 003A08 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80A9B5AC-80A9B5B0 003A0C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80A9B5B0-80A9B5B4 003A10 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80A9B5B4-80A9B5B8 003A14 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.cpp b/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.cpp index 2ecd8fd508..7cbf525414 100644 --- a/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.cpp +++ b/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.cpp @@ -1,438 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_pachi_taro -// +/** + * @file d_a_npc_pachi_taro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AA0D74 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AA06E0 */ ~cXyz(); - /* 80AA0D70 */ cXyz(); -}; - -struct daNpc_Pachi_Taro_c { - /* 80A9C28C */ ~daNpc_Pachi_Taro_c(); - /* 80A9C3C4 */ void create(); - /* 80A9C69C */ void CreateHeap(); - /* 80A9CBD8 */ void Delete(); - /* 80A9CC0C */ void Execute(); - /* 80A9CC2C */ void Draw(); - /* 80A9CCC0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A9CCE0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80A9CD38 */ bool getType(); - /* 80A9CD40 */ void isDelete(); - /* 80A9CD60 */ void reset(); - /* 80A9CF10 */ void afterJntAnm(int); - /* 80A9CF9C */ void setParam(); - /* 80A9D098 */ bool checkChangeEvt(); - /* 80A9D0A0 */ void setAfterTalkMotion(); - /* 80A9D164 */ void srchActors(); - /* 80A9D27C */ void srchDistTag1(); - /* 80A9D2A8 */ void _srch_DistTag1_main(void*, void*); - /* 80A9D310 */ void srchDistTag2(); - /* 80A9D33C */ void _srch_DistTag2_main(void*, void*); - /* 80A9D3A4 */ void srchEscapeTag1(); - /* 80A9D3D0 */ void _srch_EscapeTag1_main(void*, void*); - /* 80A9D438 */ void srchEscapeTag2(); - /* 80A9D464 */ void _srch_EscapeTag2_main(void*, void*); - /* 80A9D4CC */ void evtTalk(); - /* 80A9D5D0 */ void evtCutProc(); - /* 80A9D698 */ void action(); - /* 80A9D840 */ void beforeMove(); - /* 80A9D8B8 */ void setAttnPos(); - /* 80A9DB0C */ void setCollision(); - /* 80A9DC14 */ bool drawDbgInfo(); - /* 80A9DC1C */ void drawOtherMdl(); - /* 80A9DD24 */ void selectAction(); - /* 80A9DDA0 */ void chkAction(int (daNpc_Pachi_Taro_c::*)(void*)); - /* 80A9DDCC */ void setAction(int (daNpc_Pachi_Taro_c::*)(void*)); - /* 80A9DE74 */ void wait(void*); - /* 80A9E154 */ void setMesPat(); - /* 80A9E224 */ void _turn_to_link(s16); - /* 80A9E270 */ void _turn_pos(cXyz const&, s16); - /* 80A9E2CC */ void _turn_pos(cXyz const&); - /* 80A9E30C */ void talk_cancel(); - /* 80A9E364 */ void watch_tutrial(); - /* 80A9E3E4 */ void chkDistTag(); - /* 80A9E458 */ void chkEscapeTag(); - /* 80A9E56C */ void chkTarget(); - /* 80A9E700 */ void clr_tagHit(); - /* 80A9E778 */ void allTagPosSet(cXyz const&); - /* 80A9E80C */ void allLookPosSet(cXyz const&); - /* 80A9E8A0 */ void talk(void*); - /* 80A9E910 */ void evtEndProc(); - /* 80A9E9E8 */ void cutTutrialBegin(int); - /* 80A9EAA0 */ void _cutTutrialBegin_Init(int const&); - /* 80A9EB3C */ void _cutTutrialBegin_Main(int const&); - /* 80A9EC5C */ void cutTutrialBegin_Skip(int); - /* 80A9ECF0 */ void _cutTutrialBegin_Skip_Init(int const&); - /* 80A9ED28 */ void _cutTutrialBegin_Skip_Main(int const&); - /* 80A9ED40 */ void cutTutrialClear(int); - /* 80A9EDD4 */ void _cutTutrialClear_Init(int const&); - /* 80A9EEBC */ void _cutTutrialClear_Main(int const&); - /* 80A9EFC0 */ void cutTalk(int); - /* 80A9F0DC */ void _cutTalk_Init(int const&); - /* 80A9F188 */ void _cutTalk_Main(int const&, int const&); - /* 80A9F324 */ void cutTalk2(int); - /* 80A9F440 */ void _cutTalk2_Init(int const&); - /* 80A9F4EC */ void _cutTalk2_Main(int const&, int const&); - /* 80A9F688 */ void cut1stHit_KakasiBody(int); - /* 80A9F71C */ void _cut1stHit_KakasiBody_Init(int const&); - /* 80A9F83C */ void _cut1stHit_KakasiBody_Main(int const&); - /* 80A9F9C4 */ void cutTutrialSelectGiveUp(int); - /* 80A9FA58 */ void _cutTutrialSelectGiveUp_Init(int const&); - /* 80A9FB08 */ void _cutTutrialSelectGiveUp_Main(int const&); - /* 80A9FCEC */ void cutTutrialGiveUp(int); - /* 80A9FD80 */ void _cutTutrialGiveUp_Init(int const&); - /* 80A9FE34 */ void _cutTutrialGiveUp_Main(int const&); - /* 80A9FFAC */ void cutTutrialCaution(int); - /* 80AA0040 */ void _cutTutrialCaution_Init(int const&); - /* 80AA0088 */ void _cutTutrialCaution_Main(int const&); - /* 80AA0108 */ void cutTutrialContinue(int); - /* 80AA019C */ bool _cutTutrialContinue_Init(int const&); - /* 80AA01A4 */ void _cutTutrialContinue_Main(int const&); - /* 80AA148C */ daNpc_Pachi_Taro_c(daNpcT_faceMotionAnmData_c const*, - daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AA1558 */ s32 getEyeballMaterialNo(); - /* 80AA1560 */ s32 getHeadJointNo(); - /* 80AA1568 */ s32 getNeckJointNo(); - /* 80AA1570 */ bool getBackboneJointNo(); - /* 80AA1578 */ void checkChangeJoint(int); - /* 80AA1588 */ void checkRemoveJoint(int); - - static void* mCutNameList[11]; - static u8 mCutList[132]; -}; - -struct daNpc_Pachi_Taro_Param_c { - /* 80AA1598 */ ~daNpc_Pachi_Taro_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80AA0358 */ ~daNpcT_c(); - /* 80AA086C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AA1264 */ void ctrlSubFaceMotion(int); - /* 80AA1268 */ s32 getFootLJointNo(); - /* 80AA1270 */ s32 getFootRJointNo(); - /* 80AA1278 */ bool getEyeballLMaterialNo(); - /* 80AA1280 */ bool getEyeballRMaterialNo(); - /* 80AA1288 */ void afterMoved(); - /* 80AA128C */ bool chkXYItems(); - /* 80AA1294 */ void decTmr(); - /* 80AA12AC */ void drawGhost(); - /* 80AA12B0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AA12B8 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AA12C0 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AA12F0 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AA1320 */ void changeAnm(int*, int*); - /* 80AA1324 */ void changeBck(int*, int*); - /* 80AA1328 */ void changeBtp(int*, int*); - /* 80AA132C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AA0C74 */ ~daNpcT_JntAnm_c(); - /* 80AA0F40 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AA105C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AA0758 */ ~daNpcT_ActorMngr_c(); - /* 80AA07A0 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A540 */ void getNowMsgNo(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 80042958 */ void setSkipZev(void*, char*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AA0E2C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AA0E88 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AA0DBC */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AA071C */ ~csXyz(); - /* 80AA0C70 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AA07DC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AA0824 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AA0310 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80A9CAC4 */ ~J3DTexNoAnm(); - /* 80A9CB0C */ J3DTexNoAnm(); - /* 80AA02E0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80A9CB30 */ ~J3DTexMtxAnm(); - /* 80A9CB6C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80A9CA1C */ ~J3DTevKColorAnm(); - /* 80A9CA58 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80A9CA70 */ ~J3DTevColorAnm(); - /* 80A9CAAC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80A9CB84 */ ~J3DMatColorAnm(); - /* 80A9CBC0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AA0EF8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -591,7 +164,6 @@ extern "C" u8 mCutList__18daNpc_Pachi_Taro_c[132]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); @@ -708,9 +280,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -729,8 +298,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -741,10 +308,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -1410,25 +973,30 @@ SECTION_DATA static void* lit_5741[26] = { }; /* 80AA29C4-80AA29E4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Pachi_Taro_MethodTable */ -SECTION_DATA static void* daNpc_Pachi_Taro_MethodTable[8] = { - (void*)daNpc_Pachi_Taro_Create__FPv, - (void*)daNpc_Pachi_Taro_Delete__FPv, - (void*)daNpc_Pachi_Taro_Execute__FPv, - (void*)daNpc_Pachi_Taro_IsDelete__FPv, - (void*)daNpc_Pachi_Taro_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Pachi_Taro_MethodTable = { + (process_method_func)daNpc_Pachi_Taro_Create__FPv, + (process_method_func)daNpc_Pachi_Taro_Delete__FPv, + (process_method_func)daNpc_Pachi_Taro_Execute__FPv, + (process_method_func)daNpc_Pachi_Taro_IsDelete__FPv, + (process_method_func)daNpc_Pachi_Taro_Draw__FPv, }; /* 80AA29E4-80AA2A14 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PACHI_TARO */ -SECTION_DATA extern void* g_profile_NPC_PACHI_TARO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02700000, (void*)&g_fpcLf_Method, - (void*)0x0000100C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01710000, (void*)&daNpc_Pachi_Taro_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PACHI_TARO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PACHI_TARO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Pachi_Taro_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 369, // mPriority + &daNpc_Pachi_Taro_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AA2A14-80AA2A20 0010E8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1689,7 +1257,8 @@ asm void daNpc_Pachi_Taro_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__15J3DTevKColorAnmFv.s" } @@ -1699,7 +1268,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__15J3DTevKColorAnmFv.s" } @@ -1709,7 +1279,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__14J3DTevColorAnmFv.s" } @@ -1719,7 +1290,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__14J3DTevColorAnmFv.s" } @@ -1729,7 +1301,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__11J3DTexNoAnmFv.s" } @@ -1739,7 +1312,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__11J3DTexNoAnmFv.s" } @@ -1749,7 +1323,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__12J3DTexMtxAnmFv.s" } @@ -1759,7 +1334,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__12J3DTexMtxAnmFv.s" } @@ -1769,7 +1345,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__14J3DMatColorAnmFv.s" } @@ -1779,7 +1356,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__14J3DMatColorAnmFv.s" } @@ -2975,7 +2553,8 @@ static bool daNpc_Pachi_Taro_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/calc__11J3DTexNoAnmCFPUs.s" } @@ -2985,7 +2564,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__10cCcD_GSttsFv.s" } @@ -2995,7 +2575,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__8daNpcT_cFv.s" } @@ -3005,7 +2586,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__4cXyzFv.s" } @@ -3015,7 +2597,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__5csXyzFv.s" } @@ -3025,7 +2608,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3035,7 +2619,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -3045,7 +2630,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__8cM3dGCylFv.s" } @@ -3055,7 +2641,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__8cM3dGAabFv.s" } @@ -3067,18 +2654,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/func_80AA086C.s" } #pragma pop /* 80AA0C70-80AA0C74 004AD0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3086,14 +2675,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AA0D70-80AA0D74 004BD0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3101,7 +2692,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3111,7 +2703,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__12dBgS_AcchCirFv.s" } @@ -3121,7 +2714,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__10dCcD_GSttsFv.s" } @@ -3131,7 +2725,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__12dBgS_ObjAcchFv.s" } @@ -3141,7 +2736,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/__dt__12J3DFrameCtrlFv.s" } @@ -3151,8 +2747,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3162,14 +2759,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AA1264-80AA1268 0050C4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -3185,13 +2784,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AA1278-80AA1280 0050D8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AA1280-80AA1288 0050E0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -3201,7 +2802,8 @@ void daNpcT_c::afterMoved() { } /* 80AA128C-80AA1294 0050EC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3209,25 +2811,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AA12AC-80AA12B0 00510C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AA12B0-80AA12B8 005110 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AA12B8-80AA12C0 005118 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3236,7 +2842,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -3247,29 +2854,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pachi_taro/d_a_npc_pachi_taro/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AA1320-80AA1324 005180 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AA1324-80AA1328 005184 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AA1328-80AA132C 005188 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AA132C-80AA1330 00518C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.cpp b/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.cpp index 64b0914059..ee0fda330b 100644 --- a/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.cpp +++ b/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.cpp @@ -1,269 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_passer -// +/** + * @file d_a_npc_passer.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_passer/d_a_npc_passer.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfSO { - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcPasser_c { - struct Mode_e {}; - - /* 80AA2C18 */ ~daNpcPasser_c(); - /* 80AA2C9C */ void createHeap(); - /* 80AA2D40 */ void create(); - /* 80AA2FD4 */ void execute(); - /* 80AA315C */ void draw(); - /* 80AA31EC */ void setAction(daNpcPasser_c::Mode_e); - /* 80AA3230 */ void callInit(); - /* 80AA3258 */ void callExecute(); - /* 80AA3284 */ void initPath(); - /* 80AA33F0 */ void executePath(); - /* 80AA38C4 */ void initEscape(); - /* 80AA39DC */ void executeEscape(); - /* 80AA3D4C */ void initFear(); - /* 80AA3DE4 */ void executeFear(); - /* 80AA3E5C */ void initFight(); - /* 80AA3F10 */ void executeFight(); - /* 80AA40A4 */ void initRelief(); - /* 80AA4128 */ void executeRelief(); - /* 80AA41E4 */ void create_init(); - /* 80AA43A4 */ void setAngle(); - /* 80AA43B0 */ void setSpeed(f32, f32, f32*, int); - /* 80AA44A4 */ void pathMoveF(); - /* 80AA4780 */ void setBaseMtx(); - /* 80AA47FC */ void initCollision(); - /* 80AA48D8 */ void setCollision(); - /* 80AA492C */ void waita(void*); - /* 80AA49D4 */ void talka(void*); - /* 80AA4A7C */ void waitwall(void*); - /* 80AA4B24 */ void talkwall(void*); - /* 80AA4BCC */ void talkbwall(void*); - /* 80AA4C74 */ void talkb(void*); - /* 80AA4D1C */ void talkc(void*); - /* 80AA4DC4 */ void waitb(void*); - /* 80AA4E6C */ void sitwaita(void*); - /* 80AA4F14 */ void sittalka(void*); - /* 80AA4FBC */ void sittalkab(void*); - /* 80AA5064 */ void sitwaitb(void*); - /* 80AA510C */ void sittalkb(void*); - /* 80AA51B4 */ void sittalkbb(void*); - /* 80AA525C */ void looka(void*); - /* 80AA5304 */ void lookb(void*); - /* 80AA53AC */ void playm(void*); - /* 80AA5454 */ void turnr(void*); - /* 80AA5510 */ void turnl(void*); - /* 80AA55CC */ void walka(void*); - /* 80AA5634 */ void runa(void*); - /* 80AA569C */ void runb(void*); - /* 80AA5704 */ void walkb(void*); - /* 80AA576C */ void browsea(void*); - /* 80AA5814 */ void browseb(void*); - /* 80AA58BC */ void waitTime(void*); - - static u8 ActionTable[120]; - static void* m_funcTbl[28]; - static u8 m_seq00_funcTbl[24]; - static u8 m_seq01_funcTbl[24]; - static u8 m_seq02_funcTbl[24]; - static u8 m_seq03_funcTbl[24]; - static u8 m_seq04_funcTbl[24]; - static u8 m_seq05_funcTbl[48]; - static u8 m_seq06_funcTbl[48]; - static u8 m_seq07_funcTbl[24]; - static u8 m_seq08_funcTbl[84]; - static u8 m_seq09_funcTbl[24]; - static u8 m_seq10_funcTbl[24]; - static u8 m_seq11_funcTbl[72]; - static u8 m_seq12_funcTbl[24]; - static u8 m_seq13_funcTbl[72]; - static u8 m_seq14_funcTbl[24]; - static u8 m_seq15_funcTbl[24]; - static u8 m_seq16_funcTbl[84]; - static u8 m_seq17_funcTbl[24]; - static u8 m_seq18_funcTbl[24]; - static u8 m_seq19_funcTbl[84]; - static u8 m_seq20_funcTbl[24]; - static u8 m_seq21_funcTbl[24]; - static u8 m_seq22_funcTbl[48]; - static u8 m_seq23_funcTbl[84]; - static u8 m_seq24_funcTbl[60]; - static u8 m_seq25_funcTbl[84]; - static u8 m_seq26_funcTbl[36]; - static u8 m_seq27_funcTbl[12]; -}; - -struct J3DModel {}; - -struct J3DAnmTransformKey {}; - -struct daNpcCd2_c { - /* 80157D00 */ void NpcCreate(int); - /* 80157F28 */ void ObjCreate(int); - /* 801580F0 */ void getAnmP(int, int); - /* 80158420 */ void setAttention(int); - /* 80158BB8 */ void loadResrc(int, int); - /* 80158CBC */ void removeResrc(int, int); - /* 80158D88 */ void setEnvTevCol(); - /* 80158DE4 */ void setRoomNo(); - /* 80158E28 */ void animation(int); - /* 80158F00 */ void setAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80158F6C */ void drawShadow(f32); - /* 80158FF0 */ void drawObj(int, J3DModel*, f32); - /* 801590FC */ void drawNpc(); - /* 801597C0 */ void getEscapeTag(); - /* 80159818 */ void checkFearSituation(); - /* 80AA6404 */ ~daNpcCd2_c(); - - static u8 const m_cylDat[68]; -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); -}; - -struct dNpcLib_lookat_c { - /* 80251314 */ dNpcLib_lookat_c(); - /* 80251B60 */ void dbView(); - /* 80AA66CC */ ~dNpcLib_lookat_c(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AA6844 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AA6910 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AA68A0 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AA6690 */ ~csXyz(); -}; - -struct dBgS {}; - -struct cXyz { - /* 80AA6654 */ ~cXyz(); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGPla { - /* 80AA387C */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AA67B4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AA67FC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AA5974 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0E18 */ void playVoice(int); -}; - -struct Vec {}; - -struct PathTrace_c { - /* 80159A38 */ void setPath(int, int, int, cXyz*, bool); - /* 80159C14 */ void checkPoint(cXyz, f32); - /* 80159DC0 */ void checkPathEnd(cXyz, f32); - /* 80159E54 */ void getTargetPoint(Vec*); - /* 80159F98 */ void setNextPoint(cXyz&); - /* 8015A370 */ void checkObstacle(fopAc_ac_c*); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DFrameCtrl { - /* 8032842C */ void checkPass(f32); -}; - // // Forward References: // @@ -452,29 +194,21 @@ extern "C" void __dt__17Z2CreatureCitizenFv(); extern "C" void playVoice__17Z2CreatureCitizenFi(); extern "C" void __dl__FPv(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __ptmf_test(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" u8 const m_cylDat__10daNpcCd2_c[68]; extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 l_Cd2_HIO[16396]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -1623,25 +1357,30 @@ SECTION_DATA u8 daNpcPasser_c::m_seq27_funcTbl[12] = { }; /* 80AA7370-80AA7390 -00001 0020+00 1/0 0/0 0/0 .data daNpcPasser_METHODS */ -SECTION_DATA static void* daNpcPasser_METHODS[8] = { - (void*)daNpcPasser_Create__FPv, - (void*)daNpcPasser_Delete__FPv, - (void*)daNpcPasser_Execute__FPv, - (void*)daNpcPasser_IsDelete__FPv, - (void*)daNpcPasser_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcPasser_METHODS = { + (process_method_func)daNpcPasser_Create__FPv, + (process_method_func)daNpcPasser_Delete__FPv, + (process_method_func)daNpcPasser_Execute__FPv, + (process_method_func)daNpcPasser_IsDelete__FPv, + (process_method_func)daNpcPasser_Draw__FPv, }; /* 80AA7390-80AA73C0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PASSER */ -SECTION_DATA extern void* g_profile_NPC_PASSER[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x028F0000, (void*)&g_fpcLf_Method, - (void*)0x00000B28, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01910000, (void*)&daNpcPasser_METHODS, - (void*)0x02040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PASSER = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PASSER, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcPasser_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 401, // mPriority + &daNpcPasser_METHODS, // sub_method + 0x02040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AA73C0-80AA73CC 0009BC 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGPla */ @@ -1906,7 +1645,8 @@ asm void daNpcPasser_c::executePath() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__8cM3dGPlaFv.s" } @@ -2480,7 +2220,8 @@ static bool daNpcPasser_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__10cCcD_GSttsFv.s" } @@ -2552,7 +2293,8 @@ static asm void func_80AA63FC() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcCd2_c::~daNpcCd2_c() { +// asm daNpcCd2_c::~daNpcCd2_c() { +extern "C" asm void __dt__10daNpcCd2_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__10daNpcCd2_cFv.s" } @@ -2562,7 +2304,8 @@ asm daNpcCd2_c::~daNpcCd2_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__4cXyzFv.s" } @@ -2572,7 +2315,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__5csXyzFv.s" } @@ -2582,7 +2326,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +// asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { +extern "C" asm void __dt__16dNpcLib_lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__16dNpcLib_lookat_cFv.s" } @@ -2592,7 +2337,8 @@ asm dNpcLib_lookat_c::~dNpcLib_lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__8cM3dGCylFv.s" } @@ -2602,7 +2348,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__8cM3dGAabFv.s" } @@ -2612,7 +2359,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__10dCcD_GSttsFv.s" } @@ -2622,7 +2370,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__12dBgS_AcchCirFv.s" } @@ -2632,7 +2381,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer/d_a_npc_passer/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.cpp b/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.cpp index b60105a772..a3d980a62f 100644 --- a/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.cpp +++ b/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.cpp @@ -1,176 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_passer2 -// +/** + * @file d_a_npc_passer2.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct mDoExt_McaMorfSO { - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcPasser2_c { - struct Mode_e {}; - - /* 80AA755C */ void setAction(daNpcPasser2_c::Mode_e); - /* 80AA75A0 */ void callInit(); - /* 80AA75C8 */ void callExecute(); - /* 80AA75F4 */ void initPath(); - /* 80AA774C */ void executePath(); - /* 80AA790C */ void setAngle(); - /* 80AA7918 */ void pathMoveF(); - /* 80AA7CD8 */ void create(); - /* 80AA7F78 */ void create_init(); - /* 80AA8270 */ ~daNpcPasser2_c(); - - static u8 ActionTable[24]; -}; - -struct J3DModel {}; - -struct J3DAnmTransformKey {}; - -struct daNpcCd_c { - /* 8015605C */ void NpcCreate(int); - /* 801561E8 */ void ObjCreate(int); - /* 80156248 */ void getAnmP(int, int); - /* 801563C8 */ void setAttention(int); - /* 80156B4C */ void loadResrc(int, int); - /* 80156C50 */ void removeResrc(int, int); - /* 80156D1C */ void setEnvTevCol(); - /* 80156D78 */ void setRoomNo(); - /* 80156DBC */ void animation(); - /* 80156E20 */ void setAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80156E8C */ void drawObj(int, J3DModel*, f32); - /* 80156F74 */ void drawNpc(); - /* 80AA8694 */ ~daNpcCd_c(); - - static u8 const m_cylDat[68]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AA88D0 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AA899C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AA892C */ ~dBgS_AcchCir(); -}; - -struct csXyz {}; - -struct dBgS {}; - -struct cXyz {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGPla { - /* 80AA78C4 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AA8840 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AA8888 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AA8580 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS { - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); -}; - -struct Vec {}; - -struct PathTrace_c { - /* 80159A38 */ void setPath(int, int, int, cXyz*, bool); - /* 80159C14 */ void checkPoint(cXyz, f32); - /* 80159DC0 */ void checkPathEnd(cXyz, f32); - /* 80159E54 */ void getTargetPoint(Vec*); - /* 80159F98 */ void setNextPoint(cXyz&); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - // // Forward References: // @@ -273,24 +108,18 @@ extern "C" void cLib_distanceAngleS__Fss(); extern "C" void __ct__17Z2CreatureCitizenFv(); extern "C" void __dt__17Z2CreatureCitizenFv(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" u8 const m_cylDat__9daNpcCd_c[68]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 l_Cd_HIO[10684]; extern "C" u8 sincosTable___5JMath[65536]; @@ -406,25 +235,30 @@ asm void daNpcPasser2_c::initPath() { /* ############################################################################################## */ /* 80AA8AB8-80AA8AD8 -00001 0020+00 1/0 0/0 0/0 .data daNpcPasser2_METHODS */ -SECTION_DATA static void* daNpcPasser2_METHODS[8] = { - (void*)daNpcPasser2_Create__FPv, - (void*)daNpcPasser2_Delete__FPv, - (void*)daNpcPasser2_Execute__FPv, - (void*)daNpcPasser2_IsDelete__FPv, - (void*)daNpcPasser2_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcPasser2_METHODS = { + (process_method_func)daNpcPasser2_Create__FPv, + (process_method_func)daNpcPasser2_Delete__FPv, + (process_method_func)daNpcPasser2_Execute__FPv, + (process_method_func)daNpcPasser2_IsDelete__FPv, + (process_method_func)daNpcPasser2_Draw__FPv, }; /* 80AA8AD8-80AA8B08 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PASSER2 */ -SECTION_DATA extern void* g_profile_NPC_PASSER2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02900000, (void*)&g_fpcLf_Method, - (void*)0x00000A44, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01920000, (void*)&daNpcPasser2_METHODS, - (void*)0x02040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PASSER2 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PASSER2, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcPasser2_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 402, // mPriority + &daNpcPasser2_METHODS, // sub_method + 0x02040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AA8B08-80AA8B14 0000A0 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */ @@ -510,7 +344,8 @@ asm void daNpcPasser2_c::executePath() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__8cM3dGPlaFv.s" } @@ -726,7 +561,8 @@ static bool daNpcPasser2_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__10cCcD_GSttsFv.s" } @@ -788,7 +624,8 @@ static asm void func_80AA868C() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcCd_c::~daNpcCd_c() { +// asm daNpcCd_c::~daNpcCd_c() { +extern "C" asm void __dt__9daNpcCd_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__9daNpcCd_cFv.s" } @@ -798,7 +635,8 @@ asm daNpcCd_c::~daNpcCd_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__8cM3dGCylFv.s" } @@ -808,7 +646,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__8cM3dGAabFv.s" } @@ -818,7 +657,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__10dCcD_GSttsFv.s" } @@ -828,7 +668,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__12dBgS_AcchCirFv.s" } @@ -838,7 +679,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_passer2/d_a_npc_passer2/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_post/d_a_npc_post.cpp b/rel/d/a/npc/d_a_npc_post/d_a_npc_post.cpp index 70088823e3..b7bc2f2cde 100644 --- a/rel/d/a/npc/d_a_npc_post/d_a_npc_post.cpp +++ b/rel/d/a/npc/d_a_npc_post/d_a_npc_post.cpp @@ -1,424 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_post -// +/** + * @file d_a_npc_post.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_post/d_a_npc_post.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AAC28C */ ~cXyz(); - /* 80AAC964 */ cXyz(); -}; - -struct daTag_EvtArea_c { - /* 80AAD178 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AAC968 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Post_c { - /* 80AA8C8C */ ~daNpc_Post_c(); - /* 80AA8DE8 */ void create(); - /* 80AA90B0 */ void CreateHeap(); - /* 80AA9634 */ void Delete(); - /* 80AA9668 */ void Execute(); - /* 80AA9688 */ void Draw(); - /* 80AA971C */ void createHeapCallBack(fopAc_ac_c*); - /* 80AA973C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AA9794 */ void getType(); - /* 80AA97E0 */ void isDelete(); - /* 80AA9828 */ void reset(); - /* 80AA99F0 */ void afterJntAnm(int); - /* 80AA9A7C */ void setParam(); - /* 80AA9BA4 */ void checkChangeEvt(); - /* 80AA9C58 */ void setAfterTalkMotion(); - /* 80AA9D04 */ void srchActors(); - /* 80AA9D98 */ void evtTalk(); - /* 80AA9E98 */ void evtCutProc(); - /* 80AA9F60 */ void action(); - /* 80AAA058 */ void beforeMove(); - /* 80AAA124 */ void afterMoved(); - /* 80AAA1E4 */ void setAttnPos(); - /* 80AAA570 */ void setCollision(); - /* 80AAA714 */ bool drawDbgInfo(); - /* 80AAA71C */ void drawOtherMdl(); - /* 80AAA8A4 */ void setFlagAnm(int, int, f32); - /* 80AAA968 */ void afterSetMotionAnm(int, int, f32, int); - /* 80AAA99C */ void selectAction(); - /* 80AAA9E4 */ void chkAction(int (daNpc_Post_c::*)(void*)); - /* 80AAAA10 */ void setAction(int (daNpc_Post_c::*)(void*)); - /* 80AAAAB8 */ void chkPullOutLetter1(); - /* 80AAAB2C */ void chkPullOutLetter2(); - /* 80AAABA0 */ void pullOutLetter(); - /* 80AAAC64 */ void cutDeliver(int); - /* 80AAB61C */ void wait(void*); - /* 80AABC24 */ void talk(void*); - /* 80AACFF0 */ daNpc_Post_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AAD0D0 */ bool getEyeballMaterialNo(); - /* 80AAD0D8 */ s32 getHeadJointNo(); - /* 80AAD0E0 */ s32 getNeckJointNo(); - /* 80AAD0E8 */ bool getBackboneJointNo(); - /* 80AAD0F0 */ void checkChangeJoint(int); - /* 80AAD100 */ void checkRemoveJoint(int); - /* 80AAD110 */ s32 getFootLJointNo(); - /* 80AAD118 */ s32 getFootRJointNo(); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_Post_Param_c { - /* 80AAD120 */ ~daNpc_Post_Param_c(); - - static u8 const m[148]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80AAC2C8 */ ~csXyz(); - /* 80AAC864 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148058 */ void getTrnsfrmAnmP(char const*, int); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 80AABF04 */ ~daNpcT_c(); - /* 80AAC460 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AACE58 */ void ctrlSubFaceMotion(int); - /* 80AACE5C */ bool getEyeballLMaterialNo(); - /* 80AACE64 */ bool getEyeballRMaterialNo(); - /* 80AACE6C */ bool evtEndProc(); - /* 80AACE74 */ bool chkXYItems(); - /* 80AACE7C */ void decTmr(); - /* 80AACE94 */ void drawGhost(); - /* 80AACE98 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AACEA0 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AACED0 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AACF00 */ void changeAnm(int*, int*); - /* 80AACF04 */ void changeBck(int*, int*); - /* 80AACF08 */ void changeBtp(int*, int*); - /* 80AACF0C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80AAC34C */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AAC868 */ ~daNpcT_JntAnm_c(); - /* 80AACB34 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AACC50 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AAC304 */ ~daNpcT_ActorMngr_c(); - /* 80AAC394 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AAC9B0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AACA20 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AACA7C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AAC3D0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AAC418 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AABEBC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80AA9520 */ ~J3DTexNoAnm(); - /* 80AA9568 */ J3DTexNoAnm(); - /* 80AABE8C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AA958C */ ~J3DTexMtxAnm(); - /* 80AA95C8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AA9478 */ ~J3DTevKColorAnm(); - /* 80AA94B4 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AA94CC */ ~J3DTevColorAnm(); - /* 80AA9508 */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AA95E0 */ ~J3DMatColorAnm(); - /* 80AA961C */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AACAEC */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -536,7 +123,6 @@ extern "C" u8 mCutList__12daNpc_Post_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -664,11 +250,6 @@ extern "C" void show__13J3DShapeTableFv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -689,8 +270,6 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -701,10 +280,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -999,25 +574,30 @@ SECTION_DATA static void* lit_5415[13] = { }; /* 80AADA1C-80AADA3C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Post_MethodTable */ -SECTION_DATA static void* daNpc_Post_MethodTable[8] = { - (void*)daNpc_Post_Create__FPv, - (void*)daNpc_Post_Delete__FPv, - (void*)daNpc_Post_Execute__FPv, - (void*)daNpc_Post_IsDelete__FPv, - (void*)daNpc_Post_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Post_MethodTable = { + (process_method_func)daNpc_Post_Create__FPv, + (process_method_func)daNpc_Post_Delete__FPv, + (process_method_func)daNpc_Post_Execute__FPv, + (process_method_func)daNpc_Post_IsDelete__FPv, + (process_method_func)daNpc_Post_Draw__FPv, }; /* 80AADA3C-80AADA6C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_POST */ -SECTION_DATA extern void* g_profile_NPC_POST[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02910000, (void*)&g_fpcLf_Method, - (void*)0x00001018, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01930000, (void*)&daNpc_Post_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_POST = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_POST, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Post_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 403, // mPriority + &daNpc_Post_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AADA6C-80AADA78 0006C0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1294,7 +874,8 @@ asm void daNpc_Post_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__15J3DTevKColorAnmFv.s" } @@ -1304,7 +885,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__15J3DTevKColorAnmFv.s" } @@ -1314,7 +896,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__14J3DTevColorAnmFv.s" } @@ -1324,7 +907,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__14J3DTevColorAnmFv.s" } @@ -1334,7 +918,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__11J3DTexNoAnmFv.s" } @@ -1344,7 +929,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__11J3DTexNoAnmFv.s" } @@ -1354,7 +940,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__12J3DTexMtxAnmFv.s" } @@ -1364,7 +951,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__12J3DTexMtxAnmFv.s" } @@ -1374,7 +962,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__14J3DMatColorAnmFv.s" } @@ -1384,7 +973,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__14J3DMatColorAnmFv.s" } @@ -2102,7 +1692,8 @@ static bool daNpc_Post_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/calc__11J3DTexNoAnmCFPUs.s" } @@ -2112,7 +1703,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__10cCcD_GSttsFv.s" } @@ -2122,7 +1714,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__8daNpcT_cFv.s" } @@ -2132,7 +1725,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__4cXyzFv.s" } @@ -2142,7 +1736,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__5csXyzFv.s" } @@ -2152,7 +1747,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2162,7 +1758,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__13daNpcT_Path_cFv.s" } @@ -2172,7 +1769,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2182,7 +1780,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__8cM3dGCylFv.s" } @@ -2192,7 +1791,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__8cM3dGAabFv.s" } @@ -2204,18 +1804,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/func_80AAC460.s" } #pragma pop /* 80AAC864-80AAC868 003CC4 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2223,14 +1825,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AAC964-80AAC968 003DC4 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2238,7 +1842,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2248,7 +1853,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__12dBgS_AcchCirFv.s" } @@ -2258,7 +1864,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__10dCcD_GSttsFv.s" } @@ -2268,7 +1875,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__12dBgS_ObjAcchFv.s" } @@ -2278,7 +1886,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/__dt__12J3DFrameCtrlFv.s" } @@ -2288,8 +1897,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2299,36 +1909,42 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AACE58-80AACE5C 0042B8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80AACE5C-80AACE64 0042BC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AACE64-80AACE6C 0042C4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80AACE6C-80AACE74 0042CC 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 80AACE74-80AACE7C 0042D4 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2336,19 +1952,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AACE94-80AACE98 0042F4 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AACE98-80AACEA0 0042F8 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2357,7 +1976,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2368,29 +1988,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AACF00-80AACF04 004360 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AACF04-80AACF08 004364 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AACF08-80AACF0C 004368 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AACF0C-80AACF10 00436C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2542,7 +2167,8 @@ static asm void func_80AAD170() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_post/d_a_npc_post/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.cpp b/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.cpp index 863e08cc03..4b2db7c730 100644 --- a/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.cpp +++ b/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.cpp @@ -1,425 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_pouya -// +/** + * @file d_a_npc_pouya.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct _GXColor {}; - -struct mDoGph_gInf_c { - /* 80008028 */ void fadeOut_f(f32, _GXColor&); - - static f32 mFadeRate; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AB1824 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Pouya_c { - /* 80AADDAC */ ~daNpc_Pouya_c(); - /* 80AADEE0 */ void create(); - /* 80AAE1AC */ void CreateHeap(); - /* 80AAE788 */ void Delete(); - /* 80AAE7BC */ void Execute(); - /* 80AAE7DC */ void Draw(); - /* 80AAE870 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AAE890 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AAE8E8 */ void getType(); - /* 80AAE94C */ void isDelete(); - /* 80AAE9D8 */ void reset(); - /* 80AAEBCC */ void ctrlSubFaceMotion(int); - /* 80AAEDB8 */ void afterJntAnm(int); - /* 80AAEE44 */ void setParam(); - /* 80AAEFB4 */ void checkChangeEvt(); - /* 80AAF148 */ void setAfterTalkMotion(); - /* 80AAF1F0 */ void srchActors(); - /* 80AAF1F4 */ void evtTalk(); - /* 80AAF294 */ void evtCutProc(); - /* 80AAF35C */ void action(); - /* 80AAF4F8 */ void beforeMove(); - /* 80AAF5BC */ void setAttnPos(); - /* 80AAF8E4 */ void setCollision(); - /* 80AAFA5C */ bool drawDbgInfo(); - /* 80AAFA64 */ void drawOtherMdl(); - /* 80AAFB4C */ void afterSetMotionAnm(int, int, f32, int); - /* 80AAFBDC */ void selectAction(); - /* 80AAFC24 */ void chkAction(int (daNpc_Pouya_c::*)(void*)); - /* 80AAFC50 */ void setAction(int (daNpc_Pouya_c::*)(void*)); - /* 80AAFCF8 */ void setPrtcls(); - /* 80AAFE08 */ void cutHaveFavorToAsk(int); - /* 80AB04A8 */ void wait(void*); - /* 80AB0A7C */ void talk(void*); - /* 80AB1E94 */ daNpc_Pouya_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AB1F54 */ bool getEyeballMaterialNo(); - /* 80AB1F5C */ s32 getHeadJointNo(); - /* 80AB1F64 */ s32 getNeckJointNo(); - /* 80AB1F6C */ bool getBackboneJointNo(); - /* 80AB1F74 */ void checkChangeJoint(int); - /* 80AB1F84 */ void checkRemoveJoint(int); - - static void* mCutNameList[3]; - static u8 mCutList[36]; -}; - -struct daNpc_Pouya_Param_c { - /* 80AB1F94 */ ~daNpc_Pouya_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80AB11C0 */ ~csXyz(); - /* 80AB16D8 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AB1184 */ ~cXyz(); - /* 80AB17D8 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AB0DFC */ ~daNpcT_c(); - /* 80AB12D4 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AB1D14 */ s32 getFootLJointNo(); - /* 80AB1D1C */ s32 getFootRJointNo(); - /* 80AB1D24 */ bool getEyeballLMaterialNo(); - /* 80AB1D2C */ bool getEyeballRMaterialNo(); - /* 80AB1D34 */ bool evtEndProc(); - /* 80AB1D3C */ void afterMoved(); - /* 80AB1D40 */ bool chkXYItems(); - /* 80AB1D48 */ void decTmr(); - /* 80AB1D60 */ void drawGhost(); - /* 80AB1D64 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AB1D6C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AB1D9C */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AB1DCC */ void changeAnm(int*, int*); - /* 80AB1DD0 */ void changeBck(int*, int*); - /* 80AB1DD4 */ void changeBtp(int*, int*); - /* 80AB1DD8 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80AB11FC */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AB16DC */ ~daNpcT_JntAnm_c(); - /* 80AB19F0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AB1B0C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AB17DC */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AB18DC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AB1938 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AB186C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AB1244 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AB128C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AB0DB4 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80AAE674 */ ~J3DTexNoAnm(); - /* 80AAE6BC */ J3DTexNoAnm(); - /* 80AB0D84 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AAE6E0 */ ~J3DTexMtxAnm(); - /* 80AAE71C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AAE5CC */ ~J3DTevKColorAnm(); - /* 80AAE608 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AAE620 */ ~J3DTevColorAnm(); - /* 80AAE65C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AAE734 */ ~J3DMatColorAnm(); - /* 80AAE770 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80AB19A8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -531,7 +117,6 @@ extern "C" u8 mCutList__13daNpc_Pouya_c[36]; // External References: // -SECTION_INIT void memset(); extern "C" void fadeOut_f__13mDoGph_gInf_cFfR8_GXColor(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); @@ -654,10 +239,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -674,8 +255,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -686,11 +265,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 g_saftyWhiteColor; -extern "C" extern u32 __float_nan; extern "C" f32 mFadeRate__13mDoGph_gInf_c; extern "C" extern u8 mBlureFlag__13mDoGph_gInf_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; @@ -1111,25 +685,30 @@ SECTION_DATA static void* lit_5333[13] = { }; /* 80AB2B1C-80AB2B3C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Pouya_MethodTable */ -SECTION_DATA static void* daNpc_Pouya_MethodTable[8] = { - (void*)daNpc_Pouya_Create__FPv, - (void*)daNpc_Pouya_Delete__FPv, - (void*)daNpc_Pouya_Execute__FPv, - (void*)daNpc_Pouya_IsDelete__FPv, - (void*)daNpc_Pouya_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Pouya_MethodTable = { + (process_method_func)daNpc_Pouya_Create__FPv, + (process_method_func)daNpc_Pouya_Delete__FPv, + (process_method_func)daNpc_Pouya_Execute__FPv, + (process_method_func)daNpc_Pouya_IsDelete__FPv, + (process_method_func)daNpc_Pouya_Draw__FPv, }; /* 80AB2B3C-80AB2B6C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_POUYA */ -SECTION_DATA extern void* g_profile_NPC_POUYA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02920000, (void*)&g_fpcLf_Method, - (void*)0x00000FD4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01940000, (void*)&daNpc_Pouya_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_POUYA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_POUYA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Pouya_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 404, // mPriority + &daNpc_Pouya_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AB2B6C-80AB2B78 00097C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1409,7 +988,8 @@ asm void daNpc_Pouya_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__15J3DTevKColorAnmFv.s" } @@ -1419,7 +999,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__ct__15J3DTevKColorAnmFv.s" } @@ -1429,7 +1010,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__14J3DTevColorAnmFv.s" } @@ -1439,7 +1021,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__ct__14J3DTevColorAnmFv.s" } @@ -1449,7 +1032,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__11J3DTexNoAnmFv.s" } @@ -1459,7 +1043,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__ct__11J3DTexNoAnmFv.s" } @@ -1469,7 +1054,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__12J3DTexMtxAnmFv.s" } @@ -1479,7 +1065,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__ct__12J3DTexMtxAnmFv.s" } @@ -1489,7 +1076,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__14J3DMatColorAnmFv.s" } @@ -1499,7 +1087,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__ct__14J3DMatColorAnmFv.s" } @@ -1975,7 +1564,8 @@ static bool daNpc_Pouya_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/calc__11J3DTexNoAnmCFPUs.s" } @@ -1985,7 +1575,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__10cCcD_GSttsFv.s" } @@ -1995,7 +1586,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__8daNpcT_cFv.s" } @@ -2005,7 +1597,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__4cXyzFv.s" } @@ -2015,7 +1608,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__5csXyzFv.s" } @@ -2025,7 +1619,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__13daNpcT_Path_cFv.s" } @@ -2035,7 +1630,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__8cM3dGCylFv.s" } @@ -2045,7 +1641,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__8cM3dGAabFv.s" } @@ -2057,18 +1654,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/func_80AB12D4.s" } #pragma pop /* 80AB16D8-80AB16DC 003A18 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2076,14 +1675,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AB17D8-80AB17DC 003B18 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2091,7 +1692,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2101,7 +1703,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2111,7 +1714,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__12dBgS_AcchCirFv.s" } @@ -2121,7 +1725,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__10dCcD_GSttsFv.s" } @@ -2131,7 +1736,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__12dBgS_ObjAcchFv.s" } @@ -2141,7 +1747,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/__dt__12J3DFrameCtrlFv.s" } @@ -2151,8 +1758,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2162,7 +1770,8 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } @@ -2180,18 +1789,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AB1D24-80AB1D2C 004064 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AB1D2C-80AB1D34 00406C 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80AB1D34-80AB1D3C 004074 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2201,7 +1813,8 @@ void daNpcT_c::afterMoved() { } /* 80AB1D40-80AB1D48 004080 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2209,19 +1822,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AB1D60-80AB1D64 0040A0 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AB1D64-80AB1D6C 0040A4 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2230,7 +1846,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2241,29 +1858,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_pouya/d_a_npc_pouya/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AB1DCC-80AB1DD0 00410C 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB1DD0-80AB1DD4 004110 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB1DD4-80AB1DD8 004114 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB1DD8-80AB1DDC 004118 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.cpp b/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.cpp index 5923b54783..ce9f9a7284 100644 --- a/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.cpp +++ b/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.cpp @@ -1,294 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_prayer -// +/** + * @file d_a_npc_prayer.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80AB50A0 */ csXyz(); - /* 802673F4 */ csXyz(s16, s16, s16); - /* 80AB5064 */ ~csXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CF0C */ void ZXYrotS(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcPray_c { - /* 80AB2DEC */ daNpcPray_c(); - /* 80AB3000 */ ~daNpcPray_c(); - /* 80AB3204 */ void Create(); - /* 80AB348C */ void CreateHeap(); - /* 80AB3610 */ void Delete(); - /* 80AB3644 */ void Execute(); - /* 80AB3668 */ void Draw(); - /* 80AB36A8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80AB3834 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AB3854 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AB38A0 */ void setParam(); - /* 80AB390C */ void main(); - /* 80AB3964 */ void setAttnPos(); - /* 80AB3B0C */ void setMotionAnm(int, f32); - /* 80AB3BDC */ void setMotion(int, f32, int); - /* 80AB3C24 */ bool drawDbgInfo(); - /* 80AB3C2C */ void reset(); - /* 80AB3DBC */ void playMotion(); - /* 80AB3F54 */ void setAction(bool (daNpcPray_c::*)(void*)); - /* 80AB3FFC */ void setLookMode(int); - /* 80AB4020 */ void lookat(); - /* 80AB4200 */ void step(s16, int); - /* 80AB42F4 */ void chkFindPlayer(); - /* 80AB43D8 */ void wait(void*); - /* 80AB4674 */ void fear(void*); - /* 80AB4740 */ void talk(void*); - /* 80AB498C */ void demo(void*); - /* 80AB4B20 */ void createHeart(); - /* 80AB4BFC */ void _Evt_GetHeart(int); - /* 80AB4CA4 */ void _Evt_GetHeart_CutInit(int const&); - /* 80AB4D34 */ void _Evt_GetHeart_CutMain(int const&); - /* 80AB5798 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[24]; -}; - -struct daNpcPray_Param_c { - /* 80AB579C */ ~daNpcPray_Param_c(); - - static u8 const m[108]; -}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80AB50E4 */ ~daNpcF_c(); - /* 80AB5330 */ daNpcF_c(); - /* 80AB56A4 */ bool ctrlBtk(); - /* 80AB56AC */ void setCollisions(); - /* 80AB56B0 */ bool setExpressionAnm(int, bool); - /* 80AB56B8 */ bool setExpressionBtp(int); - /* 80AB56C0 */ void setExpression(int, f32); - /* 80AB56C4 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct cXyz { - /* 80AB50A4 */ ~cXyz(); - /* 80AB50E0 */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80AB4F94 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80AB4F10 */ ~daNpcF_ActorMngr_c(); - /* 80AB4F58 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_danBit_c { - /* 80034B98 */ void onSwitch(int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AB5590 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AB55EC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AB5520 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AB2F70 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AB2FB8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AB56C8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Vec {}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); - /* 802C0D48 */ void setMdlType(s8, bool, bool); - /* 802C0E18 */ void playVoice(int); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AB565C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -456,9 +173,6 @@ extern "C" void playVoice__17Z2CreatureCitizenFi(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -473,10 +187,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -485,8 +196,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -632,25 +341,30 @@ SECTION_DATA static void* lit_4732[3] = { #pragma pop /* 80AB5A78-80AB5A98 -00001 0020+00 1/0 0/0 0/0 .data daNpcPray_MethodTable */ -SECTION_DATA static void* daNpcPray_MethodTable[8] = { - (void*)daNpcPray_Create__FPv, - (void*)daNpcPray_Delete__FPv, - (void*)daNpcPray_Execute__FPv, - (void*)daNpcPray_IsDelete__FPv, - (void*)daNpcPray_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcPray_MethodTable = { + (process_method_func)daNpcPray_Create__FPv, + (process_method_func)daNpcPray_Delete__FPv, + (process_method_func)daNpcPray_Execute__FPv, + (process_method_func)daNpcPray_IsDelete__FPv, + (process_method_func)daNpcPray_Draw__FPv, }; /* 80AB5A98-80AB5AC8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_PRAYER */ -SECTION_DATA extern void* g_profile_NPC_PRAYER[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A00000, (void*)&g_fpcLf_Method, - (void*)0x00000E10, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A30000, (void*)&daNpcPray_MethodTable, - (void*)0x00044187, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_PRAYER = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_PRAYER, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcPray_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 419, // mPriority + &daNpcPray_MethodTable, // sub_method + 0x00044187, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AB5AC8-80AB5B10 000144 0048+00 2/2 0/0 0/0 .data __vt__11daNpcPray_c */ @@ -758,7 +472,8 @@ asm daNpcPray_c::daNpcPray_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__8cM3dGCylFv.s" } @@ -768,7 +483,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__8cM3dGAabFv.s" } @@ -1436,7 +1152,8 @@ static bool daNpcPray_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1446,7 +1163,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1456,7 +1174,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__15daNpcF_Lookat_cFv.s" } @@ -1466,14 +1185,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__5csXyzFv.s" } #pragma pop /* 80AB50A0-80AB50A4 0023A0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1481,14 +1202,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__4cXyzFv.s" } #pragma pop /* 80AB50E0-80AB50E4 0023E0 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1496,7 +1219,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__8daNpcF_cFv.s" } @@ -1506,7 +1230,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__ct__8daNpcF_cFv.s" } @@ -1516,7 +1241,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__12dBgS_AcchCirFv.s" } @@ -1526,7 +1252,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__10dCcD_GSttsFv.s" } @@ -1536,7 +1263,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__12dBgS_ObjAcchFv.s" } @@ -1546,39 +1274,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AB56A4-80AB56AC 0029A4 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80AB56AC-80AB56B0 0029AC 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AB56B0-80AB56B8 0029B0 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80AB56B8-80AB56C0 0029B8 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80AB56C0-80AB56C4 0029C0 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 80AB56C4-80AB56C8 0029C4 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -1586,7 +1321,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_prayer/d_a_npc_prayer/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.cpp b/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.cpp index a51ca454d5..88c46ae53f 100644 --- a/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.cpp +++ b/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.cpp @@ -1,384 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_raca -// +/** + * @file d_a_npc_raca.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_raca/d_a_npc_raca.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AB7FC8 */ ~cXyz(); - /* 80AB86A0 */ cXyz(); -}; - -struct daTag_EvtArea_c { - /* 80AB8E54 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AB86A4 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Raca_c { - /* 80AB5CAC */ ~daNpc_Raca_c(); - /* 80AB5DFC */ void create(); - /* 80AB60B8 */ void CreateHeap(); - /* 80AB6514 */ void Delete(); - /* 80AB6548 */ void Execute(); - /* 80AB6568 */ void Draw(); - /* 80AB65FC */ void createHeapCallBack(fopAc_ac_c*); - /* 80AB661C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AB6674 */ void srchNi(void*, void*); - /* 80AB6700 */ void getNiP(); - /* 80AB67CC */ void getType(); - /* 80AB67EC */ void isDelete(); - /* 80AB681C */ void reset(); - /* 80AB6984 */ void afterJntAnm(int); - /* 80AB6A10 */ void setParam(); - /* 80AB6B0C */ void setAfterTalkMotion(); - /* 80AB6BB0 */ void srchActors(); - /* 80AB6C14 */ void evtTalk(); - /* 80AB6D14 */ void evtCutProc(); - /* 80AB6DDC */ void action(); - /* 80AB6EC8 */ void beforeMove(); - /* 80AB6F40 */ void setAttnPos(); - /* 80AB7180 */ void setCollision(); - /* 80AB72B4 */ bool drawDbgInfo(); - /* 80AB72BC */ void selectAction(); - /* 80AB73B0 */ void chkAction(int (daNpc_Raca_c::*)(void*)); - /* 80AB73DC */ void setAction(int (daNpc_Raca_c::*)(void*)); - /* 80AB7484 */ void wait(void*); - /* 80AB7710 */ void walk(void*); - /* 80AB7918 */ void talk(void*); - /* 80AB8CCC */ daNpc_Raca_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AB8DAC */ s32 getEyeballMaterialNo(); - /* 80AB8DB4 */ s32 getHeadJointNo(); - /* 80AB8DBC */ s32 getNeckJointNo(); - /* 80AB8DC4 */ bool getBackboneJointNo(); - /* 80AB8DCC */ void checkChangeJoint(int); - /* 80AB8DDC */ void checkRemoveJoint(int); - /* 80AB8DEC */ s32 getFootLJointNo(); - /* 80AB8DF4 */ s32 getFootRJointNo(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Raca_Param_c { - /* 80AB8DFC */ ~daNpc_Raca_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 80AB7C40 */ ~daNpcT_c(); - /* 80AB819C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AB8B94 */ void ctrlSubFaceMotion(int); - /* 80AB8B98 */ bool getEyeballLMaterialNo(); - /* 80AB8BA0 */ bool getEyeballRMaterialNo(); - /* 80AB8BA8 */ bool checkChangeEvt(); - /* 80AB8BB0 */ bool evtEndProc(); - /* 80AB8BB8 */ void afterMoved(); - /* 80AB8BBC */ bool chkXYItems(); - /* 80AB8BC4 */ void decTmr(); - /* 80AB8BDC */ void drawOtherMdl(); - /* 80AB8BE0 */ void drawGhost(); - /* 80AB8BE4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AB8BEC */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AB8BF4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AB8C24 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AB8C54 */ void changeAnm(int*, int*); - /* 80AB8C58 */ void changeBck(int*, int*); - /* 80AB8C5C */ void changeBtp(int*, int*); - /* 80AB8C60 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80AB8088 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AB85A4 */ ~daNpcT_JntAnm_c(); - /* 80AB8870 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AB898C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AB8040 */ ~daNpcT_ActorMngr_c(); - /* 80AB80D0 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct csXyz { - /* 80AB8004 */ ~csXyz(); - /* 80AB85A0 */ csXyz(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AB86EC */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AB875C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AB87B8 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AB810C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AB8154 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AB7BF8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80AB6400 */ ~J3DTexNoAnm(); - /* 80AB6448 */ J3DTexNoAnm(); - /* 80AB7BC8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AB646C */ ~J3DTexMtxAnm(); - /* 80AB64A8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AB6358 */ ~J3DTevKColorAnm(); - /* 80AB6394 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AB63AC */ ~J3DTevColorAnm(); - /* 80AB63E8 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AB64C0 */ ~J3DMatColorAnm(); - /* 80AB64FC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AB8828 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -492,7 +119,6 @@ extern "C" u8 mCutList__12daNpc_Raca_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -596,9 +222,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -613,8 +236,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -625,12 +246,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -830,25 +447,30 @@ SECTION_DATA static void* lit_4821[3] = { #pragma pop /* 80AB935C-80AB937C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Raca_MethodTable */ -SECTION_DATA static void* daNpc_Raca_MethodTable[8] = { - (void*)daNpc_Raca_Create__FPv, - (void*)daNpc_Raca_Delete__FPv, - (void*)daNpc_Raca_Execute__FPv, - (void*)daNpc_Raca_IsDelete__FPv, - (void*)daNpc_Raca_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Raca_MethodTable = { + (process_method_func)daNpc_Raca_Create__FPv, + (process_method_func)daNpc_Raca_Delete__FPv, + (process_method_func)daNpc_Raca_Execute__FPv, + (process_method_func)daNpc_Raca_IsDelete__FPv, + (process_method_func)daNpc_Raca_Draw__FPv, }; /* 80AB937C-80AB93AC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_RACA */ -SECTION_DATA extern void* g_profile_NPC_RACA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02630000, (void*)&g_fpcLf_Method, - (void*)0x00000FD4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01640000, (void*)&daNpc_Raca_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_RACA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_RACA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Raca_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 356, // mPriority + &daNpc_Raca_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AB93AC-80AB93B8 0003F0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1106,7 +728,8 @@ asm void daNpc_Raca_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__15J3DTevKColorAnmFv.s" } @@ -1116,7 +739,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__15J3DTevKColorAnmFv.s" } @@ -1126,7 +750,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__14J3DTevColorAnmFv.s" } @@ -1136,7 +761,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__14J3DTevColorAnmFv.s" } @@ -1146,7 +772,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__11J3DTexNoAnmFv.s" } @@ -1156,7 +783,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__11J3DTexNoAnmFv.s" } @@ -1166,7 +794,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__12J3DTexMtxAnmFv.s" } @@ -1176,7 +805,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__12J3DTexMtxAnmFv.s" } @@ -1186,7 +816,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__14J3DMatColorAnmFv.s" } @@ -1196,7 +827,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__14J3DMatColorAnmFv.s" } @@ -1551,7 +1183,8 @@ static bool daNpc_Raca_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/calc__11J3DTexNoAnmCFPUs.s" } @@ -1561,7 +1194,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__10cCcD_GSttsFv.s" } @@ -1571,7 +1205,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__8daNpcT_cFv.s" } @@ -1581,7 +1216,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__4cXyzFv.s" } @@ -1591,7 +1227,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__5csXyzFv.s" } @@ -1601,7 +1238,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1611,7 +1249,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__13daNpcT_Path_cFv.s" } @@ -1621,7 +1260,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1631,7 +1271,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__8cM3dGCylFv.s" } @@ -1641,7 +1282,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__8cM3dGAabFv.s" } @@ -1653,18 +1295,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/func_80AB819C.s" } #pragma pop /* 80AB85A0-80AB85A4 0029E0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1672,14 +1316,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AB86A0-80AB86A4 002AE0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1687,7 +1333,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1697,7 +1344,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__12dBgS_AcchCirFv.s" } @@ -1707,7 +1355,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__10dCcD_GSttsFv.s" } @@ -1717,7 +1366,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__12dBgS_ObjAcchFv.s" } @@ -1727,7 +1377,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/__dt__12J3DFrameCtrlFv.s" } @@ -1737,8 +1388,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1776,26 +1428,30 @@ COMPILER_STRIP_GATE(0x80AB8FA0, &lit_4768); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AB8B94-80AB8B98 002FD4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80AB8B98-80AB8BA0 002FD8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AB8BA0-80AB8BA8 002FE0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1805,7 +1461,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80AB8BB0-80AB8BB8 002FF0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1815,7 +1472,8 @@ void daNpcT_c::afterMoved() { } /* 80AB8BBC-80AB8BC4 002FFC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1823,30 +1481,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AB8BDC-80AB8BE0 00301C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AB8BE0-80AB8BE4 003020 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AB8BE4-80AB8BEC 003024 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AB8BEC-80AB8BF4 00302C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1855,7 +1518,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1866,29 +1530,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AB8C54-80AB8C58 003094 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB8C58-80AB8C5C 003098 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB8C5C-80AB8C60 00309C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AB8C60-80AB8C64 0030A0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2026,7 +1695,8 @@ static asm void func_80AB8E4C() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_raca/d_a_npc_raca/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.cpp b/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.cpp index fc0e079a0d..bfaa17cf8f 100644 --- a/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.cpp +++ b/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.cpp @@ -1,384 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_rafrel -// +/** + * @file d_a_npc_rafrel.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcRafrel_c { - /* 80AB962C */ daNpcRafrel_c(); - /* 80AB9840 */ ~daNpcRafrel_c(); - /* 80AB9A40 */ void Create(); - /* 80AB9E3C */ void CreateHeap(); - /* 80ABA380 */ void Delete(); - /* 80ABA3B4 */ void Execute(); - /* 80ABA3D8 */ void Draw(); - /* 80ABA4A8 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80ABA678 */ void createHeapCallBack(fopAc_ac_c*); - /* 80ABA698 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80ABA6E4 */ void setExpressionAnm(int, bool); - /* 80ABA8EC */ void setExpressionBtp(int); - /* 80ABA9CC */ void setMotionAnm(int, f32); - /* 80ABAB88 */ void reset(); - /* 80ABADC4 */ void setWaitAction(); - /* 80ABAFBC */ void isSneaking(); - /* 80ABB014 */ void wait_type01(void*); - /* 80ABBB10 */ void setMotion(int, f32, int); - /* 80ABBBB0 */ void setExpression(int, f32); - /* 80ABBBDC */ void wait_type2(void*); - /* 80ABBE84 */ void talk(void*); - /* 80ABC50C */ void demo(void*); - /* 80ABCA40 */ void leave(void*); - /* 80ABCD74 */ void EvCut_Introduction(int); - /* 80ABCE74 */ void EvCut_Meeting(int); - /* 80ABD124 */ void EvCut_Appear(int); - /* 80ABD8A0 */ void EvCut_WiretapSponsor(int); - /* 80ABDB7C */ void EvCut_WiretapEntrant(int); - /* 80ABDE9C */ void setParam(); - /* 80ABE1D0 */ void main(); - /* 80ABE470 */ void playMotion(); - /* 80ABE9FC */ void ctrlBtk(); - /* 80ABEAD8 */ void setAttnPos(); - /* 80ABEE98 */ void lookat(); - /* 80ABF074 */ bool drawDbgInfo(); - - static u8 mEvtSeqList[84]; -}; - -struct daNpcRafrel_Param_c { - /* 80ABF974 */ ~daNpcRafrel_Param_c(); - - static u8 const m[116]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80ABF360 */ ~daNpcF_c(); - /* 80ABF5AC */ daNpcF_c(); - /* 80ABF920 */ void adjustShapeAngle(); - /* 80ABF924 */ void setCollisions(); - /* 80ABF928 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80ABF2E0 */ ~csXyz(); - /* 80ABF31C */ csXyz(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80ABF320 */ ~cXyz(); - /* 80ABF35C */ cXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80ABF210 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80ABF18C */ ~daNpcF_ActorMngr_c(); - /* 80ABF1D4 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); - /* 800432EC */ void convPId(unsigned int); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80ABF80C */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80ABF868 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80ABF79C */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AB97B0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AB97F8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80ABF92C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80ABF07C */ void func_80ABF07C(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - -struct J3DTexNoAnm { - /* 80ABA26C */ ~J3DTexNoAnm(); - /* 80ABA2B4 */ J3DTexNoAnm(); - /* 80ABDE6C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80ABA2D8 */ ~J3DTexMtxAnm(); - /* 80ABA314 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80ABA1C4 */ ~J3DTevKColorAnm(); - /* 80ABA200 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80ABA218 */ ~J3DTevColorAnm(); - /* 80ABA254 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80ABA32C */ ~J3DMatColorAnm(); - /* 80ABA368 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80ABF8D8 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -586,10 +213,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -606,10 +229,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -620,12 +240,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -911,25 +527,30 @@ SECTION_DATA static void* lit_5117[3] = { }; /* 80AC01D8-80AC01F8 -00001 0020+00 1/0 0/0 0/0 .data daNpcRafrel_MethodTable */ -SECTION_DATA static void* daNpcRafrel_MethodTable[8] = { - (void*)daNpcRafrel_Create__FPv, - (void*)daNpcRafrel_Delete__FPv, - (void*)daNpcRafrel_Execute__FPv, - (void*)daNpcRafrel_IsDelete__FPv, - (void*)daNpcRafrel_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcRafrel_MethodTable = { + (process_method_func)daNpcRafrel_Create__FPv, + (process_method_func)daNpcRafrel_Delete__FPv, + (process_method_func)daNpcRafrel_Execute__FPv, + (process_method_func)daNpcRafrel_IsDelete__FPv, + (process_method_func)daNpcRafrel_Draw__FPv, }; /* 80AC01F8-80AC0228 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_RAFREL */ -SECTION_DATA extern void* g_profile_NPC_RAFREL[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029B0000, (void*)&g_fpcLf_Method, - (void*)0x00000E18, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x019E0000, (void*)&daNpcRafrel_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_RAFREL = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_RAFREL, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcRafrel_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 414, // mPriority + &daNpcRafrel_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AC0228-80AC0234 0003A8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1044,7 +665,8 @@ asm daNpcRafrel_c::daNpcRafrel_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__8cM3dGCylFv.s" } @@ -1054,7 +676,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__8cM3dGAabFv.s" } @@ -1158,7 +781,8 @@ asm void daNpcRafrel_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__15J3DTevKColorAnmFv.s" } @@ -1168,7 +792,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__15J3DTevKColorAnmFv.s" } @@ -1178,7 +803,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__14J3DTevColorAnmFv.s" } @@ -1188,7 +814,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__14J3DTevColorAnmFv.s" } @@ -1198,7 +825,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__11J3DTexNoAnmFv.s" } @@ -1208,7 +836,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__11J3DTexNoAnmFv.s" } @@ -1218,7 +847,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__12J3DTexMtxAnmFv.s" } @@ -1228,7 +858,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__12J3DTexMtxAnmFv.s" } @@ -1238,7 +869,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__14J3DMatColorAnmFv.s" } @@ -1248,7 +880,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__14J3DMatColorAnmFv.s" } @@ -2371,7 +2004,8 @@ static bool daNpcRafrel_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/calc__11J3DTexNoAnmCFPUs.s" } @@ -2542,7 +2176,8 @@ REGISTER_CTORS(0x80ABF088, __sinit_d_a_npc_rafrel_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2552,7 +2187,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2562,7 +2198,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__15daNpcF_Lookat_cFv.s" } @@ -2572,14 +2209,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__5csXyzFv.s" } #pragma pop /* 80ABF31C-80ABF320 005DDC 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2587,14 +2226,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__4cXyzFv.s" } #pragma pop /* 80ABF35C-80ABF360 005E1C 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2602,7 +2243,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__8daNpcF_cFv.s" } @@ -2612,7 +2254,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__ct__8daNpcF_cFv.s" } @@ -2622,7 +2265,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__12dBgS_AcchCirFv.s" } @@ -2632,7 +2276,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__10dCcD_GSttsFv.s" } @@ -2642,7 +2287,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__12dBgS_ObjAcchFv.s" } @@ -2652,24 +2298,28 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80ABF920-80ABF924 0063E0 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80ABF924-80ABF928 0063E4 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80ABF928-80ABF92C 0063E8 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -2677,7 +2327,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_rafrel/d_a_npc_rafrel/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.cpp b/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.cpp index 4e16752434..2d293deee7 100644 --- a/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.cpp +++ b/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.cpp @@ -1,359 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_saru -// +/** + * @file d_a_npc_saru.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_saru/d_a_npc_saru.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AC3CE8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Saru_c { - /* 80AC042C */ ~daNpc_Saru_c(); - /* 80AC0578 */ void create(); - /* 80AC082C */ void CreateHeap(); - /* 80AC0A54 */ void Delete(); - /* 80AC0A88 */ void Execute(); - /* 80AC0AA8 */ void Draw(); - /* 80AC0AEC */ void createHeapCallBack(fopAc_ac_c*); - /* 80AC0B0C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AC0B64 */ void srchYm(void*, void*); - /* 80AC0C0C */ void getType(); - /* 80AC0C58 */ void isDelete(); - /* 80AC0CE8 */ void reset(); - /* 80AC0EA4 */ void afterJntAnm(int); - /* 80AC0F28 */ void checkChangeEvt(); - /* 80AC0FDC */ void setParam(); - /* 80AC1110 */ void setAfterTalkMotion(); - /* 80AC1170 */ void srchActors(); - /* 80AC11D4 */ void evtTalk(); - /* 80AC1274 */ void evtCutProc(); - /* 80AC133C */ void action(); - /* 80AC14E4 */ void beforeMove(); - /* 80AC15B4 */ void setAttnPos(); - /* 80AC18A0 */ void setCollision(); - /* 80AC1A20 */ bool drawDbgInfo(); - /* 80AC1A28 */ void drawOtherMdl(); - /* 80AC1B30 */ void selectAction(); - /* 80AC1B78 */ void chkAction(int (daNpc_Saru_c::*)(void*)); - /* 80AC1BA4 */ void setAction(int (daNpc_Saru_c::*)(void*)); - /* 80AC1C4C */ void setSe(); - /* 80AC216C */ void cutFindMonkey(int); - /* 80AC2368 */ void cutHelpMe(int); - /* 80AC2598 */ void cutYmLook(int); - /* 80AC28A4 */ void wait(void*); - /* 80AC2FD8 */ void talk(void*); - /* 80AC4394 */ daNpc_Saru_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AC4474 */ s32 getHeadJointNo(); - /* 80AC447C */ s32 getNeckJointNo(); - /* 80AC4484 */ bool getBackboneJointNo(); - - static void* mCutNameList[4]; - static u8 mCutList[48]; -}; - -struct daNpc_Saru_Param_c { - /* 80AC448C */ ~daNpc_Saru_Param_c(); - - static u8 const m[144]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80AC3648 */ ~csXyz(); - /* 80AC3BE4 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AC360C */ ~cXyz(); - /* 80AC3CE4 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80AC3284 */ ~daNpcT_c(); - /* 80AC37E0 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AC41D8 */ void ctrlSubFaceMotion(int); - /* 80AC41DC */ bool checkChangeJoint(int); - /* 80AC41E4 */ bool checkRemoveJoint(int); - /* 80AC41EC */ s32 getFootLJointNo(); - /* 80AC41F4 */ s32 getFootRJointNo(); - /* 80AC41FC */ bool getEyeballLMaterialNo(); - /* 80AC4204 */ bool getEyeballRMaterialNo(); - /* 80AC420C */ bool getEyeballMaterialNo(); - /* 80AC4214 */ bool evtEndProc(); - /* 80AC421C */ void afterMoved(); - /* 80AC4220 */ bool chkXYItems(); - /* 80AC4228 */ void decTmr(); - /* 80AC4240 */ void drawGhost(); - /* 80AC4244 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AC424C */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AC4254 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AC4284 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AC42B4 */ void changeAnm(int*, int*); - /* 80AC42B8 */ void changeBck(int*, int*); - /* 80AC42BC */ void changeBtp(int*, int*); - /* 80AC42C0 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80AC36CC */ ~daNpcT_Path_c(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AC3BE8 */ ~daNpcT_JntAnm_c(); - /* 80AC3EB4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AC3FD0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AC3684 */ ~daNpcT_ActorMngr_c(); - /* 80AC3714 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A4C4 */ void remove(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AC3DA0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AC3DFC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AC3D30 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AC3750 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AC3798 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AC323C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80AC3E6C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -458,7 +110,6 @@ extern "C" u8 mCutList__12daNpc_Saru_c[48]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -577,12 +228,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -600,11 +245,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcat(); -extern "C" void strcpy(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -613,13 +254,8 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -896,25 +532,30 @@ SECTION_DATA static void* lit_4930[3] = { }; /* 80AC4E24-80AC4E44 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Saru_MethodTable */ -SECTION_DATA static void* daNpc_Saru_MethodTable[8] = { - (void*)daNpc_Saru_Create__FPv, - (void*)daNpc_Saru_Delete__FPv, - (void*)daNpc_Saru_Execute__FPv, - (void*)daNpc_Saru_IsDelete__FPv, - (void*)daNpc_Saru_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Saru_MethodTable = { + (process_method_func)daNpc_Saru_Create__FPv, + (process_method_func)daNpc_Saru_Delete__FPv, + (process_method_func)daNpc_Saru_Execute__FPv, + (process_method_func)daNpc_Saru_IsDelete__FPv, + (process_method_func)daNpc_Saru_Draw__FPv, }; /* 80AC4E44-80AC4E74 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SARU */ -SECTION_DATA extern void* g_profile_NPC_SARU[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02640000, (void*)&g_fpcLf_Method, - (void*)0x00000FE0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01650000, (void*)&daNpc_Saru_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SARU = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SARU, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Saru_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 357, // mPriority + &daNpc_Saru_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AC4E74-80AC4E80 0007D0 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1772,7 +1413,8 @@ static bool daNpc_Saru_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__10cCcD_GSttsFv.s" } @@ -1782,7 +1424,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__8daNpcT_cFv.s" } @@ -1792,7 +1435,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__4cXyzFv.s" } @@ -1802,7 +1446,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__5csXyzFv.s" } @@ -1812,7 +1457,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1822,7 +1468,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__13daNpcT_Path_cFv.s" } @@ -1832,7 +1479,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -1842,7 +1490,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__8cM3dGCylFv.s" } @@ -1852,7 +1501,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__8cM3dGAabFv.s" } @@ -1864,18 +1514,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/func_80AC37E0.s" } #pragma pop /* 80AC3BE4-80AC3BE8 0038A4 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1883,14 +1535,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AC3CE4-80AC3CE8 0039A4 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1898,7 +1552,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1908,7 +1563,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__12dBgS_AcchCirFv.s" } @@ -1918,7 +1574,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__10dCcD_GSttsFv.s" } @@ -1928,7 +1585,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__12dBgS_ObjAcchFv.s" } @@ -1938,7 +1596,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/__dt__12J3DFrameCtrlFv.s" } @@ -1948,8 +1607,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1959,14 +1619,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AC41D8-80AC41DC 003E98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1992,13 +1654,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AC41FC-80AC4204 003EBC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AC4204-80AC420C 003EC4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2009,7 +1673,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80AC4214-80AC421C 003ED4 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2019,7 +1684,8 @@ void daNpcT_c::afterMoved() { } /* 80AC4220-80AC4228 003EE0 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2027,25 +1693,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AC4240-80AC4244 003F00 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AC4244-80AC424C 003F04 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AC424C-80AC4254 003F0C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2054,7 +1724,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2065,29 +1736,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_saru/d_a_npc_saru/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AC42B4-80AC42B8 003F74 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC42B8-80AC42BC 003F78 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC42BC-80AC42C0 003F7C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC42C0-80AC42C4 003F80 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.cpp b/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.cpp index 9440795f8e..a21bf1e54e 100644 --- a/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.cpp +++ b/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.cpp @@ -1,287 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seib -// +/** + * @file d_a_npc_seib.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seib/d_a_npc_seib.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AC6C2C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_seiB_c { - /* 80AC50EC */ ~daNpc_seiB_c(); - /* 80AC5188 */ void create(); - /* 80AC53C8 */ void CreateHeap(); - /* 80AC5520 */ void Delete(); - /* 80AC5554 */ void Execute(); - /* 80AC5574 */ void Draw(); - /* 80AC5608 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AC5628 */ void getType(); - /* 80AC5648 */ void getFlowNodeNo(); - /* 80AC5664 */ bool isDelete(); - /* 80AC566C */ void reset(); - /* 80AC57C4 */ void setParam(); - /* 80AC58F0 */ void srchActors(); - /* 80AC58F4 */ void evtTalk(); - /* 80AC59F4 */ void evtCutProc(); - /* 80AC5ABC */ void action(); - /* 80AC5B44 */ void beforeMove(); - /* 80AC5BC4 */ void setAttnPos(); - /* 80AC5C20 */ bool drawDbgInfo(); - /* 80AC5C28 */ void afterSetMotionAnm(int, int, f32, int); - /* 80AC5DC0 */ void selectAction(); - /* 80AC5E08 */ void chkAction(int (daNpc_seiB_c::*)(void*)); - /* 80AC5E34 */ void setAction(int (daNpc_seiB_c::*)(void*)); - /* 80AC5EDC */ void ctrlWaitAnm(); - /* 80AC6140 */ void wait(void*); - /* 80AC616C */ void talk(void*); - /* 80AC6F74 */ daNpc_seiB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_seiB_Param_c { - /* 80AC6FB8 */ ~daNpc_seiB_Param_c(); - - static u8 const m[148]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80AC6664 */ ~cXyz(); - /* 80AC6BE0 */ cXyz(); -}; - -struct daNpcT_c { - /* 8014810C */ void getTexSRTKeyAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148338 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AC62DC */ ~daNpcT_c(); - /* 80AC66DC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AC6DF8 */ bool getEyeballMaterialNo(); - /* 80AC6E00 */ void ctrlSubFaceMotion(int); - /* 80AC6E04 */ bool checkChangeJoint(int); - /* 80AC6E0C */ bool checkRemoveJoint(int); - /* 80AC6E14 */ s32 getBackboneJointNo(); - /* 80AC6E1C */ s32 getNeckJointNo(); - /* 80AC6E24 */ s32 getHeadJointNo(); - /* 80AC6E2C */ s32 getFootLJointNo(); - /* 80AC6E34 */ s32 getFootRJointNo(); - /* 80AC6E3C */ bool getEyeballLMaterialNo(); - /* 80AC6E44 */ bool getEyeballRMaterialNo(); - /* 80AC6E4C */ void afterJntAnm(int); - /* 80AC6E50 */ bool checkChangeEvt(); - /* 80AC6E58 */ bool evtEndProc(); - /* 80AC6E60 */ void setAfterTalkMotion(); - /* 80AC6E64 */ void afterMoved(); - /* 80AC6E68 */ void setCollision(); - /* 80AC6E6C */ bool chkXYItems(); - /* 80AC6E74 */ void decTmr(); - /* 80AC6E8C */ void drawOtherMdl(); - /* 80AC6E90 */ void drawGhost(); - /* 80AC6E94 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AC6E9C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AC6ECC */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AC6EFC */ void changeAnm(int*, int*); - /* 80AC6F00 */ void changeBck(int*, int*); - /* 80AC6F04 */ void changeBtp(int*, int*); - /* 80AC6F08 */ void changeBtk(int*, int*); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80AC6AE4 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80AC6BE4 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AC6CE4 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AC6D40 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AC6C74 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AC66A0 */ ~csXyz(); - /* 80AC6AE0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80AC58DC */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcD_GStts { - /* 80AC6294 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AC6DB0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -376,7 +100,6 @@ extern "C" u8 mCutList__12daNpc_seiB_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); @@ -459,13 +182,10 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_25(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" void __register_global_object(); // @@ -627,25 +347,30 @@ SECTION_DATA static void* lit_4467[3] = { }; /* 80AC729C-80AC72BC -00001 0020+00 1/0 0/0 0/0 .data daNpc_seiB_MethodTable */ -SECTION_DATA static void* daNpc_seiB_MethodTable[8] = { - (void*)daNpc_seiB_Create__FPv, - (void*)daNpc_seiB_Delete__FPv, - (void*)daNpc_seiB_Execute__FPv, - (void*)daNpc_seiB_IsDelete__FPv, - (void*)daNpc_seiB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_seiB_MethodTable = { + (process_method_func)daNpc_seiB_Create__FPv, + (process_method_func)daNpc_seiB_Delete__FPv, + (process_method_func)daNpc_seiB_Execute__FPv, + (process_method_func)daNpc_seiB_IsDelete__FPv, + (process_method_func)daNpc_seiB_Draw__FPv, }; /* 80AC72BC-80AC72EC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEIB */ -SECTION_DATA extern void* g_profile_NPC_SEIB[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02650000, (void*)&g_fpcLf_Method, - (void*)0x00000E68, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01660000, (void*)&daNpc_seiB_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_SEIB = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SEIB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_seiB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 358, // mPriority + &daNpc_seiB_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AC72EC-80AC72F8 0001F4 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -937,7 +662,8 @@ asm void daNpc_seiB_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/getDistTable__12dAttention_cFi.s" } @@ -1131,7 +857,8 @@ static bool daNpc_seiB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__10cCcD_GSttsFv.s" } @@ -1141,7 +868,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__8daNpcT_cFv.s" } @@ -1151,7 +879,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__4cXyzFv.s" } @@ -1161,7 +890,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__5csXyzFv.s" } @@ -1173,18 +903,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/func_80AC66DC.s" } #pragma pop /* 80AC6AE0-80AC6AE4 001AE0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1192,14 +924,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AC6BE0-80AC6BE4 001BE0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1207,7 +941,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1217,7 +952,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1227,7 +963,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__12dBgS_AcchCirFv.s" } @@ -1237,7 +974,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__10dCcD_GSttsFv.s" } @@ -1247,7 +985,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__12dBgS_ObjAcchFv.s" } @@ -1257,7 +996,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/__dt__12J3DFrameCtrlFv.s" } @@ -1270,7 +1010,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80AC6E00-80AC6E04 001E00 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1311,13 +1052,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AC6E3C-80AC6E44 001E3C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AC6E44-80AC6E4C 001E44 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1332,7 +1075,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80AC6E58-80AC6E60 001E58 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1352,7 +1096,8 @@ void daNpcT_c::setCollision() { } /* 80AC6E6C-80AC6E74 001E6C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1360,24 +1105,28 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AC6E8C-80AC6E90 001E8C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AC6E90-80AC6E94 001E90 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AC6E94-80AC6E9C 001E94 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1386,7 +1135,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1397,29 +1147,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seib/d_a_npc_seib/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AC6EFC-80AC6F00 001EFC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC6F00-80AC6F04 001F00 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC6F04-80AC6F08 001F04 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC6F08-80AC6F0C 001F08 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.cpp b/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.cpp index 0a8691b077..c748180f72 100644 --- a/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.cpp +++ b/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.cpp @@ -1,286 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seic -// +/** + * @file d_a_npc_seic.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seic/d_a_npc_seic.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AC8E24 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_seiC_c { - /* 80AC754C */ ~daNpc_seiC_c(); - /* 80AC75E8 */ void create(); - /* 80AC7828 */ void CreateHeap(); - /* 80AC7980 */ void Delete(); - /* 80AC79B4 */ void Execute(); - /* 80AC79D4 */ void Draw(); - /* 80AC7A68 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AC7A88 */ void getType(); - /* 80AC7AA8 */ void getFlowNodeNo(); - /* 80AC7AC4 */ bool isDelete(); - /* 80AC7ACC */ void reset(); - /* 80AC7C1C */ void setParam(); - /* 80AC7D48 */ void srchActors(); - /* 80AC7D4C */ void evtTalk(); - /* 80AC7E4C */ void evtCutProc(); - /* 80AC7F14 */ void action(); - /* 80AC7F9C */ void beforeMove(); - /* 80AC801C */ void setAttnPos(); - /* 80AC8078 */ bool drawDbgInfo(); - /* 80AC8080 */ void afterSetMotionAnm(int, int, f32, int); - /* 80AC8218 */ void selectAction(); - /* 80AC8260 */ void chkAction(int (daNpc_seiC_c::*)(void*)); - /* 80AC828C */ void setAction(int (daNpc_seiC_c::*)(void*)); - /* 80AC8334 */ void ctrlWaitAnm(); - /* 80AC8338 */ void wait(void*); - /* 80AC8364 */ void talk(void*); - /* 80AC916C */ daNpc_seiC_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_seiC_Param_c { - /* 80AC91B0 */ ~daNpc_seiC_Param_c(); - - static u8 const m[148]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80AC885C */ ~cXyz(); - /* 80AC8DD8 */ cXyz(); -}; - -struct daNpcT_c { - /* 8014810C */ void getTexSRTKeyAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148338 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AC84D4 */ ~daNpcT_c(); - /* 80AC88D4 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AC8FF0 */ bool getEyeballMaterialNo(); - /* 80AC8FF8 */ void ctrlSubFaceMotion(int); - /* 80AC8FFC */ bool checkChangeJoint(int); - /* 80AC9004 */ bool checkRemoveJoint(int); - /* 80AC900C */ s32 getBackboneJointNo(); - /* 80AC9014 */ s32 getNeckJointNo(); - /* 80AC901C */ s32 getHeadJointNo(); - /* 80AC9024 */ s32 getFootLJointNo(); - /* 80AC902C */ s32 getFootRJointNo(); - /* 80AC9034 */ bool getEyeballLMaterialNo(); - /* 80AC903C */ bool getEyeballRMaterialNo(); - /* 80AC9044 */ void afterJntAnm(int); - /* 80AC9048 */ bool checkChangeEvt(); - /* 80AC9050 */ bool evtEndProc(); - /* 80AC9058 */ void setAfterTalkMotion(); - /* 80AC905C */ void afterMoved(); - /* 80AC9060 */ void setCollision(); - /* 80AC9064 */ bool chkXYItems(); - /* 80AC906C */ void decTmr(); - /* 80AC9084 */ void drawOtherMdl(); - /* 80AC9088 */ void drawGhost(); - /* 80AC908C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AC9094 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AC90C4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AC90F4 */ void changeAnm(int*, int*); - /* 80AC90F8 */ void changeBck(int*, int*); - /* 80AC90FC */ void changeBtp(int*, int*); - /* 80AC9100 */ void changeBtk(int*, int*); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80AC8CDC */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80AC8DDC */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AC8EDC */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AC8F38 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AC8E6C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AC8898 */ ~csXyz(); - /* 80AC8CD8 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80AC7D34 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcD_GStts { - /* 80AC848C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AC8FA8 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -375,7 +100,6 @@ extern "C" u8 mCutList__12daNpc_seiC_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); @@ -457,13 +181,10 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_25(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" void __register_global_object(); // @@ -615,25 +336,30 @@ SECTION_DATA static void* lit_4467[3] = { }; /* 80AC93E0-80AC9400 -00001 0020+00 1/0 0/0 0/0 .data daNpc_seiC_MethodTable */ -SECTION_DATA static void* daNpc_seiC_MethodTable[8] = { - (void*)daNpc_seiC_Create__FPv, - (void*)daNpc_seiC_Delete__FPv, - (void*)daNpc_seiC_Execute__FPv, - (void*)daNpc_seiC_IsDelete__FPv, - (void*)daNpc_seiC_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_seiC_MethodTable = { + (process_method_func)daNpc_seiC_Create__FPv, + (process_method_func)daNpc_seiC_Delete__FPv, + (process_method_func)daNpc_seiC_Execute__FPv, + (process_method_func)daNpc_seiC_IsDelete__FPv, + (process_method_func)daNpc_seiC_Draw__FPv, }; /* 80AC9400-80AC9430 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEIC */ -SECTION_DATA extern void* g_profile_NPC_SEIC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02660000, (void*)&g_fpcLf_Method, - (void*)0x00000E64, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01670000, (void*)&daNpc_seiC_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_SEIC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SEIC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_seiC_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 359, // mPriority + &daNpc_seiC_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AC9430-80AC943C 000140 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -928,7 +654,8 @@ asm void daNpc_seiC_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/getDistTable__12dAttention_cFi.s" } @@ -1117,7 +844,8 @@ static bool daNpc_seiC_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__10cCcD_GSttsFv.s" } @@ -1127,7 +855,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__8daNpcT_cFv.s" } @@ -1137,7 +866,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__4cXyzFv.s" } @@ -1147,7 +877,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__5csXyzFv.s" } @@ -1159,18 +890,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/func_80AC88D4.s" } #pragma pop /* 80AC8CD8-80AC8CDC 001878 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1178,14 +911,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AC8DD8-80AC8DDC 001978 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1193,7 +928,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1203,7 +939,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1213,7 +950,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__12dBgS_AcchCirFv.s" } @@ -1223,7 +961,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__10dCcD_GSttsFv.s" } @@ -1233,7 +972,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__12dBgS_ObjAcchFv.s" } @@ -1243,7 +983,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/__dt__12J3DFrameCtrlFv.s" } @@ -1256,7 +997,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80AC8FF8-80AC8FFC 001B98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1297,13 +1039,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AC9034-80AC903C 001BD4 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AC903C-80AC9044 001BDC 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1318,7 +1062,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80AC9050-80AC9058 001BF0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1338,7 +1083,8 @@ void daNpcT_c::setCollision() { } /* 80AC9064-80AC906C 001C04 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1346,24 +1092,28 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AC9084-80AC9088 001C24 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AC9088-80AC908C 001C28 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AC908C-80AC9094 001C2C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1372,7 +1122,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1383,29 +1134,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seic/d_a_npc_seic/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AC90F4-80AC90F8 001C94 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC90F8-80AC90FC 001C98 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC90FC-80AC9100 001C9C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AC9100-80AC9104 001CA0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.cpp b/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.cpp index fc9dc50996..fc4a068b23 100644 --- a/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.cpp +++ b/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.cpp @@ -1,286 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seid -// +/** + * @file d_a_npc_seid.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seid/d_a_npc_seid.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80ACAF64 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_seiD_c { - /* 80AC968C */ ~daNpc_seiD_c(); - /* 80AC9728 */ void create(); - /* 80AC9968 */ void CreateHeap(); - /* 80AC9AC0 */ void Delete(); - /* 80AC9AF4 */ void Execute(); - /* 80AC9B14 */ void Draw(); - /* 80AC9BA8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AC9BC8 */ void getType(); - /* 80AC9BE8 */ void getFlowNodeNo(); - /* 80AC9C04 */ bool isDelete(); - /* 80AC9C0C */ void reset(); - /* 80AC9D5C */ void setParam(); - /* 80AC9E88 */ void srchActors(); - /* 80AC9E8C */ void evtTalk(); - /* 80AC9F8C */ void evtCutProc(); - /* 80ACA054 */ void action(); - /* 80ACA0DC */ void beforeMove(); - /* 80ACA15C */ void setAttnPos(); - /* 80ACA1B8 */ bool drawDbgInfo(); - /* 80ACA1C0 */ void afterSetMotionAnm(int, int, f32, int); - /* 80ACA358 */ void selectAction(); - /* 80ACA3A0 */ void chkAction(int (daNpc_seiD_c::*)(void*)); - /* 80ACA3CC */ void setAction(int (daNpc_seiD_c::*)(void*)); - /* 80ACA474 */ void ctrlWaitAnm(); - /* 80ACA478 */ void wait(void*); - /* 80ACA4A4 */ void talk(void*); - /* 80ACB2AC */ daNpc_seiD_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_seiD_Param_c { - /* 80ACB2F0 */ ~daNpc_seiD_Param_c(); - - static u8 const m[148]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80ACA99C */ ~cXyz(); - /* 80ACAF18 */ cXyz(); -}; - -struct daNpcT_c { - /* 8014810C */ void getTexSRTKeyAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148338 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80ACA614 */ ~daNpcT_c(); - /* 80ACAA14 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80ACB130 */ bool getEyeballMaterialNo(); - /* 80ACB138 */ void ctrlSubFaceMotion(int); - /* 80ACB13C */ bool checkChangeJoint(int); - /* 80ACB144 */ bool checkRemoveJoint(int); - /* 80ACB14C */ s32 getBackboneJointNo(); - /* 80ACB154 */ s32 getNeckJointNo(); - /* 80ACB15C */ s32 getHeadJointNo(); - /* 80ACB164 */ s32 getFootLJointNo(); - /* 80ACB16C */ s32 getFootRJointNo(); - /* 80ACB174 */ bool getEyeballLMaterialNo(); - /* 80ACB17C */ bool getEyeballRMaterialNo(); - /* 80ACB184 */ void afterJntAnm(int); - /* 80ACB188 */ bool checkChangeEvt(); - /* 80ACB190 */ bool evtEndProc(); - /* 80ACB198 */ void setAfterTalkMotion(); - /* 80ACB19C */ void afterMoved(); - /* 80ACB1A0 */ void setCollision(); - /* 80ACB1A4 */ bool chkXYItems(); - /* 80ACB1AC */ void decTmr(); - /* 80ACB1C4 */ void drawOtherMdl(); - /* 80ACB1C8 */ void drawGhost(); - /* 80ACB1CC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80ACB1D4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80ACB204 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80ACB234 */ void changeAnm(int*, int*); - /* 80ACB238 */ void changeBck(int*, int*); - /* 80ACB23C */ void changeBtp(int*, int*); - /* 80ACB240 */ void changeBtk(int*, int*); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80ACAE1C */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80ACAF1C */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80ACB01C */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80ACB078 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80ACAFAC */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80ACA9D8 */ ~csXyz(); - /* 80ACAE18 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80AC9E74 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcD_GStts { - /* 80ACA5CC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80ACB0E8 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -375,7 +100,6 @@ extern "C" u8 mCutList__12daNpc_seiD_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); @@ -457,13 +181,10 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_25(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" void __register_global_object(); // @@ -615,25 +336,30 @@ SECTION_DATA static void* lit_4467[3] = { }; /* 80ACB520-80ACB540 -00001 0020+00 1/0 0/0 0/0 .data daNpc_seiD_MethodTable */ -SECTION_DATA static void* daNpc_seiD_MethodTable[8] = { - (void*)daNpc_seiD_Create__FPv, - (void*)daNpc_seiD_Delete__FPv, - (void*)daNpc_seiD_Execute__FPv, - (void*)daNpc_seiD_IsDelete__FPv, - (void*)daNpc_seiD_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_seiD_MethodTable = { + (process_method_func)daNpc_seiD_Create__FPv, + (process_method_func)daNpc_seiD_Delete__FPv, + (process_method_func)daNpc_seiD_Execute__FPv, + (process_method_func)daNpc_seiD_IsDelete__FPv, + (process_method_func)daNpc_seiD_Draw__FPv, }; /* 80ACB540-80ACB570 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEID */ -SECTION_DATA extern void* g_profile_NPC_SEID[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02670000, (void*)&g_fpcLf_Method, - (void*)0x00000E64, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01680000, (void*)&daNpc_seiD_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_SEID = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SEID, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_seiD_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 360, // mPriority + &daNpc_seiD_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80ACB570-80ACB57C 000140 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -928,7 +654,8 @@ asm void daNpc_seiD_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/getDistTable__12dAttention_cFi.s" } @@ -1117,7 +844,8 @@ static bool daNpc_seiD_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__10cCcD_GSttsFv.s" } @@ -1127,7 +855,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__8daNpcT_cFv.s" } @@ -1137,7 +866,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__4cXyzFv.s" } @@ -1147,7 +877,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__5csXyzFv.s" } @@ -1159,18 +890,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/func_80ACAA14.s" } #pragma pop /* 80ACAE18-80ACAE1C 001878 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1178,14 +911,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80ACAF18-80ACAF1C 001978 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1193,7 +928,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1203,7 +939,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1213,7 +950,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__12dBgS_AcchCirFv.s" } @@ -1223,7 +961,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__10dCcD_GSttsFv.s" } @@ -1233,7 +972,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__12dBgS_ObjAcchFv.s" } @@ -1243,7 +983,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/__dt__12J3DFrameCtrlFv.s" } @@ -1256,7 +997,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80ACB138-80ACB13C 001B98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1297,13 +1039,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80ACB174-80ACB17C 001BD4 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80ACB17C-80ACB184 001BDC 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1318,7 +1062,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80ACB190-80ACB198 001BF0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1338,7 +1083,8 @@ void daNpcT_c::setCollision() { } /* 80ACB1A4-80ACB1AC 001C04 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1346,24 +1092,28 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80ACB1C4-80ACB1C8 001C24 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80ACB1C8-80ACB1CC 001C28 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80ACB1CC-80ACB1D4 001C2C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1372,7 +1122,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1383,29 +1134,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seid/d_a_npc_seid/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80ACB234-80ACB238 001C94 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80ACB238-80ACB23C 001C98 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80ACB23C-80ACB240 001C9C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80ACB240-80ACB244 001CA0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.cpp b/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.cpp index 40432dd515..8cc4d6f4f6 100644 --- a/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.cpp +++ b/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.cpp @@ -1,428 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seira -// +/** + * @file d_a_npc_seira.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seira/d_a_npc_seira.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80ACF47C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Seira_c { - /* 80ACB7CC */ ~daNpc_Seira_c(); - /* 80ACB918 */ void create(); - /* 80ACBBD4 */ void CreateHeap(); - /* 80ACC0FC */ void Delete(); - /* 80ACC130 */ void Execute(); - /* 80ACC21C */ void Draw(); - /* 80ACC2B0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80ACC2D0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80ACC328 */ void getType(); - /* 80ACC424 */ void getFlowNodeNo(); - /* 80ACC440 */ void checkBottle(); - /* 80ACC4A8 */ void getNpcType(); - /* 80ACC4C8 */ bool isDelete(); - /* 80ACC4D0 */ void reset(); - /* 80ACC618 */ void afterJntAnm(int); - /* 80ACC69C */ void setParam(); - /* 80ACC818 */ void checkChangeEvt(); - /* 80ACC8C0 */ void setAfterTalkMotion(); - /* 80ACC980 */ void srchActors(); - /* 80ACCA48 */ void evtTalk(); - /* 80ACCBEC */ void evtCutProc(); - /* 80ACCCBC */ void action(); - /* 80ACCE58 */ void beforeMove(); - /* 80ACCED0 */ void setAttnPos(); - /* 80ACD1D0 */ void setCollision(); - /* 80ACD378 */ bool drawDbgInfo(); - /* 80ACD380 */ void drawOtherMdl(); - /* 80ACD458 */ void setBottleAnm(int, int, f32, bool); - /* 80ACD538 */ void afterSetMotionAnm(int, int, f32, int); - /* 80ACD570 */ void changeAnm(int*, int*); - /* 80ACD600 */ void changeBck(int*, int*); - /* 80ACD6AC */ void changeBtp(int*, int*); - /* 80ACD744 */ void changeBtk(int*, int*); - /* 80ACD770 */ void selectAction(); - /* 80ACD900 */ void chkAction(int (daNpc_Seira_c::*)(void*)); - /* 80ACD92C */ void setAction(int (daNpc_Seira_c::*)(void*)); - /* 80ACD9D4 */ void cutConversationAboutSaru(int); - /* 80ACDC6C */ void checkStageIsSeirasShop(); - /* 80ACDCE4 */ void getShopItemType(); - /* 80ACDD24 */ void wait(void*); - /* 80ACDE74 */ void sit(void*); - /* 80ACE098 */ void happy(void*); - /* 80ACE220 */ void worry(void*); - /* 80ACE4FC */ void sad(void*); - /* 80ACE608 */ void lookaround(void*); - /* 80ACE714 */ void lookaround_wait(void*); - /* 80ACE828 */ void smile(void*); - /* 80ACE934 */ void talk(void*); - /* 80ACEAC4 */ void shop(void*); - /* 80ACFB48 */ daNpc_Seira_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80ACFC14 */ s32 getEyeballMaterialNo(); - /* 80ACFC1C */ s32 getHeadJointNo(); - /* 80ACFC24 */ s32 getNeckJointNo(); - /* 80ACFC2C */ bool getBackboneJointNo(); - /* 80ACFC34 */ void checkChangeJoint(int); - /* 80ACFC44 */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_Seira_Param_c { - /* 80ACFC54 */ ~daNpc_Seira_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80ACEEFC */ ~cXyz(); - /* 80ACF478 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80ACEF74 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80ACF96C */ void ctrlSubFaceMotion(int); - /* 80ACF970 */ s32 getFootLJointNo(); - /* 80ACF978 */ s32 getFootRJointNo(); - /* 80ACF980 */ bool getEyeballLMaterialNo(); - /* 80ACF988 */ bool getEyeballRMaterialNo(); - /* 80ACF990 */ bool evtEndProc(); - /* 80ACF998 */ void afterMoved(); - /* 80ACF99C */ bool chkXYItems(); - /* 80ACF9A4 */ void decTmr(); - /* 80ACF9BC */ void drawGhost(); - /* 80ACF9C0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80ACF9C8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80ACF9F8 */ void getMotionAnm(daNpcT_motionAnmData_c); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80ACF37C */ ~daNpcT_JntAnm_c(); - /* 80ACF648 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80ACF764 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80ACEDE8 */ ~daNpcT_ActorMngr_c(); - /* 80ACEE30 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_player_status_b_c { - /* 80032BB0 */ void isDarkClearLV(int) const; -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A238 */ void createShopItem(int); - /* 8019A564 */ void deleteObject(); - /* 8019AB24 */ void checkShopOpen(); - /* 80ACFCAC */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80ACFDC4 */ bool getResName2(int); - /* 80ACFDCC */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80ACFDD4 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80ACF534 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80ACF590 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80ACF4C4 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80ACEF38 */ ~csXyz(); - /* 80ACF378 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80ACEE6C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80ACEEB4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80ACEDA0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DTexNoAnm { - /* 80ACBFE8 */ ~J3DTexNoAnm(); - /* 80ACC030 */ J3DTexNoAnm(); - /* 80ACED70 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80ACC054 */ ~J3DTexMtxAnm(); - /* 80ACC090 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80ACBF40 */ ~J3DTevKColorAnm(); - /* 80ACBF7C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80ACBF94 */ ~J3DTevColorAnm(); - /* 80ACBFD0 */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80ACC0A8 */ ~J3DMatColorAnm(); - /* 80ACC0E4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80ACF600 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -552,7 +135,6 @@ extern "C" u8 mCutList__13daNpc_Seira_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -676,9 +258,6 @@ extern "C" void show__13J3DShapeTableFv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -694,10 +273,7 @@ extern "C" void _restgpr_25(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -709,11 +285,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_cursorHIO[68 + 4 /* padding */]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -1167,25 +739,30 @@ SECTION_DATA static void* lit_5178[3] = { #pragma pop /* 80AD0928-80AD0948 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Seira_MethodTable */ -SECTION_DATA static void* daNpc_Seira_MethodTable[8] = { - (void*)daNpc_Seira_Create__FPv, - (void*)daNpc_Seira_Delete__FPv, - (void*)daNpc_Seira_Execute__FPv, - (void*)daNpc_Seira_IsDelete__FPv, - (void*)daNpc_Seira_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Seira_MethodTable = { + (process_method_func)daNpc_Seira_Create__FPv, + (process_method_func)daNpc_Seira_Delete__FPv, + (process_method_func)daNpc_Seira_Execute__FPv, + (process_method_func)daNpc_Seira_IsDelete__FPv, + (process_method_func)daNpc_Seira_Draw__FPv, }; /* 80AD0948-80AD0978 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEIRA */ -SECTION_DATA extern void* g_profile_NPC_SEIRA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02680000, (void*)&g_fpcLf_Method, - (void*)0x00001108, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01690000, (void*)&daNpc_Seira_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SEIRA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SEIRA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Seira_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 361, // mPriority + &daNpc_Seira_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AD0978-80AD0984 0009E8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1464,7 +1041,8 @@ asm void daNpc_Seira_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__15J3DTevKColorAnmFv.s" } @@ -1474,7 +1052,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__15J3DTevKColorAnmFv.s" } @@ -1484,7 +1063,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__14J3DTevColorAnmFv.s" } @@ -1494,7 +1074,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__14J3DTevColorAnmFv.s" } @@ -1504,7 +1085,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__11J3DTexNoAnmFv.s" } @@ -1514,7 +1096,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__11J3DTexNoAnmFv.s" } @@ -1524,7 +1107,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__12J3DTexMtxAnmFv.s" } @@ -1534,7 +1118,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__12J3DTexMtxAnmFv.s" } @@ -1544,7 +1129,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__14J3DMatColorAnmFv.s" } @@ -1554,7 +1140,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__14J3DMatColorAnmFv.s" } @@ -2180,7 +1767,8 @@ static bool daNpc_Seira_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/calc__11J3DTexNoAnmCFPUs.s" } @@ -2190,7 +1778,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__10cCcD_GSttsFv.s" } @@ -2200,7 +1789,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2210,7 +1800,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2220,7 +1811,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__8cM3dGCylFv.s" } @@ -2230,7 +1822,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__8cM3dGAabFv.s" } @@ -2240,7 +1833,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__4cXyzFv.s" } @@ -2250,7 +1844,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__5csXyzFv.s" } @@ -2262,18 +1857,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/func_80ACEF74.s" } #pragma pop /* 80ACF378-80ACF37C 003C98 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2281,14 +1878,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80ACF478-80ACF47C 003D98 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2296,7 +1895,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2306,7 +1906,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__12dBgS_AcchCirFv.s" } @@ -2316,7 +1917,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__10dCcD_GSttsFv.s" } @@ -2326,7 +1928,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__12dBgS_ObjAcchFv.s" } @@ -2336,7 +1939,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/__dt__12J3DFrameCtrlFv.s" } @@ -2346,8 +1950,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2357,14 +1962,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80ACF96C-80ACF970 00428C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2380,18 +1987,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80ACF980-80ACF988 0042A0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80ACF988-80ACF990 0042A8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80ACF990-80ACF998 0042B0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2401,7 +2011,8 @@ void daNpcT_c::afterMoved() { } /* 80ACF99C-80ACF9A4 0042BC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2409,19 +2020,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80ACF9BC-80ACF9C0 0042DC 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80ACF9C0-80ACF9C8 0042E0 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2430,7 +2044,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2441,7 +2056,8 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } @@ -2593,31 +2209,35 @@ static asm void func_80ACFCA4() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira/d_a_npc_seira/func_80ACFCAC.s" } #pragma pop /* 80ACFDC4-80ACFDCC 0046E4 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 80ACFDCC-80ACFDD4 0046EC 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80ACFDD4-80ACFDDC 0046F4 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } diff --git a/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.cpp b/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.cpp index ba8247fb6f..db96e4e442 100644 --- a/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.cpp +++ b/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.cpp @@ -1,422 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seira2 -// +/** + * @file d_a_npc_seira2.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AD40F4 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Seira2_c { - /* 80AD0C0C */ ~daNpc_Seira2_c(); - /* 80AD0D58 */ void create(); - /* 80AD0FF8 */ void CreateHeap(); - /* 80AD1508 */ void Delete(); - /* 80AD153C */ void Execute(); - /* 80AD1610 */ void Draw(); - /* 80AD16A4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AD16C4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AD171C */ void getType(); - /* 80AD179C */ void getFlowNodeNo(); - /* 80AD17B8 */ void getMaxNumItem(); - /* 80AD17C4 */ void checkBottle(); - /* 80AD182C */ bool isDelete(); - /* 80AD1834 */ void reset(); - /* 80AD1968 */ void afterJntAnm(int); - /* 80AD19EC */ void setParam(); - /* 80AD1B38 */ void setAfterTalkMotion(); - /* 80AD1BF8 */ void srchActors(); - /* 80AD1C60 */ void evtTalk(); - /* 80AD1E04 */ void evtCutProc(); - /* 80AD1ED4 */ void action(); - /* 80AD2030 */ void beforeMove(); - /* 80AD20A8 */ void setAttnPos(); - /* 80AD23A8 */ void setCollision(); - /* 80AD2550 */ bool drawDbgInfo(); - /* 80AD2558 */ void drawOtherMdl(); - /* 80AD2630 */ void setBottleAnm(int, int, f32, bool); - /* 80AD2710 */ void afterSetMotionAnm(int, int, f32, int); - /* 80AD2748 */ void selectAction(); - /* 80AD2870 */ void chkAction(int (daNpc_Seira2_c::*)(void*)); - /* 80AD289C */ void setAction(int (daNpc_Seira2_c::*)(void*)); - /* 80AD2944 */ void checkStageIsSeira2sShop(); - /* 80AD29BC */ void wait(void*); - /* 80AD2B68 */ void sit(void*); - /* 80AD2D8C */ void happy(void*); - /* 80AD2F14 */ void worry(void*); - /* 80AD31F0 */ void sad(void*); - /* 80AD3508 */ void lookaround(void*); - /* 80AD3614 */ void smile(void*); - /* 80AD3720 */ void talk(void*); - /* 80AD3890 */ void shop(void*); - /* 80AD47B8 */ daNpc_Seira2_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AD4884 */ s32 getEyeballMaterialNo(); - /* 80AD488C */ s32 getHeadJointNo(); - /* 80AD4894 */ s32 getNeckJointNo(); - /* 80AD489C */ bool getBackboneJointNo(); - /* 80AD48A4 */ void checkChangeJoint(int); - /* 80AD48B4 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Seira2_Param_c { - /* 80AD48C4 */ ~daNpc_Seira2_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AD3B74 */ ~cXyz(); - /* 80AD40F0 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80AD3BEC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AD45E4 */ void ctrlSubFaceMotion(int); - /* 80AD45E8 */ s32 getFootLJointNo(); - /* 80AD45F0 */ s32 getFootRJointNo(); - /* 80AD45F8 */ bool getEyeballLMaterialNo(); - /* 80AD4600 */ bool getEyeballRMaterialNo(); - /* 80AD4608 */ bool checkChangeEvt(); - /* 80AD4610 */ bool evtEndProc(); - /* 80AD4618 */ void afterMoved(); - /* 80AD461C */ bool chkXYItems(); - /* 80AD4624 */ void decTmr(); - /* 80AD463C */ void drawGhost(); - /* 80AD4640 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AD4648 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AD4678 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AD46A8 */ void changeAnm(int*, int*); - /* 80AD46AC */ void changeBck(int*, int*); - /* 80AD46B0 */ void changeBtp(int*, int*); - /* 80AD46B4 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AD3FF4 */ ~daNpcT_JntAnm_c(); - /* 80AD42C0 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AD43DC */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AD3A60 */ ~daNpcT_ActorMngr_c(); - /* 80AD3AA8 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_player_status_b_c { - /* 80032BB0 */ void isDarkClearLV(int) const; -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 80198878 */ void drawCursor(); - /* 80198950 */ void itemRotate(); - /* 80198A2C */ void itemZoom(cXyz*); - /* 8019A0D0 */ void shop_init(bool); - /* 8019A158 */ void shop_process(fopAc_ac_c*, dMsgFlow_c*); - /* 8019A564 */ void deleteObject(); - /* 8019A5D0 */ void searchItemActor(); - /* 8019AB1C */ void setSellItemMax(u8); - /* 8019AB24 */ void checkShopOpen(); - /* 80AD491C */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AD4A34 */ bool getResName2(int); - /* 80AD4A3C */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80AD4A44 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AD41AC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AD4208 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AD413C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AD3BB0 */ ~csXyz(); - /* 80AD3FF0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AD3AE4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AD3B2C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AD3A18 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct ShopCam_action_c { - /* 80195C9C */ void shop_cam_action_init(); - /* 8019630C */ void Save(); - /* 8019635C */ void EventRecoverNotime(); - /* 801963B4 */ void Reset(); - /* 801964C8 */ void move(); -}; - -struct J3DTexNoAnm { - /* 80AD13F4 */ ~J3DTexNoAnm(); - /* 80AD143C */ J3DTexNoAnm(); - /* 80AD39E8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AD1460 */ ~J3DTexMtxAnm(); - /* 80AD149C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AD134C */ ~J3DTevKColorAnm(); - /* 80AD1388 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AD13A0 */ ~J3DTevColorAnm(); - /* 80AD13DC */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AD14B4 */ ~J3DMatColorAnm(); - /* 80AD14F0 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AD4278 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -543,7 +132,6 @@ extern "C" u8 mCutList__14daNpc_Seira2_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -663,9 +251,6 @@ extern "C" void show__13J3DShapeTableFv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -679,10 +264,7 @@ extern "C" void _restgpr_22(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -694,10 +276,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -1069,25 +647,30 @@ SECTION_DATA static void* lit_5060[3] = { #pragma pop /* 80AD5444-80AD5464 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Seira2_MethodTable */ -SECTION_DATA static void* daNpc_Seira2_MethodTable[8] = { - (void*)daNpc_Seira2_Create__FPv, - (void*)daNpc_Seira2_Delete__FPv, - (void*)daNpc_Seira2_Execute__FPv, - (void*)daNpc_Seira2_IsDelete__FPv, - (void*)daNpc_Seira2_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Seira2_MethodTable = { + (process_method_func)daNpc_Seira2_Create__FPv, + (process_method_func)daNpc_Seira2_Delete__FPv, + (process_method_func)daNpc_Seira2_Execute__FPv, + (process_method_func)daNpc_Seira2_IsDelete__FPv, + (process_method_func)daNpc_Seira2_Draw__FPv, }; /* 80AD5464-80AD5494 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SERA2 */ -SECTION_DATA extern void* g_profile_NPC_SERA2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02690000, (void*)&g_fpcLf_Method, - (void*)0x000010F4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016A0000, (void*)&daNpc_Seira2_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SERA2 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SERA2, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Seira2_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 362, // mPriority + &daNpc_Seira2_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AD5494-80AD54A0 000904 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1366,7 +949,8 @@ asm void daNpc_Seira2_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__15J3DTevKColorAnmFv.s" } @@ -1376,7 +960,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__15J3DTevKColorAnmFv.s" } @@ -1386,7 +971,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__14J3DTevColorAnmFv.s" } @@ -1396,7 +982,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__14J3DTevColorAnmFv.s" } @@ -1406,7 +993,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__11J3DTexNoAnmFv.s" } @@ -1416,7 +1004,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__11J3DTexNoAnmFv.s" } @@ -1426,7 +1015,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__12J3DTexMtxAnmFv.s" } @@ -1436,7 +1026,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__12J3DTexMtxAnmFv.s" } @@ -1446,7 +1037,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__14J3DMatColorAnmFv.s" } @@ -1456,7 +1048,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__14J3DMatColorAnmFv.s" } @@ -1985,7 +1578,8 @@ static bool daNpc_Seira2_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/calc__11J3DTexNoAnmCFPUs.s" } @@ -1995,7 +1589,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__10cCcD_GSttsFv.s" } @@ -2005,7 +1600,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2015,7 +1611,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2025,7 +1622,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__8cM3dGCylFv.s" } @@ -2035,7 +1633,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__8cM3dGAabFv.s" } @@ -2045,7 +1644,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__4cXyzFv.s" } @@ -2055,7 +1655,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__5csXyzFv.s" } @@ -2067,18 +1668,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/func_80AD3BEC.s" } #pragma pop /* 80AD3FF0-80AD3FF4 0034D0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2086,14 +1689,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AD40F0-80AD40F4 0035D0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2101,7 +1706,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2111,7 +1717,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__12dBgS_AcchCirFv.s" } @@ -2121,7 +1728,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__10dCcD_GSttsFv.s" } @@ -2131,7 +1739,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__12dBgS_ObjAcchFv.s" } @@ -2141,7 +1750,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/__dt__12J3DFrameCtrlFv.s" } @@ -2151,8 +1761,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2162,14 +1773,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AD45E4-80AD45E8 003AC4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2185,13 +1798,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AD45F8-80AD4600 003AD8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AD4600-80AD4608 003AE0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -2201,7 +1816,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80AD4610-80AD4618 003AF0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2211,7 +1827,8 @@ void daNpcT_c::afterMoved() { } /* 80AD461C-80AD4624 003AFC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2219,19 +1836,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AD463C-80AD4640 003B1C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AD4640-80AD4648 003B20 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2240,7 +1860,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2251,29 +1872,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AD46A8-80AD46AC 003B88 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD46AC-80AD46B0 003B8C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD46B0-80AD46B4 003B90 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD46B4-80AD46B8 003B94 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2421,31 +2047,35 @@ static asm void func_80AD4914() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seira2/d_a_npc_seira2/func_80AD491C.s" } #pragma pop /* 80AD4A34-80AD4A3C 003F14 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 80AD4A3C-80AD4A44 003F1C 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80AD4A44-80AD4A4C 003F24 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } diff --git a/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.cpp b/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.cpp index 30f1f8949c..6c3789644f 100644 --- a/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.cpp +++ b/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.cpp @@ -1,326 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_seirei -// +/** + * @file d_a_npc_seirei.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80AD787C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpc_Seirei_c { - /* 80AD572C */ ~daNpc_Seirei_c(); - /* 80AD57C4 */ void create(); - /* 80AD5A7C */ void CreateHeap(); - /* 80AD5BC4 */ void Delete(); - /* 80AD5BF8 */ void Execute(); - /* 80AD5C18 */ void Draw(); - /* 80AD5CC0 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AD5CE0 */ void getType(); - /* 80AD5D2C */ bool isDelete(); - /* 80AD5D34 */ void reset(); - /* 80AD5EEC */ void setParam(); - /* 80AD6048 */ bool checkChangeEvt(); - /* 80AD6050 */ void srchActors(); - /* 80AD6054 */ void evtTalk(); - /* 80AD6154 */ void evtCutProc(); - /* 80AD621C */ void action(); - /* 80AD62A4 */ void beforeMove(); - /* 80AD6330 */ void setAttnPos(); - /* 80AD6464 */ bool drawDbgInfo(); - /* 80AD646C */ void afterSetMotionAnm(int, int, f32, int); - /* 80AD6604 */ void selectAction(); - /* 80AD664C */ void chkAction(int (daNpc_Seirei_c::*)(void*)); - /* 80AD6678 */ void setAction(int (daNpc_Seirei_c::*)(void*)); - /* 80AD6720 */ void ctrlWaitAnm(); - /* 80AD6808 */ void setPrtcls(); - /* 80AD6A38 */ void chkFirstMeeting(); - /* 80AD6ABC */ void cutConversation(int); - /* 80AD6C58 */ void wait(void*); - /* 80AD6D30 */ void talk(void*); - /* 80AD7BF8 */ daNpc_Seirei_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_Seirei_Param_c { - /* 80AD7C3C */ ~daNpc_Seirei_Param_c(); - - static u8 const m[148]; -}; - -struct J3DAnmTextureSRTKey {}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DAnmTevRegKey {}; - -struct cXyz { - /* 80AD72B4 */ ~cXyz(); - /* 80AD7830 */ cXyz(); -}; - -struct daNpcT_c { - /* 8014810C */ void getTexSRTKeyAnmP(char const*, int); - /* 80148148 */ void getTevRegKeyAnmP(char const*, int); - /* 80148338 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80148378 */ void setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AD6F2C */ ~daNpcT_c(); - /* 80AD732C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AD7A48 */ bool getEyeballMaterialNo(); - /* 80AD7A50 */ void ctrlSubFaceMotion(int); - /* 80AD7A54 */ bool checkChangeJoint(int); - /* 80AD7A5C */ bool checkRemoveJoint(int); - /* 80AD7A64 */ s32 getBackboneJointNo(); - /* 80AD7A6C */ s32 getNeckJointNo(); - /* 80AD7A74 */ s32 getHeadJointNo(); - /* 80AD7A7C */ s32 getFootLJointNo(); - /* 80AD7A84 */ s32 getFootRJointNo(); - /* 80AD7A8C */ bool getEyeballLMaterialNo(); - /* 80AD7A94 */ bool getEyeballRMaterialNo(); - /* 80AD7A9C */ void afterJntAnm(int); - /* 80AD7AA0 */ bool evtEndProc(); - /* 80AD7AA8 */ void setAfterTalkMotion(); - /* 80AD7AAC */ void afterMoved(); - /* 80AD7AB0 */ void setCollision(); - /* 80AD7AB4 */ bool chkXYItems(); - /* 80AD7ABC */ void decTmr(); - /* 80AD7AD4 */ void drawOtherMdl(); - /* 80AD7AD8 */ void drawGhost(); - /* 80AD7ADC */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AD7AE4 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AD7B14 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AD7B44 */ void changeAnm(int*, int*); - /* 80AD7B48 */ void changeBck(int*, int*); - /* 80AD7B4C */ void changeBtp(int*, int*); - /* 80AD7B50 */ void changeBtk(int*, int*); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80AD7734 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80AD7834 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct csXyz { - /* 80AD72F0 */ ~csXyz(); - /* 80AD7730 */ csXyz(); -}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AD7934 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AD7990 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AD78C4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80AD6034 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cCcD_GStts { - /* 80AD6EE4 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AD7A00 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -418,7 +103,6 @@ extern "C" u8 mCutList__14daNpc_Seirei_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); @@ -503,9 +187,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -522,14 +203,11 @@ extern "C" void _restgpr_25(); extern "C" void _restgpr_26(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 g_meter2_info[248]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -713,25 +391,30 @@ SECTION_DATA static void* lit_4575[3] = { }; /* 80AD7F54-80AD7F74 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Seirei_MethodTable */ -SECTION_DATA static void* daNpc_Seirei_MethodTable[8] = { - (void*)daNpc_Seirei_Create__FPv, - (void*)daNpc_Seirei_Delete__FPv, - (void*)daNpc_Seirei_Execute__FPv, - (void*)daNpc_Seirei_IsDelete__FPv, - (void*)daNpc_Seirei_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Seirei_MethodTable = { + (process_method_func)daNpc_Seirei_Create__FPv, + (process_method_func)daNpc_Seirei_Delete__FPv, + (process_method_func)daNpc_Seirei_Execute__FPv, + (process_method_func)daNpc_Seirei_IsDelete__FPv, + (process_method_func)daNpc_Seirei_Draw__FPv, }; /* 80AD7F74-80AD7FA4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEIREI */ -SECTION_DATA extern void* g_profile_NPC_SEIREI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026A0000, (void*)&g_fpcLf_Method, - (void*)0x00000E88, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016B0000, (void*)&daNpc_Seirei_MethodTable, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_NPC_SEIREI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SEIREI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Seirei_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 363, // mPriority + &daNpc_Seirei_MethodTable, // sub_method + 0x00044000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AD7FA4-80AD7FB0 0001C0 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1017,7 +700,8 @@ asm void daNpc_Seirei_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/getDistTable__12dAttention_cFi.s" } @@ -1330,7 +1014,8 @@ static bool daNpc_Seirei_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__10cCcD_GSttsFv.s" } @@ -1340,7 +1025,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__8daNpcT_cFv.s" } @@ -1350,7 +1036,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__4cXyzFv.s" } @@ -1360,7 +1047,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__5csXyzFv.s" } @@ -1372,18 +1060,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/func_80AD732C.s" } #pragma pop /* 80AD7730-80AD7734 0020F0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1391,14 +1081,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AD7830-80AD7834 0021F0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1406,7 +1098,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1416,7 +1109,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1426,7 +1120,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__12dBgS_AcchCirFv.s" } @@ -1436,7 +1131,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__10dCcD_GSttsFv.s" } @@ -1446,7 +1142,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__12dBgS_ObjAcchFv.s" } @@ -1456,7 +1153,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/__dt__12J3DFrameCtrlFv.s" } @@ -1469,7 +1167,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80AD7A50-80AD7A54 002410 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1510,13 +1209,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AD7A8C-80AD7A94 00244C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AD7A94-80AD7A9C 002454 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1526,7 +1227,8 @@ void daNpcT_c::afterJntAnm(int param_0) { } /* 80AD7AA0-80AD7AA8 002460 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1546,7 +1248,8 @@ void daNpcT_c::setCollision() { } /* 80AD7AB4-80AD7ABC 002474 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1554,24 +1257,28 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AD7AD4-80AD7AD8 002494 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AD7AD8-80AD7ADC 002498 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AD7ADC-80AD7AE4 00249C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1580,7 +1287,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1591,29 +1299,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_seirei/d_a_npc_seirei/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AD7B44-80AD7B48 002504 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD7B48-80AD7B4C 002508 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD7B4C-80AD7B50 00250C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AD7B50-80AD7B54 002510 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.cpp b/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.cpp index e3b32f992d..35e2e8ea5c 100644 --- a/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.cpp +++ b/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.cpp @@ -1,415 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_shad -// +/** + * @file d_a_npc_shad.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_shad/d_a_npc_shad.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AE18BC */ ~cXyz(); - /* 80AE18F8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 80AE1F10 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcShad_c { - /* 80AD820C */ daNpcShad_c(); - /* 80AD8420 */ ~daNpcShad_c(); - /* 80AD8620 */ void Create(); - /* 80AD8B60 */ void CreateHeap(); - /* 80AD90E0 */ void Delete(); - /* 80AD9114 */ void Execute(); - /* 80AD9138 */ void Draw(); - /* 80AD9280 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80AD944C */ void createHeapCallBack(fopAc_ac_c*); - /* 80AD946C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AD94B8 */ void setExpressionAnm(int, bool); - /* 80AD974C */ void setExpressionBtp(int); - /* 80AD982C */ void setMotionAnm(int, f32); - /* 80AD99B4 */ void reset(); - /* 80AD9C0C */ void setWaitAction(); - /* 80AD9E04 */ void getPathPoint(u8, int, Vec*); - /* 80AD9E90 */ void isSneaking(); - /* 80AD9F00 */ void wait_type0(void*); - /* 80ADA630 */ void setMotion(int, f32, int); - /* 80ADA674 */ void setExpression(int, f32); - /* 80ADA6A0 */ void wait_type1(void*); - /* 80ADB428 */ void wait_type2(void*); - /* 80ADB628 */ void talk(void*); - /* 80ADBEA8 */ void demo(void*); - /* 80ADC3DC */ void leave(void*); - /* 80ADC700 */ void EvCut_Introduction(int); - /* 80ADC800 */ void EvCut_Meeting(int); - /* 80ADCAD8 */ void EvCut_ToChantSpell1(int); - /* 80ADD720 */ void EvCut_ToChantSpell2(int); - /* 80ADE47C */ void EvCut_ToChantSpell2Skip(int); - /* 80ADE5F8 */ void EvCut_DiscoveryCannon(int); - /* 80ADED68 */ void EvCut_DiscoveryCannonSkip(int); - /* 80ADEEE4 */ void EvCut_Disappear(int); - /* 80ADF810 */ void EvCut_DisappearSkip(int); - /* 80ADF8DC */ void EvCut_CallBack(int); - /* 80ADFB70 */ void EvCut_WiretapSponsor(int); - /* 80ADFE74 */ void EvCut_WiretapEntrant(int); - /* 80AE01BC */ void setParam(); - /* 80AE0438 */ void main(); - /* 80AE04D8 */ void playMotion(); - /* 80AE0B58 */ void playExpression(); - /* 80AE0ED0 */ void ctrlBtk(); - /* 80AE0FAC */ void setAttnPos(); - /* 80AE1320 */ void lookat(); - /* 80AE153C */ bool drawDbgInfo(); - - static u8 mEvtSeqList[168]; -}; - -struct daNpcShad_Param_c { - /* 80AE1F70 */ ~daNpcShad_Param_c(); - - static u8 const m[112]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 801542A0 */ void getEvtAreaTagP(int, int); - /* 80AE18FC */ ~daNpcF_c(); - /* 80AE1B48 */ daNpcF_c(); - /* 80AE1EBC */ void adjustShapeAngle(); - /* 80AE1EC0 */ void setCollisions(); - /* 80AE1EC4 */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80AE187C */ ~csXyz(); - /* 80AE18B8 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80AE17AC */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80AE1728 */ ~daNpcF_ActorMngr_c(); - /* 80AE1770 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_player_item_c { - /* 80032FB8 */ void setItem(int, u8); -}; - -struct dSv_memBit_c { - /* 80034810 */ void onSwitch(int); - /* 80034860 */ void isSwitch(int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dMsgObject_c { - /* 80237994 */ void onKillMessageFlag(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 800429A8 */ void onSkipFade(); - /* 800432EC */ void convPId(unsigned int); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AE1DA8 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AE1E04 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AE1D38 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AD8390 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AD83D8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AE1EC8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80AE1544 */ void func_80AE1544(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80AD8FCC */ ~J3DTexNoAnm(); - /* 80AD9014 */ J3DTexNoAnm(); - /* 80AE018C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AD9038 */ ~J3DTexMtxAnm(); - /* 80AD9074 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AD8F24 */ ~J3DTevKColorAnm(); - /* 80AD8F60 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AD8F78 */ ~J3DTevColorAnm(); - /* 80AD8FB4 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AD908C */ ~J3DMatColorAnm(); - /* 80AD90C8 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AE1E74 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -644,10 +240,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -664,10 +256,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -678,12 +267,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -1115,25 +700,30 @@ SECTION_DATA static void* lit_6550[8] = { }; /* 80AE2B7C-80AE2B9C -00001 0020+00 1/0 0/0 0/0 .data daNpcShad_MethodTable */ -SECTION_DATA static void* daNpcShad_MethodTable[8] = { - (void*)daNpcShad_Create__FPv, - (void*)daNpcShad_Delete__FPv, - (void*)daNpcShad_Execute__FPv, - (void*)daNpcShad_IsDelete__FPv, - (void*)daNpcShad_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcShad_MethodTable = { + (process_method_func)daNpcShad_Create__FPv, + (process_method_func)daNpcShad_Delete__FPv, + (process_method_func)daNpcShad_Execute__FPv, + (process_method_func)daNpcShad_IsDelete__FPv, + (process_method_func)daNpcShad_Draw__FPv, }; /* 80AE2B9C-80AE2BCC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SHAD */ -SECTION_DATA extern void* g_profile_NPC_SHAD[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029A0000, (void*)&g_fpcLf_Method, - (void*)0x00000E24, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x019D0000, (void*)&daNpcShad_MethodTable, - (void*)0x00040100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SHAD = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SHAD, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcShad_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 413, // mPriority + &daNpcShad_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AE2BCC-80AE2BD8 0005AC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1248,7 +838,8 @@ asm daNpcShad_c::daNpcShad_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__8cM3dGCylFv.s" } @@ -1258,7 +849,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__8cM3dGAabFv.s" } @@ -1382,7 +974,8 @@ asm void daNpcShad_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__15J3DTevKColorAnmFv.s" } @@ -1392,7 +985,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__15J3DTevKColorAnmFv.s" } @@ -1402,7 +996,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__14J3DTevColorAnmFv.s" } @@ -1412,7 +1007,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__14J3DTevColorAnmFv.s" } @@ -1422,7 +1018,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__11J3DTexNoAnmFv.s" } @@ -1432,7 +1029,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__11J3DTexNoAnmFv.s" } @@ -1442,7 +1040,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__12J3DTexMtxAnmFv.s" } @@ -1452,7 +1051,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__12J3DTexMtxAnmFv.s" } @@ -1462,7 +1062,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__14J3DMatColorAnmFv.s" } @@ -1472,7 +1073,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__14J3DMatColorAnmFv.s" } @@ -2980,7 +2582,8 @@ static bool daNpcShad_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/calc__11J3DTexNoAnmCFPUs.s" } @@ -3132,7 +2735,8 @@ REGISTER_CTORS(0x80AE1550, __sinit_d_a_npc_shad_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -3142,7 +2746,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -3152,7 +2757,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__15daNpcF_Lookat_cFv.s" } @@ -3162,14 +2768,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__5csXyzFv.s" } #pragma pop /* 80AE18B8-80AE18BC 009798 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3177,14 +2785,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__4cXyzFv.s" } #pragma pop /* 80AE18F8-80AE18FC 0097D8 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3192,7 +2802,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__8daNpcF_cFv.s" } @@ -3202,7 +2813,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__ct__8daNpcF_cFv.s" } @@ -3212,7 +2824,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__12dBgS_AcchCirFv.s" } @@ -3222,7 +2835,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__10dCcD_GSttsFv.s" } @@ -3232,7 +2846,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__12dBgS_ObjAcchFv.s" } @@ -3242,24 +2857,28 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AE1EBC-80AE1EC0 009D9C 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80AE1EC0-80AE1EC4 009DA0 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AE1EC4-80AE1EC8 009DA4 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -3267,7 +2886,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/__dt__10cCcD_GSttsFv.s" } @@ -3277,7 +2897,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shad/d_a_npc_shad/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.cpp b/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.cpp index 6da064aaeb..a4816c8799 100644 --- a/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.cpp +++ b/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.cpp @@ -1,400 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_shaman -// +/** + * @file d_a_npc_shaman.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AE5E70 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Sha_c { - /* 80AE2DCC */ ~daNpc_Sha_c(); - /* 80AE2EEC */ void create(); - /* 80AE31A0 */ void CreateHeap(); - /* 80AE35CC */ void Delete(); - /* 80AE3600 */ void Execute(); - /* 80AE3620 */ void Draw(); - /* 80AE36B4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AE36D4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AE372C */ void getType(); - /* 80AE3764 */ void isDelete(); - /* 80AE3798 */ void reset(); - /* 80AE38F0 */ void afterJntAnm(int); - /* 80AE3974 */ void setParam(); - /* 80AE3A8C */ void checkChangeEvt(); - /* 80AE3B78 */ void setAfterTalkMotion(); - /* 80AE3C24 */ void srchActors(); - /* 80AE3C28 */ void evtTalk(); - /* 80AE3D28 */ void evtCutProc(); - /* 80AE3DF0 */ void action(); - /* 80AE3F80 */ void beforeMove(); - /* 80AE4044 */ void setAttnPos(); - /* 80AE4360 */ void setCollision(); - /* 80AE44B8 */ bool drawDbgInfo(); - /* 80AE44C0 */ void selectAction(); - /* 80AE4508 */ void chkAction(int (daNpc_Sha_c::*)(void*)); - /* 80AE4534 */ void setAction(int (daNpc_Sha_c::*)(void*)); - /* 80AE45DC */ void getSceneChangeNoTableIx(); - /* 80AE48D0 */ void setTempBit(int); - /* 80AE4974 */ void cutPerformAugury(int); - /* 80AE4E24 */ void wait(void*); - /* 80AE50EC */ void talk(void*); - /* 80AE52CC */ void query265(); - /* 80AE52F0 */ void query268(); - /* 80AE5314 */ void query267(); - /* 80AE5338 */ void query078(); - /* 80AE535C */ void query264(); - /* 80AE5380 */ void query266(); - /* 80AE53A4 */ void query542(); - /* 80AE53C8 */ void query461(); - /* 80AE53EC */ void query288(); - /* 80AE5410 */ bool query000(); - /* 80AE5418 */ bool query999(); - /* 80AE69E0 */ daNpc_Sha_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AE6B1C */ bool getEyeballMaterialNo(); - /* 80AE6B24 */ s32 getHeadJointNo(); - /* 80AE6B2C */ s32 getNeckJointNo(); - /* 80AE6B34 */ bool getBackboneJointNo(); - /* 80AE6B3C */ void checkChangeJoint(int); - /* 80AE6B4C */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; - static u8 mEvtBitLabels[12]; - static u8 mTmpBitLabels[12]; - static u8 mSceneChangeNoTable[192]; - static u8 mQueries[576]; -}; - -struct daNpc_Sha_Param_c { - /* 80AE6B5C */ ~daNpc_Sha_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80AE58E4 */ ~csXyz(); - /* 80AE5D24 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AE58A8 */ ~cXyz(); - /* 80AE5E24 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AE5520 */ ~daNpcT_c(); - /* 80AE5920 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AE6360 */ void ctrlSubFaceMotion(int); - /* 80AE6364 */ s32 getFootLJointNo(); - /* 80AE636C */ s32 getFootRJointNo(); - /* 80AE6374 */ bool getEyeballLMaterialNo(); - /* 80AE637C */ bool getEyeballRMaterialNo(); - /* 80AE6384 */ bool evtEndProc(); - /* 80AE638C */ void afterMoved(); - /* 80AE6390 */ bool chkXYItems(); - /* 80AE6398 */ void decTmr(); - /* 80AE63B0 */ void drawOtherMdl(); - /* 80AE63B4 */ void drawGhost(); - /* 80AE63B8 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AE63C0 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AE63C8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AE63F8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AE6428 */ void changeAnm(int*, int*); - /* 80AE642C */ void changeBck(int*, int*); - /* 80AE6430 */ void changeBtp(int*, int*); - /* 80AE6434 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AE5D28 */ ~daNpcT_JntAnm_c(); - /* 80AE603C */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AE6158 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80AE5E28 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AE5F28 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AE5F84 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AE5EB8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AE6A8C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AE6AD4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AE54D8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80AE34B8 */ ~J3DTexNoAnm(); - /* 80AE3500 */ J3DTexNoAnm(); - /* 80AE54A8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80AE3524 */ ~J3DTexMtxAnm(); - /* 80AE3560 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80AE3410 */ ~J3DTevKColorAnm(); - /* 80AE344C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80AE3464 */ ~J3DTevColorAnm(); - /* 80AE34A0 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80AE3578 */ ~J3DMatColorAnm(); - /* 80AE35B4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AE5FF4 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -522,7 +133,6 @@ extern "C" u8 mQueries__11daNpc_Sha_c[576]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -633,10 +243,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -655,8 +261,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -667,11 +271,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_Counter[12 + 4 /* padding */]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1442,25 +1042,30 @@ SECTION_DATA u8 daNpc_Sha_c::mQueries[576] = { }; /* 80AE7674-80AE7694 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Sha_MethodTable */ -SECTION_DATA static void* daNpc_Sha_MethodTable[8] = { - (void*)daNpc_Sha_Create__FPv, - (void*)daNpc_Sha_Delete__FPv, - (void*)daNpc_Sha_Execute__FPv, - (void*)daNpc_Sha_IsDelete__FPv, - (void*)daNpc_Sha_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Sha_MethodTable = { + (process_method_func)daNpc_Sha_Create__FPv, + (process_method_func)daNpc_Sha_Delete__FPv, + (process_method_func)daNpc_Sha_Execute__FPv, + (process_method_func)daNpc_Sha_IsDelete__FPv, + (process_method_func)daNpc_Sha_Draw__FPv, }; /* 80AE7694-80AE76C4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SHAMAN */ -SECTION_DATA extern void* g_profile_NPC_SHAMAN[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026B0000, (void*)&g_fpcLf_Method, - (void*)0x00000FA8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016C0000, (void*)&daNpc_Sha_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SHAMAN = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SHAMAN, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Sha_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 364, // mPriority + &daNpc_Sha_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AE76C4-80AE76D0 0009AC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1720,7 +1325,8 @@ asm void daNpc_Sha_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__15J3DTevKColorAnmFv.s" } @@ -1730,7 +1336,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__ct__15J3DTevKColorAnmFv.s" } @@ -1740,7 +1347,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__14J3DTevColorAnmFv.s" } @@ -1750,7 +1358,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__ct__14J3DTevColorAnmFv.s" } @@ -1760,7 +1369,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__11J3DTexNoAnmFv.s" } @@ -1770,7 +1380,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__ct__11J3DTexNoAnmFv.s" } @@ -1780,7 +1391,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__12J3DTexMtxAnmFv.s" } @@ -1790,7 +1402,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__ct__12J3DTexMtxAnmFv.s" } @@ -1800,7 +1413,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__14J3DMatColorAnmFv.s" } @@ -1810,7 +1424,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__ct__14J3DMatColorAnmFv.s" } @@ -2336,7 +1951,8 @@ static bool daNpc_Sha_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/calc__11J3DTexNoAnmCFPUs.s" } @@ -2346,7 +1962,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__10cCcD_GSttsFv.s" } @@ -2356,7 +1973,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__8daNpcT_cFv.s" } @@ -2366,7 +1984,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__4cXyzFv.s" } @@ -2376,7 +1995,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__5csXyzFv.s" } @@ -2388,18 +2008,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/func_80AE5920.s" } #pragma pop /* 80AE5D24-80AE5D28 003044 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2407,14 +2029,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AE5E24-80AE5E28 003144 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2422,7 +2046,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2432,7 +2057,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2442,7 +2068,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__12dBgS_AcchCirFv.s" } @@ -2452,7 +2079,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__10dCcD_GSttsFv.s" } @@ -2462,7 +2090,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__12dBgS_ObjAcchFv.s" } @@ -2472,7 +2101,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__12J3DFrameCtrlFv.s" } @@ -2482,8 +2112,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2493,14 +2124,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AE6360-80AE6364 003680 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2516,18 +2149,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AE6374-80AE637C 003694 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AE637C-80AE6384 00369C 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80AE6384-80AE638C 0036A4 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2537,7 +2173,8 @@ void daNpcT_c::afterMoved() { } /* 80AE6390-80AE6398 0036B0 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2545,30 +2182,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AE63B0-80AE63B4 0036D0 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AE63B4-80AE63B8 0036D4 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AE63B8-80AE63C0 0036D8 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AE63C0-80AE63C8 0036E0 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2577,7 +2219,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2588,29 +2231,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AE6428-80AE642C 003748 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AE642C-80AE6430 00374C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AE6430-80AE6434 003750 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AE6434-80AE6438 003754 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2683,7 +2331,8 @@ asm daNpc_Sha_c::daNpc_Sha_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__8cM3dGCylFv.s" } @@ -2693,7 +2342,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shaman/d_a_npc_shaman/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.cpp b/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.cpp index 979e324517..ddbe4c52f7 100644 --- a/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.cpp +++ b/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.cpp @@ -1,295 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_shoe -// +/** + * @file d_a_npc_shoe.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80AE9C2C */ ~csXyz(); - /* 80AE9C68 */ csXyz(); -}; - -struct cXyz { - /* 80AE9C6C */ ~cXyz(); - /* 80AE9CA8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcShoe_c { - /* 80AE794C */ daNpcShoe_c(); - /* 80AE7B60 */ ~daNpcShoe_c(); - /* 80AE7D48 */ void Create(); - /* 80AE7FD8 */ void CreateHeap(); - /* 80AE81E8 */ void Delete(); - /* 80AE821C */ void Execute(); - /* 80AE8308 */ void Draw(); - /* 80AE840C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80AE8598 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AE85B8 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AE8604 */ void setMotion(int, f32, int); - /* 80AE864C */ void reset(); - /* 80AE895C */ void setAction(bool (daNpcShoe_c::*)(void*)); - /* 80AE8A04 */ void wait(void*); - /* 80AE8E24 */ void fear(void*); - /* 80AE8ED4 */ void talk(void*); - /* 80AE9094 */ void demo(void*); - /* 80AE92E8 */ void setParam(); - /* 80AE93A0 */ void main(); - /* 80AE9624 */ void setAttnPos(); - /* 80AE9820 */ void lookat(); - /* 80AE9A00 */ void setMotionAnm(int, f32); - /* 80AE9AD0 */ bool drawDbgInfo(); - /* 80AEA340 */ void adjustShapeAngle(); - - static u8 mEvtSeqList[12]; -}; - -struct daNpcShoe_Param_c { - /* 80AEA344 */ ~daNpcShoe_Param_c(); - - static u8 const m[108]; -}; - -struct J3DAnmTexPattern {}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80AE9CAC */ ~daNpcF_c(); - /* 80AE9EF8 */ daNpcF_c(); - /* 80AEA26C */ bool ctrlBtk(); - /* 80AEA274 */ void setCollisions(); - /* 80AEA278 */ bool setExpressionAnm(int, bool); - /* 80AEA280 */ bool setExpressionBtp(int); - /* 80AEA288 */ void setExpression(int, f32); - /* 80AEA28C */ void drawOtherMdls(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80AE9B5C */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80AE9AD8 */ ~daNpcF_ActorMngr_c(); - /* 80AE9B20 */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AEA158 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AEA1B4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AEA0E8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AE7AD0 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AE7B18 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AEA290 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct Vec {}; - -struct Z2CreatureCitizen { - /* 802C0C10 */ Z2CreatureCitizen(); - /* 802C0C6C */ ~Z2CreatureCitizen(); - /* 802C0CE4 */ void init(Vec*, Vec*, u8, u8); - /* 802C0D48 */ void setMdlType(s8, bool, bool); - /* 802C0E18 */ void playVoice(int); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80AEA224 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -450,8 +166,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -466,10 +180,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -478,10 +189,7 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" void __register_global_object(); @@ -617,25 +325,30 @@ SECTION_DATA static void* lit_4684[3] = { #pragma pop /* 80AEA608-80AEA628 -00001 0020+00 1/0 0/0 0/0 .data daNpcShoe_MethodTable */ -SECTION_DATA static void* daNpcShoe_MethodTable[8] = { - (void*)daNpcShoe_Create__FPv, - (void*)daNpcShoe_Delete__FPv, - (void*)daNpcShoe_Execute__FPv, - (void*)daNpcShoe_IsDelete__FPv, - (void*)daNpcShoe_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcShoe_MethodTable = { + (process_method_func)daNpcShoe_Create__FPv, + (process_method_func)daNpcShoe_Delete__FPv, + (process_method_func)daNpcShoe_Execute__FPv, + (process_method_func)daNpcShoe_IsDelete__FPv, + (process_method_func)daNpcShoe_Draw__FPv, }; /* 80AEA628-80AEA658 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SHOE */ -SECTION_DATA extern void* g_profile_NPC_SHOE[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x029E0000, (void*)&g_fpcLf_Method, - (void*)0x00000E1C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01A10000, (void*)&daNpcShoe_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SHOE = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SHOE, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcShoe_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 417, // mPriority + &daNpcShoe_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AEA658-80AEA6A0 000120 0048+00 2/2 0/0 0/0 .data __vt__11daNpcShoe_c */ @@ -743,7 +456,8 @@ asm daNpcShoe_c::daNpcShoe_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__8cM3dGCylFv.s" } @@ -753,7 +467,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__8cM3dGAabFv.s" } @@ -1327,7 +1042,8 @@ bool daNpcShoe_c::drawDbgInfo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1337,7 +1053,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1347,7 +1064,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__15daNpcF_Lookat_cFv.s" } @@ -1357,14 +1075,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__5csXyzFv.s" } #pragma pop /* 80AE9C68-80AE9C6C 002408 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1372,14 +1092,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__4cXyzFv.s" } #pragma pop /* 80AE9CA8-80AE9CAC 002448 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1387,7 +1109,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__8daNpcF_cFv.s" } @@ -1397,7 +1120,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__ct__8daNpcF_cFv.s" } @@ -1407,7 +1131,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__12dBgS_AcchCirFv.s" } @@ -1417,7 +1142,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__10dCcD_GSttsFv.s" } @@ -1427,7 +1153,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__12dBgS_ObjAcchFv.s" } @@ -1437,39 +1164,46 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AEA26C-80AEA274 002A0C 0008+00 1/0 0/0 0/0 .text ctrlBtk__8daNpcF_cFv */ -bool daNpcF_c::ctrlBtk() { +// bool daNpcF_c::ctrlBtk() { +extern "C" bool ctrlBtk__8daNpcF_cFv() { return false; } /* 80AEA274-80AEA278 002A14 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AEA278-80AEA280 002A18 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80AEA280-80AEA288 002A20 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80AEA288-80AEA28C 002A28 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } /* 80AEA28C-80AEA290 002A2C 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -1477,7 +1211,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shoe/d_a_npc_shoe/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.cpp b/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.cpp index 3441abae5d..b7370a39bf 100644 --- a/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.cpp +++ b/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.cpp @@ -1,218 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_shop0 -// +/** + * @file d_a_npc_shop0.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D9CC */ void entry(J3DModelData*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpc_Shop0_c { - /* 80AEA7F8 */ ~daNpc_Shop0_c(); - /* 80AEAA10 */ void create(); - /* 80AEAE9C */ void createHeap(); - /* 80AEAF8C */ void destroy(); - /* 80AEAFC0 */ void execute(); - /* 80AEB078 */ void draw(); - /* 80AEB190 */ void getResName(); - /* 80AEB1A0 */ void getParam(); - /* 80AEB1C8 */ void getFlowNodeNum(); - /* 80AEB1D0 */ void isDelete(); - /* 80AEB22C */ void init(); - /* 80AEB32C */ void getTrnsfrmAnmP(int, char**); - /* 80AEB3A8 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80AEB45C */ void setCollision(); - /* 80AEB4C8 */ void checkEvent(); - /* 80AEB5E8 */ void orderEvent(); - /* 80AEB634 */ void setMtx(); - /* 80AEB6DC */ void setRoomInf(); - /* 80AEB780 */ void cut_alert(int, int); - /* 80AEB7F0 */ void chkProcess(int (daNpc_Shop0_c::*)(void*)); - /* 80AEB824 */ void setProcess(int (daNpc_Shop0_c::*)(void*), void*, int); - /* 80AEB920 */ void wait(void*); - /* 80AEB9BC */ void talk(void*); - - static u8 const mCylDat[68]; -}; - -struct daNpc_Shop0_Param_c { - /* 80AEBB14 */ ~daNpc_Shop0_Param_c(); - - static u8 const mParam[12]; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct _GXTexObj {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct dDlst_shadowControl_c { - /* 80055F84 */ void setSimple(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*); - - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AEACA0 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk { - /* 80AEADDC */ ~dBgS_ObjGndChk(); -}; - -struct dBgS_ObjAcch { - /* 80AEACFC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AEAD6C */ ~dBgS_AcchCir(); -}; - -struct csXyz {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dBgS { - /* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&); - /* 80075100 */ void GetRoomId(cBgS_PolyInfo const&); -}; - -struct cM3dGPla { - /* 80AEB148 */ ~cM3dGPla(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AEAC10 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AEAC58 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AEBB5C */ ~cCcD_GStts(); -}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AEAE54 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -317,9 +110,6 @@ extern "C" void SetR__8cM3dGCylFf(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECSquareMag(); extern "C" void __ptmf_test(); extern "C" void __ptmf_cmpr(); extern "C" void __ptmf_scall(); @@ -327,19 +117,13 @@ extern "C" void _savegpr_27(); extern "C" void _savegpr_29(); extern "C" void _restgpr_27(); extern "C" void _restgpr_29(); -extern "C" void strcat(); -extern "C" void strcpy(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; // // Declarations: @@ -403,25 +187,30 @@ SECTION_DATA static void* lit_4268[3] = { }; /* 80AEBCB0-80AEBCD0 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Shop0_MethodTable */ -SECTION_DATA static void* daNpc_Shop0_MethodTable[8] = { - (void*)daNpc_Shop0_Create__FPv, - (void*)daNpc_Shop0_Delete__FPv, - (void*)daNpc_Shop0_Execute__FPv, - (void*)daNpc_Shop0_IsDelete__FPv, - (void*)daNpc_Shop0_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Shop0_MethodTable = { + (process_method_func)daNpc_Shop0_Create__FPv, + (process_method_func)daNpc_Shop0_Delete__FPv, + (process_method_func)daNpc_Shop0_Execute__FPv, + (process_method_func)daNpc_Shop0_IsDelete__FPv, + (process_method_func)daNpc_Shop0_Draw__FPv, }; /* 80AEBCD0-80AEBD00 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SHOP0 */ -SECTION_DATA extern void* g_profile_NPC_SHOP0[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02A70000, (void*)&g_fpcLf_Method, - (void*)0x000009EC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01AA0000, (void*)&daNpc_Shop0_MethodTable, - (void*)0x00040100, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_SHOP0 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SHOP0, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Shop0_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 426, // mPriority + &daNpc_Shop0_MethodTable, // sub_method + 0x00040100, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80AEBD00-80AEBD0C 00008C 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGPla */ @@ -540,7 +329,8 @@ asm void daNpc_Shop0_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__8cM3dGCylFv.s" } @@ -550,7 +340,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__8cM3dGAabFv.s" } @@ -560,7 +351,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__10dCcD_GSttsFv.s" } @@ -570,7 +362,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__12dBgS_ObjAcchFv.s" } @@ -580,7 +373,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__12dBgS_AcchCirFv.s" } @@ -590,7 +384,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +// asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +extern "C" asm void __dt__14dBgS_ObjGndChkFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__14dBgS_ObjGndChkFv.s" } @@ -600,7 +395,8 @@ asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__12J3DFrameCtrlFv.s" } @@ -695,7 +491,8 @@ asm void daNpc_Shop0_c::draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGPla::~cM3dGPla() { +// asm cM3dGPla::~cM3dGPla() { +extern "C" asm void __dt__8cM3dGPlaFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__8cM3dGPlaFv.s" } @@ -978,7 +775,8 @@ asm daNpc_Shop0_Param_c::~daNpc_Shop0_Param_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop0/d_a_npc_shop0/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.cpp b/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.cpp index 2e6e2251e4..7950a61036 100644 --- a/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.cpp +++ b/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.cpp @@ -1,178 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_shop_maro -// +/** + * @file d_a_npc_shop_maro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro.h" #include "dol2asm.h" -// -// Types: -// - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daNpc_shopMaro_c { - /* 80AEBEB4 */ void create(); - /* 80AEBF04 */ daNpc_shopMaro_c(); - /* 80AEBF64 */ ~daNpc_shopMaro_c(); -}; - -struct daNpcT_motionAnmData_c {}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AEC6BC */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80AEC0DC */ ~cXyz(); - /* 80AEC670 */ cXyz(); -}; - -struct daNpcT_c { - /* 801490D4 */ void ctrlBtk(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 80AEC16C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AEC7BC */ void ctrlSubFaceMotion(int); - /* 80AEC7C0 */ bool checkChangeJoint(int); - /* 80AEC7C8 */ bool checkRemoveJoint(int); - /* 80AEC7D0 */ s32 getBackboneJointNo(); - /* 80AEC7D8 */ s32 getNeckJointNo(); - /* 80AEC7E0 */ s32 getHeadJointNo(); - /* 80AEC7E8 */ s32 getFootLJointNo(); - /* 80AEC7F0 */ s32 getFootRJointNo(); - /* 80AEC7F8 */ bool getEyeballLMaterialNo(); - /* 80AEC800 */ bool getEyeballRMaterialNo(); - /* 80AEC808 */ bool getEyeballMaterialNo(); - /* 80AEC810 */ void afterJntAnm(int); - /* 80AEC814 */ void setParam(); - /* 80AEC818 */ bool checkChangeEvt(); - /* 80AEC820 */ bool evtTalk(); - /* 80AEC828 */ bool evtEndProc(); - /* 80AEC830 */ bool evtCutProc(); - /* 80AEC838 */ void setAfterTalkMotion(); - /* 80AEC83C */ void action(); - /* 80AEC840 */ void beforeMove(); - /* 80AEC844 */ void afterMoved(); - /* 80AEC848 */ void setAttnPos(); - /* 80AEC84C */ void setCollision(); - /* 80AEC850 */ bool chkXYItems(); - /* 80AEC858 */ void decTmr(); - /* 80AEC870 */ bool drawDbgInfo(); - /* 80AEC878 */ void drawOtherMdl(); - /* 80AEC87C */ void drawGhost(); - /* 80AEC880 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AEC888 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AEC890 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AEC8C0 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AEC8F0 */ void changeAnm(int*, int*); - /* 80AEC8F4 */ void changeBck(int*, int*); - /* 80AEC8F8 */ void changeBtp(int*, int*); - /* 80AEC8FC */ void changeBtk(int*, int*); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80AEC574 */ ~daNpcT_JntAnm_c(); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 80AEC674 */ ~daNpcT_ActorMngr_c(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); -}; - -struct dShopSystem_c { - /* 80197338 */ void initShopSystem(); - /* 801974E4 */ ~dShopSystem_c(); - /* 8019A564 */ void deleteObject(); - /* 80AEBFC4 */ dShopSystem_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AEC118 */ bool getResName2(int); - /* 80AEC120 */ bool beforeStartSeqAction(dMsgFlow_c*, int); - /* 80AEC128 */ bool beforeSelectSeqAction(dMsgFlow_c*, int); -}; - -struct dShopItemCtrl_c { - /* 80196914 */ dShopItemCtrl_c(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AEC704 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); -}; - -struct csXyz { - /* 80AEC130 */ ~csXyz(); - /* 80AEC570 */ csXyz(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AEC774 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -244,7 +77,6 @@ extern "C" static void func_80AEC908(); // External References: // -SECTION_INIT void memset(); extern "C" void __ct__10fopAc_ac_cFv(); extern "C" void __ct__12dBgS_AcchCirFv(); extern "C" void __dt__9dBgS_AcchFv(); @@ -281,8 +113,6 @@ extern "C" void __construct_array(); extern "C" void _savegpr_22(); extern "C" void _restgpr_22(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__13dShopSystem_c[52 + 1 /* padding */]; @@ -339,25 +169,30 @@ asm void daNpc_shopMaro_c::create() { /* ############################################################################################## */ /* 80AEC938-80AEC958 -00001 0020+00 1/0 0/0 0/0 .data daNpc_shopMaro_MethodTable */ -SECTION_DATA static void* daNpc_shopMaro_MethodTable[8] = { - (void*)daNpc_shopMaro_Create__FPv, - (void*)daNpc_shopMaro_Delete__FPv, - (void*)daNpc_shopMaro_Execute__FPv, - (void*)daNpc_shopMaro_IsDelete__FPv, - (void*)daNpc_shopMaro_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_shopMaro_MethodTable = { + (process_method_func)daNpc_shopMaro_Create__FPv, + (process_method_func)daNpc_shopMaro_Delete__FPv, + (process_method_func)daNpc_shopMaro_Execute__FPv, + (process_method_func)daNpc_shopMaro_IsDelete__FPv, + (process_method_func)daNpc_shopMaro_Draw__FPv, }; /* 80AEC958-80AEC988 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SMARO */ -SECTION_DATA extern void* g_profile_NPC_SMARO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026C0000, (void*)&g_fpcLf_Method, - (void*)0x00000F7C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016D0000, (void*)&daNpc_shopMaro_MethodTable, - (void*)0x00040000, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_SMARO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SMARO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_shopMaro_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 365, // mPriority + &daNpc_shopMaro_MethodTable, // sub_method + 0x00040000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80AEC988-80AEC994 000050 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -528,12 +363,13 @@ COMPILER_STRIP_GATE(0x80AEC92C, &lit_4014); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +// asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, +// int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, +// int param_5, daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__13dShopSystem_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/func_80AEBFC4.s" } @@ -543,26 +379,30 @@ asm dShopSystem_c::dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__4cXyzFv.s" } #pragma pop /* 80AEC118-80AEC120 000338 0008+00 1/0 0/0 0/0 .text getResName2__13dShopSystem_cFi */ -bool dShopSystem_c::getResName2(int param_0) { +// bool dShopSystem_c::getResName2(int param_0) { +extern "C" bool getResName2__13dShopSystem_cFi() { return false; } /* 80AEC120-80AEC128 000340 0008+00 1/0 0/0 0/0 .text * beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeStartSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeStartSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } /* 80AEC128-80AEC130 000348 0008+00 1/0 0/0 0/0 .text * beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci */ -bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +// bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { +extern "C" bool beforeSelectSeqAction__13dShopSystem_cFP10dMsgFlow_ci() { return true; } @@ -570,7 +410,8 @@ bool dShopSystem_c::beforeSelectSeqAction(dMsgFlow_c* param_0, int param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__5csXyzFv.s" } @@ -597,18 +438,20 @@ COMPILER_STRIP_GATE(0x80AEC934, &lit_4239); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/func_80AEC16C.s" } #pragma pop /* 80AEC570-80AEC574 000790 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -616,14 +459,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AEC670-80AEC674 000890 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -631,7 +476,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -641,7 +487,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -651,7 +498,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__12dBgS_ObjAcchFv.s" } @@ -661,14 +509,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AEC7BC-80AEC7C0 0009DC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -709,13 +559,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AEC7F8-80AEC800 000A18 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AEC800-80AEC808 000A20 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -746,7 +598,8 @@ bool daNpcT_c::evtTalk() { } /* 80AEC828-80AEC830 000A48 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -786,7 +639,8 @@ void daNpcT_c::setCollision() { } /* 80AEC850-80AEC858 000A70 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -794,35 +648,41 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AEC870-80AEC878 000A90 0008+00 1/0 0/0 0/0 .text drawDbgInfo__8daNpcT_cFv */ -bool daNpcT_c::drawDbgInfo() { +// bool daNpcT_c::drawDbgInfo() { +extern "C" bool drawDbgInfo__8daNpcT_cFv() { return false; } /* 80AEC878-80AEC87C 000A98 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80AEC87C-80AEC880 000A9C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AEC880-80AEC888 000AA0 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AEC888-80AEC890 000AA8 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -831,7 +691,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -842,29 +703,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_shop_maro/d_a_npc_shop_maro/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AEC8F0-80AEC8F4 000B10 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEC8F4-80AEC8F8 000B14 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEC8F8-80AEC8FC 000B18 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEC8FC-80AEC900 000B1C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.cpp b/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.cpp index 6aa973816f..f046616a0e 100644 --- a/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.cpp +++ b/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.cpp @@ -1,317 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_sola -// +/** + * @file d_a_npc_sola.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_sola/d_a_npc_sola.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80AEE8F0 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_solA_c { - /* 80AECBAC */ ~daNpc_solA_c(); - /* 80AECCD0 */ void create(); - /* 80AECF58 */ void CreateHeap(); - /* 80AED0F8 */ void Delete(); - /* 80AED12C */ void Execute(); - /* 80AED14C */ void Draw(); - /* 80AED1E8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AED208 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AED260 */ bool getType(); - /* 80AED268 */ void getFlowNodeNo(); - /* 80AED284 */ void isDelete(); - /* 80AED294 */ void reset(); - /* 80AED3B8 */ void setParam(); - /* 80AED4A4 */ void setAfterTalkMotion(); - /* 80AED504 */ void srchActors(); - /* 80AED508 */ void evtTalk(); - /* 80AED608 */ void evtCutProc(); - /* 80AED6D0 */ void action(); - /* 80AED758 */ void beforeMove(); - /* 80AED7D0 */ void setAttnPos(); - /* 80AED9DC */ void setCollision(); - /* 80AEDABC */ bool drawDbgInfo(); - /* 80AEDAC4 */ void drawOtherMdl(); - /* 80AEDAC8 */ void selectAction(); - /* 80AEDB10 */ void chkAction(int (daNpc_solA_c::*)(void*)); - /* 80AEDB3C */ void setAction(int (daNpc_solA_c::*)(void*)); - /* 80AEDBE4 */ void wait(void*); - /* 80AEDD60 */ void talk(void*); - /* 80AEEF40 */ daNpc_solA_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AEF07C */ s32 getHeadJointNo(); - /* 80AEF084 */ s32 getNeckJointNo(); - /* 80AEF08C */ bool getBackboneJointNo(); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_solA_Param_c { - /* 80AEF094 */ ~daNpc_solA_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AEE328 */ ~cXyz(); - /* 80AEE8A4 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80AEDFA0 */ ~daNpcT_c(); - /* 80AEE3A0 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80AEEABC */ bool getEyeballMaterialNo(); - /* 80AEEDE8 */ void ctrlSubFaceMotion(int); - /* 80AEEDEC */ bool checkChangeJoint(int); - /* 80AEEDF4 */ bool checkRemoveJoint(int); - /* 80AEEDFC */ s32 getFootLJointNo(); - /* 80AEEE04 */ s32 getFootRJointNo(); - /* 80AEEE0C */ bool getEyeballLMaterialNo(); - /* 80AEEE14 */ bool getEyeballRMaterialNo(); - /* 80AEEE1C */ void afterJntAnm(int); - /* 80AEEE20 */ bool checkChangeEvt(); - /* 80AEEE28 */ bool evtEndProc(); - /* 80AEEE30 */ void afterMoved(); - /* 80AEEE34 */ bool chkXYItems(); - /* 80AEEE3C */ void decTmr(); - /* 80AEEE54 */ void drawGhost(); - /* 80AEEE58 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80AEEE60 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80AEEE68 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80AEEE98 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80AEEEC8 */ void changeAnm(int*, int*); - /* 80AEEECC */ void changeBck(int*, int*); - /* 80AEEED0 */ void changeBtp(int*, int*); - /* 80AEEED4 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80AEE7A8 */ ~daNpcT_JntAnm_c(); - /* 80AEEAC4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80AEEBE0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80AEE8A8 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AEE9A8 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AEEA04 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80AEE938 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80AEE364 */ ~csXyz(); - /* 80AEE7A4 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AEEFEC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AEF034 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AEDF58 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AEEA74 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -409,7 +103,6 @@ extern "C" u8 mCutList__12daNpc_solA_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); @@ -494,9 +187,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -511,8 +201,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -521,9 +209,6 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -653,25 +338,30 @@ SECTION_DATA static void* lit_4786[3] = { }; /* 80AEF2C8-80AEF2E8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_solA_MethodTable */ -SECTION_DATA static void* daNpc_solA_MethodTable[8] = { - (void*)daNpc_solA_Create__FPv, - (void*)daNpc_solA_Delete__FPv, - (void*)daNpc_solA_Execute__FPv, - (void*)daNpc_solA_IsDelete__FPv, - (void*)daNpc_solA_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_solA_MethodTable = { + (process_method_func)daNpc_solA_Create__FPv, + (process_method_func)daNpc_solA_Delete__FPv, + (process_method_func)daNpc_solA_Execute__FPv, + (process_method_func)daNpc_solA_IsDelete__FPv, + (process_method_func)daNpc_solA_Draw__FPv, }; /* 80AEF2E8-80AEF318 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SOLA */ -SECTION_DATA extern void* g_profile_NPC_SOLA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026D0000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016E0000, (void*)&daNpc_solA_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SOLA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SOLA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_solA_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 366, // mPriority + &daNpc_solA_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AEF318-80AEF324 000124 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1222,7 +912,8 @@ static bool daNpc_solA_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__10cCcD_GSttsFv.s" } @@ -1232,7 +923,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__8daNpcT_cFv.s" } @@ -1242,7 +934,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__4cXyzFv.s" } @@ -1252,7 +945,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__5csXyzFv.s" } @@ -1264,18 +958,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/func_80AEE3A0.s" } #pragma pop /* 80AEE7A4-80AEE7A8 001CE4 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1283,14 +979,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80AEE8A4-80AEE8A8 001DE4 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1298,7 +996,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1308,7 +1007,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1318,7 +1018,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__12dBgS_AcchCirFv.s" } @@ -1328,7 +1029,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__10dCcD_GSttsFv.s" } @@ -1338,7 +1040,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__12dBgS_ObjAcchFv.s" } @@ -1348,7 +1051,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__12J3DFrameCtrlFv.s" } @@ -1364,8 +1068,9 @@ bool daNpcT_c::getEyeballMaterialNo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1403,14 +1108,16 @@ COMPILER_STRIP_GATE(0x80AEF1D8, &lit_4746); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80AEEDE8-80AEEDEC 002328 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1436,13 +1143,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80AEEE0C-80AEEE14 00234C 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80AEEE14-80AEEE1C 002354 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1457,7 +1166,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80AEEE28-80AEEE30 002368 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1467,7 +1177,8 @@ void daNpcT_c::afterMoved() { } /* 80AEEE34-80AEEE3C 002374 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1475,25 +1186,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80AEEE54-80AEEE58 002394 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80AEEE58-80AEEE60 002398 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80AEEE60-80AEEE68 0023A0 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1502,7 +1217,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1513,29 +1229,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80AEEEC8-80AEEECC 002408 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEEECC-80AEEED0 00240C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEEED0-80AEEED4 002410 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80AEEED4-80AEEED8 002414 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1589,7 +1310,8 @@ asm daNpc_solA_c::daNpc_solA_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__8cM3dGCylFv.s" } @@ -1599,7 +1321,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_sola/d_a_npc_sola/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.cpp b/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.cpp index bb87238e81..2e5e7c4d97 100644 --- a/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.cpp +++ b/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.cpp @@ -1,307 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_soldierA -// +/** + * @file d_a_npc_soldierA.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AF1F74 */ ~cXyz(); - /* 80AF1FB0 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_SoldierA_c { - /* 80AEF58C */ daNpc_SoldierA_c(); - /* 80AEF7A0 */ ~daNpc_SoldierA_c(); - /* 80AEF9A0 */ void create(); - /* 80AEFC80 */ void CreateHeap(); - /* 80AEFE4C */ void Delete(); - /* 80AEFE80 */ void Execute(); - /* 80AEFEA0 */ void Draw(); - /* 80AEFF14 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80AF0110 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AF0130 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AF017C */ void setParam(); - /* 80AF02B0 */ void main(); - /* 80AF0428 */ bool ctrlBtk(); - /* 80AF0430 */ void setAttnPos(); - /* 80AF0928 */ void setMotionAnm(int, f32); - /* 80AF0A38 */ void setMotion(int, f32, int); - /* 80AF0A7C */ bool drawDbgInfo(); - /* 80AF0A84 */ void drawOtherMdls(); - /* 80AF0B30 */ void getTypeFromParam(); - /* 80AF0B7C */ void isDelete(); - /* 80AF0BB0 */ void reset(); - /* 80AF0D34 */ void playMotion(); - /* 80AF0F50 */ void chkAction(int (daNpc_SoldierA_c::*)(void*)); - /* 80AF0F7C */ void setAction(int (daNpc_SoldierA_c::*)(void*)); - /* 80AF1024 */ void selectAction(); - /* 80AF10A4 */ void doNormalAction(int); - /* 80AF11B8 */ void doEvent(); - /* 80AF1488 */ void setLookMode(int); - /* 80AF14AC */ void lookat(); - /* 80AF1734 */ void wait(void*); - /* 80AF18B0 */ void talk(void*); - /* 80AF1A48 */ void ECut_talkLake(int); - /* 80AF1B8C */ void ECut_listenLake(int); - /* 80AF1CA4 */ void test(void*); - - static void* mEvtCutNameList[3]; - static u8 mEvtCutList[36]; -}; - -struct daNpc_SoldierA_Param_c { - /* 80AF267C */ ~daNpc_SoldierA_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 80AF1FB4 */ ~daNpcF_c(); - /* 80AF2200 */ daNpcF_c(); - /* 80AF2574 */ void adjustShapeAngle(); - /* 80AF2578 */ void setCollisions(); - /* 80AF257C */ bool setExpressionAnm(int, bool); - /* 80AF2584 */ bool setExpressionBtp(int); - /* 80AF258C */ void setExpression(int, f32); - - static u8 mCcDCyl[68]; -}; - -struct csXyz { - /* 80AF1F34 */ ~csXyz(); - /* 80AF1F70 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80AF1E64 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506EC */ void getActorP(); - /* 80AF1DE0 */ ~daNpcF_ActorMngr_c(); - /* 80AF1E28 */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AF2460 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AF24BC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AF23F0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AEF710 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AEF758 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AF2590 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AF252C */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -479,9 +183,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -498,8 +199,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -508,12 +207,8 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -688,25 +383,30 @@ SECTION_DATA static void* lit_5016[3] = { #pragma pop /* 80AF29BC-80AF29DC -00001 0020+00 1/0 0/0 0/0 .data daNpc_SoldierA_MethodTable */ -SECTION_DATA static void* daNpc_SoldierA_MethodTable[8] = { - (void*)daNpc_SoldierA_Create__FPv, - (void*)daNpc_SoldierA_Delete__FPv, - (void*)daNpc_SoldierA_Execute__FPv, - (void*)daNpc_SoldierA_IsDelete__FPv, - (void*)daNpc_SoldierA_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_SoldierA_MethodTable = { + (process_method_func)daNpc_SoldierA_Create__FPv, + (process_method_func)daNpc_SoldierA_Delete__FPv, + (process_method_func)daNpc_SoldierA_Execute__FPv, + (process_method_func)daNpc_SoldierA_IsDelete__FPv, + (process_method_func)daNpc_SoldierA_Draw__FPv, }; /* 80AF29DC-80AF2A0C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SOLDIERa */ -SECTION_DATA extern void* g_profile_NPC_SOLDIERa[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x028C0000, (void*)&g_fpcLf_Method, - (void*)0x00000E20, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x018F0000, (void*)&daNpc_SoldierA_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SOLDIERa = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SOLDIERa, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_SoldierA_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 399, // mPriority + &daNpc_SoldierA_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AF2A0C-80AF2A54 000184 0048+00 2/2 0/0 0/0 .data __vt__16daNpc_SoldierA_c */ @@ -814,7 +514,8 @@ asm daNpc_SoldierA_c::daNpc_SoldierA_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__8cM3dGCylFv.s" } @@ -824,7 +525,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__8cM3dGAabFv.s" } @@ -1635,7 +1337,8 @@ static bool daNpc_SoldierA_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1645,7 +1348,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1655,7 +1359,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__15daNpcF_Lookat_cFv.s" } @@ -1665,14 +1370,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__5csXyzFv.s" } #pragma pop /* 80AF1F70-80AF1F74 002AD0 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1680,14 +1387,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__4cXyzFv.s" } #pragma pop /* 80AF1FB0-80AF1FB4 002B10 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1695,7 +1404,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__8daNpcF_cFv.s" } @@ -1705,7 +1415,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__ct__8daNpcF_cFv.s" } @@ -1715,7 +1426,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__12dBgS_AcchCirFv.s" } @@ -1725,7 +1437,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__10dCcD_GSttsFv.s" } @@ -1735,7 +1448,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__12dBgS_ObjAcchFv.s" } @@ -1745,34 +1459,40 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AF2574-80AF2578 0030D4 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80AF2578-80AF257C 0030D8 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AF257C-80AF2584 0030DC 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80AF2584-80AF258C 0030E4 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80AF258C-80AF2590 0030EC 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } @@ -1780,7 +1500,8 @@ void daNpcF_c::setExpression(int param_0, f32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierA/d_a_npc_soldierA/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.cpp b/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.cpp index e8695e7f61..cf16892d35 100644 --- a/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.cpp +++ b/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.cpp @@ -1,302 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_soldierB -// +/** + * @file d_a_npc_soldierB.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80AF537C */ ~cXyz(); - /* 80AF53B8 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpc_SoldierB_c { - /* 80AF2CAC */ daNpc_SoldierB_c(); - /* 80AF2EC0 */ ~daNpc_SoldierB_c(); - /* 80AF30C0 */ void create(); - /* 80AF33A0 */ void CreateHeap(); - /* 80AF356C */ void Delete(); - /* 80AF35A0 */ void Execute(); - /* 80AF35C0 */ void Draw(); - /* 80AF3634 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80AF3830 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AF3850 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80AF389C */ void setParam(); - /* 80AF39B8 */ void main(); - /* 80AF3B30 */ bool ctrlBtk(); - /* 80AF3B38 */ void setAttnPos(); - /* 80AF4030 */ void setMotionAnm(int, f32); - /* 80AF4130 */ void setMotion(int, f32, int); - /* 80AF4174 */ bool drawDbgInfo(); - /* 80AF417C */ void drawOtherMdls(); - /* 80AF4228 */ void getTypeFromParam(); - /* 80AF4248 */ void isDelete(); - /* 80AF426C */ void reset(); - /* 80AF43E4 */ void playMotion(); - /* 80AF4508 */ void chkAction(int (daNpc_SoldierB_c::*)(void*)); - /* 80AF4534 */ void setAction(int (daNpc_SoldierB_c::*)(void*)); - /* 80AF45DC */ void selectAction(); - /* 80AF465C */ void doNormalAction(int); - /* 80AF4770 */ void doEvent(); - /* 80AF49E4 */ void setLookMode(int); - /* 80AF4A08 */ void lookat(); - /* 80AF4CFC */ void wait(void*); - /* 80AF4DBC */ void talk(void*); - /* 80AF4F54 */ void ECut_listenLake(int); - /* 80AF50AC */ void test(void*); - - static void* mEvtCutNameList[2]; - static u8 mEvtCutList[24]; -}; - -struct daNpc_SoldierB_Param_c { - /* 80AF5A68 */ ~daNpc_SoldierB_Param_c(); - - static u8 const m[108]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DAnmTransformKey {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80AF53BC */ ~daNpcF_c(); - /* 80AF5608 */ daNpcF_c(); - /* 80AF597C */ void adjustShapeAngle(); - /* 80AF5980 */ void setCollisions(); - /* 80AF5984 */ bool setExpressionAnm(int, bool); - /* 80AF598C */ bool setExpressionBtp(int); - /* 80AF5994 */ void setExpression(int, f32); - - static u8 mCcDCyl[68]; -}; - -struct csXyz { - /* 80AF533C */ ~csXyz(); - /* 80AF5378 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80AF526C */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506EC */ void getActorP(); - /* 80AF51E8 */ ~daNpcF_ActorMngr_c(); - /* 80AF5230 */ daNpcF_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80AF5868 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80AF58C4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80AF57F8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80AF2E30 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80AF2E78 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80AF5998 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80AF5934 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -473,9 +182,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -492,8 +198,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -502,12 +206,8 @@ extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -661,25 +361,30 @@ SECTION_DATA static void* lit_4994[3] = { #pragma pop /* 80AF5CFC-80AF5D1C -00001 0020+00 1/0 0/0 0/0 .data daNpc_SoldierB_MethodTable */ -SECTION_DATA static void* daNpc_SoldierB_MethodTable[8] = { - (void*)daNpc_SoldierB_Create__FPv, - (void*)daNpc_SoldierB_Delete__FPv, - (void*)daNpc_SoldierB_Execute__FPv, - (void*)daNpc_SoldierB_IsDelete__FPv, - (void*)daNpc_SoldierB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_SoldierB_MethodTable = { + (process_method_func)daNpc_SoldierB_Create__FPv, + (process_method_func)daNpc_SoldierB_Delete__FPv, + (process_method_func)daNpc_SoldierB_Execute__FPv, + (process_method_func)daNpc_SoldierB_IsDelete__FPv, + (process_method_func)daNpc_SoldierB_Draw__FPv, }; /* 80AF5D1C-80AF5D4C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SOLDIERb */ -SECTION_DATA extern void* g_profile_NPC_SOLDIERb[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x028D0000, (void*)&g_fpcLf_Method, - (void*)0x00000E20, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01900000, (void*)&daNpc_SoldierB_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_SOLDIERb = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_SOLDIERb, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_SoldierB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 400, // mPriority + &daNpc_SoldierB_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80AF5D4C-80AF5D94 00013C 0048+00 2/2 0/0 0/0 .data __vt__16daNpc_SoldierB_c */ @@ -787,7 +492,8 @@ asm daNpc_SoldierB_c::daNpc_SoldierB_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__8cM3dGCylFv.s" } @@ -797,7 +503,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__8cM3dGAabFv.s" } @@ -1531,7 +1238,8 @@ static bool daNpc_SoldierB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1541,7 +1249,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1551,7 +1260,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__15daNpcF_Lookat_cFv.s" } @@ -1561,14 +1271,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__5csXyzFv.s" } #pragma pop /* 80AF5378-80AF537C 0027B8 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1576,14 +1288,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__4cXyzFv.s" } #pragma pop /* 80AF53B8-80AF53BC 0027F8 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1591,7 +1305,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__8daNpcF_cFv.s" } @@ -1601,7 +1316,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__ct__8daNpcF_cFv.s" } @@ -1611,7 +1327,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__12dBgS_AcchCirFv.s" } @@ -1621,7 +1338,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__10dCcD_GSttsFv.s" } @@ -1631,7 +1349,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__12dBgS_ObjAcchFv.s" } @@ -1641,34 +1360,40 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80AF597C-80AF5980 002DBC 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80AF5980-80AF5984 002DC0 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AF5984-80AF598C 002DC4 0008+00 1/0 0/0 0/0 .text setExpressionAnm__8daNpcF_cFib */ -bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +// bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) { +extern "C" bool setExpressionAnm__8daNpcF_cFib() { return true; } /* 80AF598C-80AF5994 002DCC 0008+00 1/0 0/0 0/0 .text setExpressionBtp__8daNpcF_cFi */ -bool daNpcF_c::setExpressionBtp(int param_0) { +// bool daNpcF_c::setExpressionBtp(int param_0) { +extern "C" bool setExpressionBtp__8daNpcF_cFi() { return true; } /* 80AF5994-80AF5998 002DD4 0004+00 1/0 0/0 0/0 .text setExpression__8daNpcF_cFif */ -void daNpcF_c::setExpression(int param_0, f32 param_1) { +// void daNpcF_c::setExpression(int param_0, f32 param_1) { +extern "C" asm void setExpression__8daNpcF_cFif() { /* empty function */ } @@ -1676,7 +1401,8 @@ void daNpcF_c::setExpression(int param_0, f32 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_soldierB/d_a_npc_soldierB/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.cpp b/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.cpp index f7a0bfdf6f..e483da22c8 100644 --- a/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.cpp +++ b/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.cpp @@ -1,460 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_taro -// +/** + * @file d_a_npc_taro.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_taro/d_a_npc_taro.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 805705F8 */ ~cXyz(); - /* 80570C88 */ cXyz(); -}; - -struct daTag_EvtArea_c { - /* 80571654 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80570C8C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Taro_c { - /* 80565E8C */ ~daNpc_Taro_c(); - /* 8056604C */ void create(); - /* 80566340 */ void CreateHeap(); - /* 80566910 */ void Delete(); - /* 80566944 */ void Execute(); - /* 80566964 */ void Draw(); - /* 805669F8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80566A18 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80566A70 */ void srchArrow(void*, void*); - /* 80566B0C */ void srchNpc(void*, void*); - /* 80566BD4 */ void getArrowP(); - /* 80566CCC */ void getType(); - /* 80566D7C */ void isDelete(); - /* 80566FA4 */ void reset(); - /* 805671F4 */ void afterJntAnm(int); - /* 80567280 */ void setParam(); - /* 8056747C */ void checkChangeEvt(); - /* 8056757C */ void evtEndProc(); - /* 805675B8 */ void setAfterTalkMotion(); - /* 8056767C */ void srchActors(); - /* 805679F0 */ void evtTalk(); - /* 80567A90 */ void evtCutProc(); - /* 80567C90 */ void action(); - /* 80567EB4 */ void beforeMove(); - /* 80567F78 */ void setAttnPos(); - /* 805682E8 */ void setCollision(); - /* 80568590 */ bool drawDbgInfo(); - /* 80568598 */ void drawOtherMdl(); - /* 805686A0 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80568738 */ void selectAction(); - /* 80568828 */ void chkAction(int (daNpc_Taro_c::*)(void*)); - /* 80568854 */ void setAction(int (daNpc_Taro_c::*)(void*)); - /* 805688FC */ void setSwingVoice(); - /* 80568A2C */ void cutConversationAboutPachinko(int); - /* 80568C58 */ void cutConversationAboutWoodSwd(int); - /* 80568E00 */ void cutSwdTutorial(int); - /* 80569880 */ void cutHail(int); - /* 80569AFC */ void cutFindMonkey(int); - /* 8056A120 */ void cutHelpMe(int); - /* 8056A460 */ void cutAppearanceMoi(int); - /* 8056B000 */ void cutGiveMeWoodSwd(int); - /* 8056B68C */ void cutGetWoodSwd(int); - /* 8056C14C */ void cutConversationWithMaro(int); - /* 8056C5B4 */ void cutCacaricoConversation(int); - /* 8056C8CC */ void cutArrowTutorial(int); - /* 8056D0B8 */ void cutCaution(int); - /* 8056D310 */ void cutTagPush1(int); - /* 8056D5C0 */ void cutNotGonnaLet(int); - /* 8056DFAC */ void cutTagPush4(int); - /* 8056E270 */ void wait(void*); - /* 8056F2A8 */ void swdTutorial(void*); - /* 8056F418 */ void talk_withMaro(void*); - /* 8056F7E8 */ void practice(void*); - /* 8056FC20 */ void nurse(void*); - /* 8056FDCC */ void talk(void*); - /* 8057148C */ daNpc_Taro_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 805715AC */ s32 getEyeballMaterialNo(); - /* 805715B4 */ s32 getHeadJointNo(); - /* 805715BC */ s32 getNeckJointNo(); - /* 805715C4 */ bool getBackboneJointNo(); - /* 805715CC */ void checkChangeJoint(int); - /* 805715DC */ void checkRemoveJoint(int); - /* 805715EC */ s32 getFootLJointNo(); - /* 805715F4 */ s32 getFootRJointNo(); - - static void* mCutNameList[17]; - static u8 mCutList[204]; -}; - -struct daNpc_Taro_Param_c { - /* 805715FC */ ~daNpc_Taro_Param_c(); - - static u8 const m[144]; -}; - -struct daNpc_Maro_c { - /* 80562CA4 */ void choccai(void*); -}; - -struct daNpc_Len_c { - /* 80A660D8 */ void checkStartDemo13StbEvt(fopAc_ac_c*, f32, f32, f32, f32, f32, f32, f32); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80570634 */ ~csXyz(); - /* 80570B88 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148058 */ void getTrnsfrmAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 80570270 */ ~daNpcT_c(); - /* 80570784 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 8057117C */ void ctrlSubFaceMotion(int); - /* 80571180 */ bool getEyeballLMaterialNo(); - /* 80571188 */ bool getEyeballRMaterialNo(); - /* 80571190 */ void afterMoved(); - /* 80571194 */ bool chkXYItems(); - /* 8057119C */ void decTmr(); - /* 805711B4 */ void drawGhost(); - /* 805711B8 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 805711C0 */ bool afterSetMotionAnm(int, int, f32, int); - /* 805711C8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 805711F8 */ void changeAnm(int*, int*); - /* 805711FC */ void changeBck(int*, int*); - /* 80571200 */ void changeBtp(int*, int*); - /* 80571204 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80570B8C */ ~daNpcT_JntAnm_c(); - /* 80570E58 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80570F74 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80570670 */ ~daNpcT_ActorMngr_c(); - /* 805706B8 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80570CD4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgObject_c { - /* 8023819C */ void getActor(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80570D44 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80570DA0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 805706F4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 8057073C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80570228 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF010 */ void bgmStart(u32, u32, s32); - /* 802AF49C */ void subBgmStart(u32); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 805667FC */ ~J3DTexNoAnm(); - /* 80566844 */ J3DTexNoAnm(); - /* 805701F8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80566868 */ ~J3DTexMtxAnm(); - /* 805668A4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80566754 */ ~J3DTevKColorAnm(); - /* 80566790 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 805667A8 */ ~J3DTevColorAnm(); - /* 805667E4 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 805668BC */ ~J3DMatColorAnm(); - /* 805668F8 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80570E10 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -590,7 +141,6 @@ extern "C" u8 mCutList__12daNpc_Taro_c[204]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -740,11 +290,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -766,10 +311,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -780,13 +322,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void choccai__12daNpc_Maro_cFPv(); @@ -2117,25 +1654,30 @@ SECTION_DATA static void* lit_8837[14] = { }; /* 8057339C-805733BC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Taro_MethodTable */ -SECTION_DATA static void* daNpc_Taro_MethodTable[8] = { - (void*)daNpc_Taro_Create__FPv, - (void*)daNpc_Taro_Delete__FPv, - (void*)daNpc_Taro_Execute__FPv, - (void*)daNpc_Taro_IsDelete__FPv, - (void*)daNpc_Taro_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Taro_MethodTable = { + (process_method_func)daNpc_Taro_Create__FPv, + (process_method_func)daNpc_Taro_Delete__FPv, + (process_method_func)daNpc_Taro_Execute__FPv, + (process_method_func)daNpc_Taro_IsDelete__FPv, + (process_method_func)daNpc_Taro_Draw__FPv, }; /* 805733BC-805733EC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TARO */ -SECTION_DATA extern void* g_profile_NPC_TARO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x026E0000, (void*)&g_fpcLf_Method, - (void*)0x000011AC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x016F0000, (void*)&daNpc_Taro_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TARO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TARO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Taro_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 367, // mPriority + &daNpc_Taro_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 805733EC-805733F8 001824 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -2399,7 +1941,8 @@ asm void daNpc_Taro_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__15J3DTevKColorAnmFv.s" } @@ -2409,7 +1952,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__15J3DTevKColorAnmFv.s" } @@ -2419,7 +1963,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__14J3DTevColorAnmFv.s" } @@ -2429,7 +1974,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__14J3DTevColorAnmFv.s" } @@ -2439,7 +1985,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__11J3DTexNoAnmFv.s" } @@ -2449,7 +1996,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__11J3DTexNoAnmFv.s" } @@ -2459,7 +2007,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__12J3DTexMtxAnmFv.s" } @@ -2469,7 +2018,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__12J3DTexMtxAnmFv.s" } @@ -2479,7 +2029,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__14J3DMatColorAnmFv.s" } @@ -2489,7 +2040,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__14J3DMatColorAnmFv.s" } @@ -3617,7 +3169,8 @@ static bool daNpc_Taro_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/calc__11J3DTexNoAnmCFPUs.s" } @@ -3627,7 +3180,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__10cCcD_GSttsFv.s" } @@ -3637,7 +3191,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__8daNpcT_cFv.s" } @@ -3647,7 +3202,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__4cXyzFv.s" } @@ -3657,7 +3213,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__5csXyzFv.s" } @@ -3667,7 +3224,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3677,7 +3235,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -3687,7 +3246,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__8cM3dGCylFv.s" } @@ -3697,7 +3257,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__8cM3dGAabFv.s" } @@ -3709,18 +3270,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/func_80570784.s" } #pragma pop /* 80570B88-80570B8C 00ADE8 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3728,14 +3291,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80570C88-80570C8C 00AEE8 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3743,7 +3308,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3753,7 +3319,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__12dBgS_AcchCirFv.s" } @@ -3763,7 +3330,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__10dCcD_GSttsFv.s" } @@ -3773,7 +3341,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__12dBgS_ObjAcchFv.s" } @@ -3783,7 +3352,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/__dt__12J3DFrameCtrlFv.s" } @@ -3793,8 +3363,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3804,26 +3375,30 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 8057117C-80571180 00B3DC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80571180-80571188 00B3E0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80571188-80571190 00B3E8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -3833,7 +3408,8 @@ void daNpcT_c::afterMoved() { } /* 80571194-8057119C 00B3F4 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3841,25 +3417,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/decTmr__8daNpcT_cFv.s" } #pragma pop /* 805711B4-805711B8 00B414 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 805711B8-805711C0 00B418 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 805711C0-805711C8 00B420 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3868,29 +3448,34 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 805711F8-805711FC 00B458 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 805711FC-80571200 00B45C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80571200-80571204 00B460 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80571204-80571208 00B464 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -4042,7 +3627,8 @@ static asm void func_8057164C() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_taro/d_a_npc_taro/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp b/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp index 0818166509..dd5c0f0feb 100644 --- a/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp +++ b/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp @@ -3186,12 +3186,14 @@ extern "C" asm void __dt__12J3DFrameCtrlFv() { #pragma pop /* 80AFBCEC-80AFBCF0 00470C 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80AFBCF0-80AFBCF4 004710 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.cpp b/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.cpp index f1bd81ccdd..fdae800ee2 100644 --- a/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.cpp +++ b/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.cpp @@ -236,7 +236,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; extern "C" f32 mGroundY__11fopAcM_gc_c; @@ -441,25 +440,30 @@ SECTION_DATA static void* lit_5334[8] = { }; /* 80B011D4-80B011F4 -00001 0020+00 1/0 0/0 0/0 .data daNpcTheB_MethodTable */ -SECTION_DATA static void* daNpcTheB_MethodTable[8] = { - (void*)daNpcTheB_Create__FPv, - (void*)daNpcTheB_Delete__FPv, - (void*)daNpcTheB_Execute__FPv, - (void*)daNpcTheB_IsDelete__FPv, - (void*)daNpcTheB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcTheB_MethodTable = { + (process_method_func)daNpcTheB_Create__FPv, + (process_method_func)daNpcTheB_Delete__FPv, + (process_method_func)daNpcTheB_Execute__FPv, + (process_method_func)daNpcTheB_IsDelete__FPv, + (process_method_func)daNpcTheB_Draw__FPv, }; /* 80B011F4-80B01224 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_THEB */ -SECTION_DATA extern void* g_profile_NPC_THEB[12] = { - (void*)0xFFFFFFFD, (void*)0x0003FFFD, - (void*)0x00570000, (void*)&g_fpcLf_Method, - (void*)0x00000E14, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x014B0000, (void*)&daNpcTheB_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_THEB = { + fpcLy_CURRENT_e, // mLayerID + 3, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_THEB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcTheB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 331, // mPriority + &daNpcTheB_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B01224-80B01230 0001FC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -688,7 +692,8 @@ asm void daNpcTheB_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__15J3DTevKColorAnmFv.s" } @@ -698,7 +703,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__ct__15J3DTevKColorAnmFv.s" } @@ -708,7 +714,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__14J3DTevColorAnmFv.s" } @@ -718,7 +725,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__ct__14J3DTevColorAnmFv.s" } @@ -739,7 +747,8 @@ extern "C" asm void __dt__11J3DTexNoAnmFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__ct__11J3DTexNoAnmFv.s" } @@ -749,7 +758,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__12J3DTexMtxAnmFv.s" } @@ -759,7 +769,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__ct__12J3DTexMtxAnmFv.s" } @@ -769,7 +780,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__14J3DMatColorAnmFv.s" } @@ -779,7 +791,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__ct__14J3DMatColorAnmFv.s" } @@ -1592,7 +1605,8 @@ static bool daNpcTheB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/calc__11J3DTexNoAnmCFPUs.s" } @@ -1602,7 +1616,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1668,7 +1683,8 @@ extern "C" asm void __ct__4cXyzFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_theB/d_a_npc_theB/__dt__8daNpcF_cFv.s" } @@ -1730,17 +1746,20 @@ extern "C" asm void __dt__12J3DFrameCtrlFv() { #pragma pop /* 80B00BC0-80B00BC4 004540 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80B00BC4-80B00BC8 004544 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80B00BC8-80B00BCC 004548 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp b/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp index affebb5245..a901a67fff 100644 --- a/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp +++ b/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp @@ -1,297 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_tk -// +/** + * @file d_a_npc_tk.cpp + * +*/ -// #include "rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h" +#include "rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daPy_py_c { - /* 80B0C198 */ void checkNowWolf(); -}; - -struct daNpc_Hanjo_c { - /* 809F9C98 */ void getType(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNPC_TK_HIO_c { - /* 80B0140C */ daNPC_TK_HIO_c(); - /* 80B0C104 */ ~daNPC_TK_HIO_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_memBit_c { - /* 800347E8 */ void isTbox(int) const; - /* 80034810 */ void onSwitch(int); - /* 80034860 */ void isSwitch(int) const; - /* 800348EC */ void isItem(int) const; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int); - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dPathCurve { - /* 80097C5C */ void Init(dPath*); - /* 80097C74 */ void bSpline2(f32); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 80042958 */ void setSkipZev(void*, char*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCamera_c { - /* 801614AC */ void Start(); - /* 801614D0 */ void Stop(); - /* 8016300C */ void SetTrimSize(s32); - /* 80180AE0 */ void Set(cXyz, cXyz, f32, s16); - /* 80180AA8 */ void Set(cXyz, cXyz); - /* 80180C18 */ void Reset(cXyz, cXyz); - /* 80181E64 */ void Eye(); - /* 80181E98 */ void Center(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk_Spl { - /* 800777B0 */ dBgS_ObjGndChk_Spl(); - /* 80077848 */ ~dBgS_ObjGndChk_Spl(); -}; - -struct dBgS_ObjAcch { - /* 80B0C070 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); - /* 80077114 */ void SetGroundUpY(f32); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo {}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); - /* 80267D0C */ void SetPos(Vec const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct _GXTexObj {}; - -struct Z2SeqMgr { - /* 802AFF8C */ void changeBgmStatus(s32); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DFrameCtrl { - /* 8032842C */ void checkPass(f32); -}; - -struct daNPC_TK_c { - /* 80B01498 */ void setBck(int, u8, f32, f32); - /* 80B0153C */ void checkBck(int); - /* 80B01598 */ void draw(); - /* 80B016D4 */ void checkBeforeBg(); - /* 80B01878 */ void setActionMode(int); - /* 80B018F4 */ void setAddCalcSpeedXZ(cXyz&, cXyz const&, f32, f32, f32); - /* 80B01C84 */ void chaseTargetPos(cXyz, f32, f32, s16); - /* 80B01D84 */ void getMasterPointer(); - /* 80B01DA0 */ void setMasterShoulder(cXyz*); - /* 80B01E48 */ void setAwayAction(int); - /* 80B01EF4 */ void setFlySE(); - /* 80B02254 */ void executeFly(); - /* 80B026F8 */ void initPerchDemo(int); - /* 80B02B5C */ void executePerchDemo(int); - /* 80B03658 */ void executePerch(); - /* 80B03754 */ void executeHandOn(); - /* 80B039A8 */ void checkWaterSurface(f32); - /* 80B03A70 */ void executeAttack(); - /* 80B048BC */ void executeAway(); - /* 80B04BF8 */ void setCarryActorMtx(); - /* 80B04F64 */ void getTakePosY(); - /* 80B04FA8 */ void getTakeOffPosY(); - /* 80B04FEC */ void executeBack(); - /* 80B05BD0 */ void getHanjoHandPos(); - /* 80B05C7C */ void executeStayHanjo(); - /* 80B05EC8 */ void executeAttackLink(); - /* 80B0686C */ void executeBackHanjo(); - /* 80B07114 */ void checkAttackDemo(); - /* 80B072CC */ void executeAttackDemo(); - /* 80B07610 */ void executeBackHanjoDemo(); - /* 80B08168 */ void executeWolfEvent(); - /* 80B08208 */ void calcWolfDemoCam(); - /* 80B082A4 */ void calcWolfDemoCam2(); - /* 80B0839C */ void executeWolfPerch(); - /* 80B09A3C */ void executeResistanceDemo(); - /* 80B0A444 */ void setHawkSideCamera(cXyz); - /* 80B0A500 */ void setHawkCamera(fopAc_ac_c*); - /* 80B0A568 */ void endHawkCamera(); - /* 80B0A614 */ void calcDemoCamera(); - /* 80B0B004 */ void checkActionSet(); - /* 80B0B284 */ void action(); - /* 80B0B5CC */ void mtx_set(); - /* 80B0B6DC */ void cc_set(); - /* 80B0B7CC */ void execute(); - /* 80B0B918 */ void _delete(); - /* 80B0B9AC */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B0BB7C */ void JointCallBack(J3DJoint*, int); - /* 80B0BBC8 */ void CreateHeap(); - /* 80B0BD24 */ void create(); - - void setBump() { mBump |= 4; } - - u8 field_0x0[0x6BE]; - u16 mBump; -}; +#include "d/d_camera.h" // // Forward References: @@ -505,9 +220,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); extern "C" void __construct_array(); extern "C" void _savegpr_23(); extern "C" void _savegpr_26(); @@ -519,8 +231,6 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -528,13 +238,9 @@ extern "C" extern void* __vt__12cCcD_SphAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void getType__13daNpc_Hanjo_cFv(); extern "C" void __register_global_object(); @@ -723,25 +429,30 @@ static dCcD_SrcSph cc_sph_src = { }; /* 80B0C514-80B0C534 -00001 0020+00 1/0 0/0 0/0 .data l_daNPC_TK_Method */ -SECTION_DATA static void* l_daNPC_TK_Method[8] = { - (void*)daNPC_TK_Create__FP10daNPC_TK_c, - (void*)daNPC_TK_Delete__FP10daNPC_TK_c, - (void*)daNPC_TK_Execute__FP10daNPC_TK_c, - (void*)daNPC_TK_IsDelete__FP10daNPC_TK_c, - (void*)daNPC_TK_Draw__FP10daNPC_TK_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNPC_TK_Method = { + (process_method_func)daNPC_TK_Create__FP10daNPC_TK_c, + (process_method_func)daNPC_TK_Delete__FP10daNPC_TK_c, + (process_method_func)daNPC_TK_Execute__FP10daNPC_TK_c, + (process_method_func)daNPC_TK_IsDelete__FP10daNPC_TK_c, + (process_method_func)daNPC_TK_Draw__FP10daNPC_TK_c, }; /* 80B0C534-80B0C564 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TK */ -SECTION_DATA extern void* g_profile_NPC_TK[12] = { - (void*)0xFFFFFFFD, (void*)0x0006FFFD, - (void*)0x01000000, (void*)&g_fpcLf_Method, - (void*)0x00000B44, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02BF0000, (void*)&l_daNPC_TK_Method, - (void*)0x08044000, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TK = { + fpcLy_CURRENT_e, // mLayerID + 6, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TK, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNPC_TK_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 703, // mPriority + &l_daNPC_TK_Method, // sub_method + 0x08044000, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B0C564-80B0C570 000170 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */ @@ -2301,7 +2012,8 @@ extern "C" asm void __dt__8cM3dGAabFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk/__dt__12dBgS_ObjAcchFv.s" } @@ -2372,7 +2084,8 @@ static asm void func_80B0C190() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::checkNowWolf() { +// asm void daPy_py_c::checkNowWolf() { +extern "C" asm void checkNowWolf__9daPy_py_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk/checkNowWolf__9daPy_py_cFv.s" } diff --git a/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.cpp b/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.cpp index 278162e11d..9f66c7c4d4 100644 --- a/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.cpp +++ b/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.cpp @@ -1,340 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_tkc -// +/** + * @file d_a_npc_tkc.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc.h" #include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80B102AC */ ~csXyz(); - /* 80B104D8 */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266F48 */ void normalizeZP(); - /* 80B0C928 */ ~cXyz(); - /* 80B104DC */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcTkc_c { - /* 80B0C7CC */ daNpcTkc_c(); - /* 80B0C964 */ ~daNpcTkc_c(); - /* 80B0CA9C */ void Create(); - /* 80B0CD7C */ void CreateHeap(); - /* 80B0D180 */ void Delete(); - /* 80B0D1B4 */ void Execute(); - /* 80B0D1EC */ void Draw(); - /* 80B0D25C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B0D2CC */ void createHeapCallBack(fopAc_ac_c*); - /* 80B0D2EC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B0D338 */ void setActionWait(); - /* 80B0D37C */ void setActionFollow(); - /* 80B0D3C0 */ void setMtx(); - /* 80B0D458 */ void setExpressionAnm(int, bool); - /* 80B0D5A4 */ void setExpressionBtp(int); - /* 80B0D678 */ void reset(); - /* 80B0DA94 */ void setMotionAnm(int, f32); - /* 80B0DBC8 */ void setAction(void (daNpcTkc_c::*)()); - /* 80B0DC68 */ void wait(); - /* 80B0DEF8 */ void calcFly(); - /* 80B0E124 */ void searchPlayer(); - /* 80B0E304 */ void follow(); - /* 80B0E784 */ void appear(); - /* 80B0E8EC */ void normalTalk(); - /* 80B0EB10 */ void setMotion(int, f32, int); - /* 80B0EB54 */ void setExpression(int, f32); - /* 80B0EB80 */ void warpTalk(); - /* 80B0EEE8 */ void demo(); - /* 80B0F00C */ void EvCut_TksSecretChild(int); - /* 80B0F1F8 */ void EvCut_TksWarpExit(int); - /* 80B0F5D4 */ void EvCut_TksWarpBack(int); - /* 80B0FA5C */ void setParam(); - /* 80B0FAD0 */ void main(); - /* 80B0FD18 */ void ctrlBtk(); - /* 80B0FDE4 */ void setAttnPos(); - /* 80B0FFD4 */ bool drawDbgInfo(); - - static u8 mEvtSeqList[48]; -}; - -struct daNpcTkc_Param_c { - /* 80B10848 */ ~daNpcTkc_Param_c(); - - static u8 const m[164]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 801539F0 */ void chkActorInSight(fopAc_ac_c*, f32); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 80B10060 */ ~daNpcF_c(); - /* 80B102E8 */ daNpcF_c(); - /* 80B10664 */ void adjustShapeAngle(); - /* 80B10668 */ void setCollisions(); - /* 80B1066C */ void drawOtherMdls(); - - static u8 mCcDSph[64]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B0FFDC */ ~daNpcF_ActorMngr_c(); - /* 80B10024 */ daNpcF_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80046800 */ void setObjectArchive(char*); - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B10550 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCamera_c { - /* 80088A7C */ void StartEventCamera(int, int, ...); - /* 80088BBC */ void EndEventCamera(int); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B105AC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80B104E0 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); - /* 80077114 */ void SetGroundUpY(f32); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 80B0C898 */ ~cM3dGSph(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B0C8E0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B10670 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B0D06C */ ~J3DTexNoAnm(); - /* 80B0D0B4 */ J3DTexNoAnm(); - /* 80B0FA2C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B0D0D8 */ ~J3DTexMtxAnm(); - /* 80B0D114 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B0CFC4 */ ~J3DTevKColorAnm(); - /* 80B0D000 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B0D018 */ ~J3DTevColorAnm(); - /* 80B0D054 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B0D12C */ ~J3DMatColorAnm(); - /* 80B0D168 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B1061C */ ~J3DFrameCtrl(); -}; +#include "d/d_camera.h" // // Forward References: @@ -535,12 +206,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -552,11 +217,7 @@ extern "C" void _savegpr_29(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDSph__8daNpcF_c[64]; @@ -567,10 +228,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -802,25 +460,30 @@ SECTION_DATA static void* lit_5152[3] = { }; /* 80B10BBC-80B10BDC -00001 0020+00 1/0 0/0 0/0 .data daNpcTkc_MethodTable */ -SECTION_DATA static void* daNpcTkc_MethodTable[8] = { - (void*)daNpcTkc_Create__FPv, - (void*)daNpcTkc_Delete__FPv, - (void*)daNpcTkc_Execute__FPv, - (void*)daNpcTkc_IsDelete__FPv, - (void*)daNpcTkc_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcTkc_MethodTable = { + (process_method_func)daNpcTkc_Create__FPv, + (process_method_func)daNpcTkc_Delete__FPv, + (process_method_func)daNpcTkc_Execute__FPv, + (process_method_func)daNpcTkc_IsDelete__FPv, + (process_method_func)daNpcTkc_Draw__FPv, }; /* 80B10BDC-80B10C0C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TKC */ -SECTION_DATA extern void* g_profile_NPC_TKC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02760000, (void*)&g_fpcLf_Method, - (void*)0x00000D7C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01770000, (void*)&daNpcTkc_MethodTable, - (void*)0x08044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TKC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TKC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcTkc_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 375, // mPriority + &daNpcTkc_MethodTable, // sub_method + 0x08044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B10C0C-80B10C18 0001AC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -928,7 +591,8 @@ asm daNpcTkc_c::daNpcTkc_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__8cM3dGSphFv.s" } @@ -938,7 +602,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__8cM3dGAabFv.s" } @@ -948,7 +613,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__4cXyzFv.s" } @@ -1037,7 +703,8 @@ asm void daNpcTkc_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__15J3DTevKColorAnmFv.s" } @@ -1047,7 +714,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__15J3DTevKColorAnmFv.s" } @@ -1057,7 +725,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__14J3DTevColorAnmFv.s" } @@ -1067,7 +736,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__14J3DTevColorAnmFv.s" } @@ -1077,7 +747,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__11J3DTexNoAnmFv.s" } @@ -1087,7 +758,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__11J3DTexNoAnmFv.s" } @@ -1097,7 +769,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__12J3DTexMtxAnmFv.s" } @@ -1107,7 +780,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__12J3DTexMtxAnmFv.s" } @@ -1117,7 +791,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__14J3DMatColorAnmFv.s" } @@ -1127,7 +802,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__14J3DMatColorAnmFv.s" } @@ -1747,7 +1423,8 @@ static bool daNpcTkc_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/calc__11J3DTexNoAnmCFPUs.s" } @@ -1814,7 +1491,8 @@ bool daNpcTkc_c::drawDbgInfo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -1824,7 +1502,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -1834,7 +1513,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__8daNpcF_cFv.s" } @@ -1844,7 +1524,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__5csXyzFv.s" } @@ -1854,19 +1535,22 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__ct__8daNpcF_cFv.s" } #pragma pop /* 80B104D8-80B104DC 003DF8 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } /* 80B104DC-80B104E0 003DFC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1874,7 +1558,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__12dBgS_AcchCirFv.s" } @@ -1884,7 +1569,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__10dCcD_GSttsFv.s" } @@ -1894,7 +1580,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__12dBgS_ObjAcchFv.s" } @@ -1904,24 +1591,28 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80B10664-80B10668 003F84 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80B10668-80B1066C 003F88 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } /* 80B1066C-80B10670 003F8C 0004+00 1/0 0/0 0/0 .text drawOtherMdls__8daNpcF_cFv */ -void daNpcF_c::drawOtherMdls() { +// void daNpcF_c::drawOtherMdls() { +extern "C" asm void drawOtherMdls__8daNpcF_cFv() { /* empty function */ } @@ -1929,7 +1620,8 @@ void daNpcF_c::drawOtherMdls() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkc/d_a_npc_tkc/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.cpp b/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.cpp index 7b7824e5ce..e4a4d6cec1 100644 --- a/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.cpp +++ b/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.cpp @@ -1,360 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_tkj -// +/** + * @file d_a_npc_tkj.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpc_Tkj_Param_c { - /* 8057652C */ ~daNpc_Tkj_Param_c(); - - static u8 const m[140]; -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80575D54 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpcTkj_c { - /* 8057372C */ ~daNpcTkj_c(); - /* 80573850 */ void create(); - /* 80573B18 */ void CreateHeap(); - /* 80573F68 */ void Delete(); - /* 80573F9C */ void Execute(); - /* 80573FBC */ void Draw(); - /* 80574058 */ void createHeapCallBack(fopAc_ac_c*); - /* 80574078 */ void ctrlJointCallBack(J3DJoint*, int); - /* 805740D0 */ void getType(); - /* 80574108 */ void getFlowNodeNo(); - /* 80574124 */ void isDelete(); - /* 8057413C */ void reset(); - /* 80574268 */ void setAfterTalkMotion(); - /* 805742C8 */ void srchActors(); - /* 805742D4 */ void evtTalk(); - /* 805743B8 */ void evtCutProc(); - /* 8057449C */ void action(); - /* 80574524 */ void setAttnPos(); - /* 80574770 */ void setCollision(); - /* 80574850 */ bool drawDbgInfo(); - /* 80574858 */ void selectAction(); - /* 805748A8 */ void chkAction(int (daNpcTkj_c::*)(void*)); - /* 805748D4 */ void setAction(int (daNpcTkj_c::*)(void*)); - /* 8057497C */ void wait(void*); - /* 80574B30 */ void talk(void*); - /* 80574D28 */ void cutLv7Start(int); - /* 80575280 */ void setParam(); - /* 8057538C */ void beforeMove(); - /* 805763B0 */ daNpcTkj_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 805764EC */ s32 getEyeballMaterialNo(); - /* 805764F4 */ s32 getHeadJointNo(); - /* 805764FC */ s32 getNeckJointNo(); - /* 80576504 */ s32 getBackboneJointNo(); - /* 8057650C */ void checkChangeJoint(int); - /* 8057651C */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 8057578C */ ~cXyz(); - /* 80575D08 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80575404 */ ~daNpcT_c(); - /* 80575804 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80576244 */ void ctrlSubFaceMotion(int); - /* 80576248 */ s32 getFootLJointNo(); - /* 80576250 */ s32 getFootRJointNo(); - /* 80576258 */ bool getEyeballLMaterialNo(); - /* 80576260 */ bool getEyeballRMaterialNo(); - /* 80576268 */ void afterJntAnm(int); - /* 8057626C */ bool checkChangeEvt(); - /* 80576274 */ bool evtEndProc(); - /* 8057627C */ void afterMoved(); - /* 80576280 */ bool chkXYItems(); - /* 80576288 */ void decTmr(); - /* 805762A0 */ void drawOtherMdl(); - /* 805762A4 */ void drawGhost(); - /* 805762A8 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 805762B0 */ bool afterSetMotionAnm(int, int, f32, int); - /* 805762B8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 805762E8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80576318 */ void changeAnm(int*, int*); - /* 8057631C */ void changeBck(int*, int*); - /* 80576320 */ void changeBtp(int*, int*); - /* 80576324 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80575C0C */ ~daNpcT_JntAnm_c(); - /* 80575F20 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 8057603C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80575D0C */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034918 */ void onDungeonItem(int); - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80575E0C */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80575E68 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80575D9C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 805757C8 */ ~csXyz(); - /* 80575C08 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 8057645C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 805764A4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80575238 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80573E54 */ ~J3DTexNoAnm(); - /* 80573E9C */ J3DTexNoAnm(); - /* 80575208 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80573EC0 */ ~J3DTexMtxAnm(); - /* 80573EFC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80573DAC */ ~J3DTevKColorAnm(); - /* 80573DE8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80573E00 */ ~J3DTevColorAnm(); - /* 80573E3C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80573F14 */ ~J3DMatColorAnm(); - /* 80573F50 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80575ED8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -464,7 +115,6 @@ extern "C" u8 mCutList__10daNpcTkj_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); @@ -561,10 +211,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -580,10 +226,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -594,9 +237,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -747,25 +387,30 @@ SECTION_DATA static void* lit_4771[3] = { }; /* 80576800-80576820 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Tkj_MethodTable */ -SECTION_DATA static void* daNpc_Tkj_MethodTable[8] = { - (void*)daNpc_Tkj_Create__FPv, - (void*)daNpc_Tkj_Delete__FPv, - (void*)daNpc_Tkj_Execute__FPv, - (void*)daNpc_Tkj_IsDelete__FPv, - (void*)daNpc_Tkj_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Tkj_MethodTable = { + (process_method_func)daNpc_Tkj_Create__FPv, + (process_method_func)daNpc_Tkj_Delete__FPv, + (process_method_func)daNpc_Tkj_Execute__FPv, + (process_method_func)daNpc_Tkj_IsDelete__FPv, + (process_method_func)daNpc_Tkj_Draw__FPv, }; /* 80576820-80576850 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TKJ */ -SECTION_DATA extern void* g_profile_NPC_TKJ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02740000, (void*)&g_fpcLf_Method, - (void*)0x00000FA4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01750000, (void*)&daNpc_Tkj_MethodTable, - (void*)0x08044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TKJ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TKJ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcTkj_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 373, // mPriority + &daNpc_Tkj_MethodTable, // sub_method + 0x08044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80576850-8057685C 00019C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1009,7 +654,8 @@ asm void daNpcTkj_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__15J3DTevKColorAnmFv.s" } @@ -1019,7 +665,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__ct__15J3DTevKColorAnmFv.s" } @@ -1029,7 +676,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__14J3DTevColorAnmFv.s" } @@ -1039,7 +687,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__ct__14J3DTevColorAnmFv.s" } @@ -1049,7 +698,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__11J3DTexNoAnmFv.s" } @@ -1059,7 +709,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__ct__11J3DTexNoAnmFv.s" } @@ -1069,7 +720,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__12J3DTexMtxAnmFv.s" } @@ -1079,7 +731,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__ct__12J3DTexMtxAnmFv.s" } @@ -1089,7 +742,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__14J3DMatColorAnmFv.s" } @@ -1099,7 +753,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__ct__14J3DMatColorAnmFv.s" } @@ -1475,7 +1130,8 @@ static bool daNpc_Tkj_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/calc__11J3DTexNoAnmCFPUs.s" } @@ -1485,7 +1141,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__10cCcD_GSttsFv.s" } @@ -1520,7 +1177,8 @@ asm void daNpcTkj_c::beforeMove() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__8daNpcT_cFv.s" } @@ -1530,7 +1188,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__4cXyzFv.s" } @@ -1540,7 +1199,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__5csXyzFv.s" } @@ -1552,18 +1212,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/func_80575804.s" } #pragma pop /* 80575C08-80575C0C 0025C8 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1571,14 +1233,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80575D08-80575D0C 0026C8 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1586,7 +1250,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1596,7 +1261,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1606,7 +1272,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__12dBgS_AcchCirFv.s" } @@ -1616,7 +1283,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__10dCcD_GSttsFv.s" } @@ -1626,7 +1294,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__12dBgS_ObjAcchFv.s" } @@ -1636,7 +1305,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__12J3DFrameCtrlFv.s" } @@ -1646,8 +1316,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1657,14 +1328,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80576244-80576248 002C04 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1680,13 +1353,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80576258-80576260 002C18 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80576260-80576268 002C20 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1701,7 +1376,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80576274-8057627C 002C34 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1711,7 +1387,8 @@ void daNpcT_c::afterMoved() { } /* 80576280-80576288 002C40 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1719,30 +1396,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/decTmr__8daNpcT_cFv.s" } #pragma pop /* 805762A0-805762A4 002C60 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 805762A4-805762A8 002C64 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 805762A8-805762B0 002C68 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 805762B0-805762B8 002C70 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1751,7 +1433,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1762,29 +1445,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80576318-8057631C 002CD8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 8057631C-80576320 002CDC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80576320-80576324 002CE0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80576324-80576328 002CE4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1837,7 +1525,8 @@ asm daNpcTkj_c::daNpcTkj_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__8cM3dGCylFv.s" } @@ -1847,7 +1536,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj/d_a_npc_tkj/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.cpp b/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.cpp index 5d5f3e9472..5a6f2e8e90 100644 --- a/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.cpp +++ b/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.cpp @@ -1,181 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_tkj2 -// +/** + * @file d_a_npc_tkj2.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_tkj2_class {}; - -struct csXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 8000CF0C */ void ZXYrotS(csXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTexPattern {}; - -struct mDoExt_btpAnm { - /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct J3DAnmTextureSRTKey {}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daPy_boomerangMove_c { - /* 8015E5B0 */ void initOffset(cXyz const*); - /* 8015E654 */ void posMove(cXyz*, s16*, fopAc_ac_c*, s16); - /* 8015E87C */ void bgCheckAfterOffset(cXyz const*); -}; - -struct daNpc_Tkj2_HIO_c { - /* 80B10DEC */ daNpc_Tkj2_HIO_c(); - /* 80B1421C */ ~daNpc_Tkj2_HIO_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjGndChk { - /* 80B11BD0 */ ~dBgS_ObjGndChk(); -}; - -struct dBgS_ObjAcch { - /* 80B141AC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); - /* 800773A4 */ void ClrMoveBGOnly(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo {}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - -struct _GXTexObj {}; - -struct Z2CreatureEnemy { - /* 802C0F64 */ Z2CreatureEnemy(); - /* 802C1094 */ void init(Vec*, Vec*, u8, u8); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80B13E20 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -305,9 +136,6 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); extern "C" void _savegpr_25(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); @@ -316,20 +144,14 @@ extern "C" void _restgpr_25(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_SphAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -370,25 +192,30 @@ static dCcD_SrcSph cc_sph_src = { }; /* 80B14414-80B14434 -00001 0020+00 1/0 0/0 0/0 .data l_daNpc_Tkj2_Method */ -SECTION_DATA static void* l_daNpc_Tkj2_Method[8] = { - (void*)daNpc_Tkj2_Create__FP10fopAc_ac_c, - (void*)daNpc_Tkj2_Delete__FP14npc_tkj2_class, - (void*)daNpc_Tkj2_Execute__FP14npc_tkj2_class, - (void*)daNpc_Tkj2_IsDelete__FP14npc_tkj2_class, - (void*)daNpc_Tkj2_Draw__FP14npc_tkj2_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNpc_Tkj2_Method = { + (process_method_func)daNpc_Tkj2_Create__FP10fopAc_ac_c, + (process_method_func)daNpc_Tkj2_Delete__FP14npc_tkj2_class, + (process_method_func)daNpc_Tkj2_Execute__FP14npc_tkj2_class, + (process_method_func)daNpc_Tkj2_IsDelete__FP14npc_tkj2_class, + (process_method_func)daNpc_Tkj2_Draw__FP14npc_tkj2_class, }; /* 80B14434-80B14464 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TKJ2 */ -SECTION_DATA extern void* g_profile_NPC_TKJ2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x01090000, (void*)&g_fpcLf_Method, - (void*)0x00000AA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02B80000, (void*)&l_daNpc_Tkj2_Method, - (void*)0x000C4000, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_TKJ2 = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TKJ2, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_tkj2_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 696, // mPriority + &l_daNpc_Tkj2_Method, // sub_method + 0x000C4000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80B14464-80B14470 0000AC 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */ @@ -689,7 +516,8 @@ static asm void GndCheck2(npc_tkj2_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +// asm dBgS_ObjGndChk::~dBgS_ObjGndChk() { +extern "C" asm void __dt__14dBgS_ObjGndChkFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2/__dt__14dBgS_ObjGndChkFv.s" } @@ -1062,7 +890,8 @@ static asm void useHeapInit(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2/__dt__12J3DFrameCtrlFv.s" } @@ -1113,7 +942,8 @@ extern "C" asm void __dt__8cM3dGAabFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2/__dt__12dBgS_ObjAcchFv.s" } diff --git a/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.cpp b/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.cpp index 157f86a24c..fe9f07bec7 100644 --- a/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.cpp +++ b/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.cpp @@ -1,438 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_tks -// +/** + * @file d_a_npc_tks.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_tks/d_a_npc_tks.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); - /* 80B1D594 */ csXyz(); - /* 80B1D59C */ ~csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B1D598 */ cXyz(); - /* 80B1D668 */ ~cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daObj { - /* 80037180 */ void make_eff_break_kotubo(fopAc_ac_c*); - /* 80037210 */ void make_eff_break_kotubo2(fopAc_ac_c*); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcTks_c { - /* 80B1462C */ daNpcTks_c(); - /* 80B14844 */ ~daNpcTks_c(); - /* 80B14AF8 */ void Create(); - /* 80B14ED0 */ void CreateHeap(); - /* 80B153D8 */ void Delete(); - /* 80B1540C */ void Execute(); - /* 80B15430 */ void Draw(); - /* 80B1548C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B15650 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B15670 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B156BC */ void setMtx(); - /* 80B157C0 */ void setExpressionAnm(int, bool); - /* 80B1590C */ void setExpressionBtp(int); - /* 80B159E0 */ void setMotion(int, f32, int); - /* 80B15A24 */ void reset(); - /* 80B160A8 */ void setAction(void (daNpcTks_c::*)()); - /* 80B16148 */ void wait(); - /* 80B16344 */ void setMotionAnm(int, f32); - /* 80B16634 */ void waitNude(); - /* 80B1682C */ void waitLv6(); - /* 80B16B74 */ void talk(); - /* 80B16FDC */ void setExpression(int, f32); - /* 80B17008 */ void hide(); - /* 80B17420 */ void shake(); - /* 80B175F4 */ void showUp(); - /* 80B17734 */ void showUpWait(); - /* 80B17B70 */ void lookAroundA(); - /* 80B17D44 */ void lookAroundB(); - /* 80B17F18 */ void in(); - /* 80B18070 */ void damage(); - /* 80B181EC */ void broken(); - /* 80B183E8 */ void demo_appear(); - /* 80B18D44 */ void demo_scannon(); - /* 80B1926C */ void demo_Lv6Gate(); - /* 80B1946C */ void demo_farewell(); - /* 80B19DAC */ void demo_warpBack(); - /* 80B1A30C */ void demo_walkBack(); - /* 80B1A888 */ void demo_Lv7Start(); - /* 80B1B6A0 */ void demo_Lv3PickUp(); - /* 80B1BD64 */ void demo_Lv6PickUp(); - /* 80B1C480 */ void setParam(); - /* 80B1C4F8 */ void main(); - /* 80B1CB54 */ void ctrlBtk(); - /* 80B1CC28 */ void setAttnPos(); - /* 80B1CFD0 */ void lookat(); - /* 80B1D1FC */ bool drawDbgInfo(); - /* 80B1D204 */ void drawOtherMdls(); -}; - -struct daNpcTks_Param_c { - /* 80B1DCEC */ ~daNpcTks_Param_c(); - - static u8 const m[152]; -}; - -struct daNpcTkc_c { - /* 80B0D338 */ void setActionWait(); - /* 80B0D37C */ void setActionFollow(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80B1D6DC */ ~daNpcF_c(); - /* 80B1D928 */ daNpcF_c(); - /* 80B1DC9C */ void adjustShapeAngle(); - /* 80B1DCA0 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80B1D4C4 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B1D440 */ ~daNpcF_ActorMngr_c(); - /* 80B1D488 */ daNpcF_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_memBit_c { - /* 800347A0 */ void onTbox(int); - /* 80034918 */ void onDungeonItem(int); - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dMeter2Info_c { - /* 8021CA04 */ void warpInProc(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); - /* 80042958 */ void setSkipZev(void*, char*); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B1DB88 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B1DBE4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80B1DB18 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B1D5D8 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B1D620 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B1DCA4 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 80268074 */ cBgS_PolyInfo(); - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXTexObj {}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80B1D35C */ void func_80B1D35C(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B152C4 */ ~J3DTexNoAnm(); - /* 80B1530C */ J3DTexNoAnm(); - /* 80B1C450 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B15330 */ ~J3DTexMtxAnm(); - /* 80B1536C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B1521C */ ~J3DTevKColorAnm(); - /* 80B15258 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B15270 */ ~J3DTevColorAnm(); - /* 80B152AC */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B15384 */ ~J3DMatColorAnm(); - /* 80B153C0 */ J3DMatColorAnm(); -}; - -struct J3DLightObj { - /* 80B1D6A4 */ J3DLightObj(); -}; - -struct J3DLightInfo { - /* 803256C4 */ void operator=(J3DLightInfo const&); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80B1DC54 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -680,10 +253,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -702,12 +271,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void pow(); -extern "C" extern u8 const j3dDefaultLightInfo[52]; extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -718,14 +282,10 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void setActionWait__10daNpcTkc_cFv(); extern "C" void setActionFollow__10daNpcTkc_cFv(); @@ -1215,25 +775,30 @@ SECTION_DATA static void* lit_5870[3] = { #pragma pop /* 80B1E408-80B1E428 -00001 0020+00 1/0 0/0 0/0 .data daNpcTks_MethodTable */ -SECTION_DATA static void* daNpcTks_MethodTable[8] = { - (void*)daNpcTks_Create__FPv, - (void*)daNpcTks_Delete__FPv, - (void*)daNpcTks_Execute__FPv, - (void*)daNpcTks_IsDelete__FPv, - (void*)daNpcTks_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcTks_MethodTable = { + (process_method_func)daNpcTks_Create__FPv, + (process_method_func)daNpcTks_Delete__FPv, + (process_method_func)daNpcTks_Execute__FPv, + (process_method_func)daNpcTks_IsDelete__FPv, + (process_method_func)daNpcTks_Draw__FPv, }; /* 80B1E428-80B1E458 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TKS */ -SECTION_DATA extern void* g_profile_NPC_TKS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02750000, (void*)&g_fpcLf_Method, - (void*)0x0000138C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01760000, (void*)&daNpcTks_MethodTable, - (void*)0x08044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TKS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TKS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpcTks_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 374, // mPriority + &daNpcTks_MethodTable, // sub_method + 0x08044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B1E458-80B1E464 000374 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1445,7 +1010,8 @@ asm void daNpcTks_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__15J3DTevKColorAnmFv.s" } @@ -1455,7 +1021,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__15J3DTevKColorAnmFv.s" } @@ -1465,7 +1032,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__14J3DTevColorAnmFv.s" } @@ -1475,7 +1043,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__14J3DTevColorAnmFv.s" } @@ -1485,7 +1054,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__11J3DTexNoAnmFv.s" } @@ -1495,7 +1065,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__11J3DTexNoAnmFv.s" } @@ -1505,7 +1076,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__12J3DTexMtxAnmFv.s" } @@ -1515,7 +1087,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__12J3DTexMtxAnmFv.s" } @@ -1525,7 +1098,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__14J3DMatColorAnmFv.s" } @@ -1535,7 +1109,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__14J3DMatColorAnmFv.s" } @@ -2757,7 +2332,8 @@ static bool daNpcTks_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/calc__11J3DTexNoAnmCFPUs.s" } @@ -2914,7 +2490,8 @@ REGISTER_CTORS(0x80B1D400, __sinit_d_a_npc_tks_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2924,7 +2501,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2934,19 +2512,22 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__15daNpcF_Lookat_cFv.s" } #pragma pop /* 80B1D594-80B1D598 009054 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } /* 80B1D598-80B1D59C 009058 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2954,7 +2535,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__5csXyzFv.s" } @@ -2964,7 +2546,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__8cM3dGCylFv.s" } @@ -2974,7 +2557,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__8cM3dGAabFv.s" } @@ -2984,7 +2568,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__4cXyzFv.s" } @@ -2994,7 +2579,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DLightObj::J3DLightObj() { +// asm J3DLightObj::J3DLightObj() { +extern "C" asm void __ct__11J3DLightObjFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__11J3DLightObjFv.s" } @@ -3004,7 +2590,8 @@ asm J3DLightObj::J3DLightObj() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__8daNpcF_cFv.s" } @@ -3014,7 +2601,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__ct__8daNpcF_cFv.s" } @@ -3024,7 +2612,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__12dBgS_AcchCirFv.s" } @@ -3034,7 +2623,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__10dCcD_GSttsFv.s" } @@ -3044,7 +2634,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__12dBgS_ObjAcchFv.s" } @@ -3054,19 +2645,22 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80B1DC9C-80B1DCA0 00975C 0004+00 1/0 0/0 0/0 .text adjustShapeAngle__8daNpcF_cFv */ -void daNpcF_c::adjustShapeAngle() { +// void daNpcF_c::adjustShapeAngle() { +extern "C" asm void adjustShapeAngle__8daNpcF_cFv() { /* empty function */ } /* 80B1DCA0-80B1DCA4 009760 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -3074,7 +2668,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_tks/d_a_npc_tks/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.cpp b/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.cpp index 8fe83a7c08..b4662a6f38 100644 --- a/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.cpp +++ b/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.cpp @@ -1,457 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_toby -// +/** + * @file d_a_npc_toby.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_toby/d_a_npc_toby.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daSCannon_c { - /* 80CC8DDC */ void setCannonRepair(); -}; - -struct daObj_AutoMata_c { - /* 80BA6500 */ void setAnm(int, bool); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80B2418C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Toby_c { - /* 80B1E64C */ ~daNpc_Toby_c(); - /* 80B1E798 */ void create(); - /* 80B1EA60 */ void CreateHeap(); - /* 80B1EF28 */ void Delete(); - /* 80B1EF5C */ void Execute(); - /* 80B1EF7C */ void Draw(); - /* 80B1F010 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B1F030 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B1F088 */ void srchToby(void*, void*); - /* 80B1F124 */ void getOtherTobyP(int); - /* 80B1F200 */ void getType(); - /* 80B1F274 */ void isDelete(); - /* 80B1F384 */ void reset(); - /* 80B1F5AC */ void afterJntAnm(int); - /* 80B1F638 */ void setParam(); - /* 80B1F784 */ void checkChangeEvt(); - /* 80B1F950 */ void setAfterTalkMotion(); - /* 80B1FA08 */ void srchActors(); - /* 80B1FB34 */ void evtTalk(); - /* 80B1FBD4 */ void evtCutProc(); - /* 80B1FC9C */ void action(); - /* 80B1FE68 */ void beforeMove(); - /* 80B1FF2C */ void setAttnPos(); - /* 80B20278 */ void setCollision(); - /* 80B2042C */ bool drawDbgInfo(); - /* 80B20434 */ void drawOtherMdl(); - /* 80B2050C */ void afterSetFaceMotionAnm(int, int, f32, int); - /* 80B20568 */ void afterSetMotionAnm(int, int, f32, int); - /* 80B205F4 */ void selectAction(); - /* 80B20710 */ void chkAction(int (daNpc_Toby_c::*)(void*)); - /* 80B2073C */ void setAction(int (daNpc_Toby_c::*)(void*)); - /* 80B207E4 */ void cutTobyHouseFire(int); - /* 80B20AB0 */ void cutTalkToOneself(int); - /* 80B20FC0 */ void cutRepairSCannon(int); - /* 80B215B4 */ void cutSCannon(int); - /* 80B219F4 */ void cutConversationAboutSCannon(int); - /* 80B22434 */ void cutConversationAboutZra(int); - /* 80B22614 */ void chkAttnZra(); - /* 80B226B0 */ void wait(void*); - /* 80B22D98 */ void walk(void*); - /* 80B22FAC */ void play(void*); - /* 80B23344 */ void talk(void*); - /* 80B24840 */ daNpc_Toby_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B24920 */ s32 getEyeballMaterialNo(); - /* 80B24928 */ s32 getHeadJointNo(); - /* 80B24930 */ s32 getNeckJointNo(); - /* 80B24938 */ bool getBackboneJointNo(); - /* 80B24940 */ void checkChangeJoint(int); - /* 80B24950 */ void checkRemoveJoint(int); - /* 80B24960 */ s32 getFootLJointNo(); - /* 80B24968 */ s32 getFootRJointNo(); - /* 80B24970 */ bool chkXYItems(); - - static void* mCutNameList[7]; - static u8 mCutList[84]; -}; - -struct daNpc_Toby_Param_c { - /* 80B24978 */ ~daNpc_Toby_Param_c(); - - static u8 const m[156]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 800844F8 */ void GetTgHitObj(); -}; - -struct csXyz { - /* 80B23AEC */ ~csXyz(); - /* 80B24088 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B23AB0 */ ~cXyz(); - /* 80B24188 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80B23728 */ ~daNpcT_c(); - /* 80B23C84 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B2467C */ void ctrlSubFaceMotion(int); - /* 80B24680 */ bool getEyeballLMaterialNo(); - /* 80B24688 */ bool getEyeballRMaterialNo(); - /* 80B24690 */ bool evtEndProc(); - /* 80B24698 */ void afterMoved(); - /* 80B2469C */ void decTmr(); - /* 80B246B4 */ void drawGhost(); - /* 80B246B8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B246E8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B24718 */ void changeAnm(int*, int*); - /* 80B2471C */ void changeBck(int*, int*); - /* 80B24720 */ void changeBtp(int*, int*); - /* 80B24724 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145DD0 */ void setNextIdx(int); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80B23B70 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B2408C */ ~daNpcT_JntAnm_c(); - /* 80B24358 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B24474 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B23B28 */ ~daNpcT_ActorMngr_c(); - /* 80B23BB8 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_memBit_c { - /* 80034860 */ void isSwitch(int) const; -}; - -struct dSv_info_c { - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B241D4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgObject_c { - /* 8023822C */ void getStatus(); - /* 802382F4 */ void isMsgSendControl(); - /* 80238320 */ void onMsgSend(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B24244 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B242A0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B23BF4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B23C3C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B236E0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80B1EE14 */ ~J3DTexNoAnm(); - /* 80B1EE5C */ J3DTexNoAnm(); - /* 80B236B0 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B1EE80 */ ~J3DTexMtxAnm(); - /* 80B1EEBC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B1ED6C */ ~J3DTevKColorAnm(); - /* 80B1EDA8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B1EDC0 */ ~J3DTevColorAnm(); - /* 80B1EDFC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B1EED4 */ ~J3DMatColorAnm(); - /* 80B1EF10 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B24310 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -573,7 +127,6 @@ extern "C" u8 mCutList__12daNpc_Toby_c[84]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -721,11 +274,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -745,8 +293,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -757,13 +303,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); extern "C" void setAnm__16daObj_AutoMata_cFib(); @@ -1288,25 +829,30 @@ SECTION_DATA static void* lit_6039[21] = { }; /* 80B25670-80B25690 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Toby_MethodTable */ -SECTION_DATA static void* daNpc_Toby_MethodTable[8] = { - (void*)daNpc_Toby_Create__FPv, - (void*)daNpc_Toby_Delete__FPv, - (void*)daNpc_Toby_Execute__FPv, - (void*)daNpc_Toby_IsDelete__FPv, - (void*)daNpc_Toby_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Toby_MethodTable = { + (process_method_func)daNpc_Toby_Create__FPv, + (process_method_func)daNpc_Toby_Delete__FPv, + (process_method_func)daNpc_Toby_Execute__FPv, + (process_method_func)daNpc_Toby_IsDelete__FPv, + (process_method_func)daNpc_Toby_Draw__FPv, }; /* 80B25690-80B256C0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_TOBY */ -SECTION_DATA extern void* g_profile_NPC_TOBY[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02780000, (void*)&g_fpcLf_Method, - (void*)0x00001008, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01790000, (void*)&daNpc_Toby_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_TOBY = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_TOBY, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Toby_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 377, // mPriority + &daNpc_Toby_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B256C0-80B256CC 000A78 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1587,7 +1133,8 @@ asm void daNpc_Toby_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__15J3DTevKColorAnmFv.s" } @@ -1597,7 +1144,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__15J3DTevKColorAnmFv.s" } @@ -1607,7 +1155,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__14J3DTevColorAnmFv.s" } @@ -1617,7 +1166,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__14J3DTevColorAnmFv.s" } @@ -1627,7 +1177,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__11J3DTexNoAnmFv.s" } @@ -1637,7 +1188,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__11J3DTexNoAnmFv.s" } @@ -1647,7 +1199,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__12J3DTexMtxAnmFv.s" } @@ -1657,7 +1210,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__12J3DTexMtxAnmFv.s" } @@ -1667,7 +1221,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__14J3DMatColorAnmFv.s" } @@ -1677,7 +1232,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__14J3DMatColorAnmFv.s" } @@ -2540,7 +2096,8 @@ static bool daNpc_Toby_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/calc__11J3DTexNoAnmCFPUs.s" } @@ -2550,7 +2107,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__10cCcD_GSttsFv.s" } @@ -2560,7 +2118,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__8daNpcT_cFv.s" } @@ -2570,7 +2129,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__4cXyzFv.s" } @@ -2580,7 +2140,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__5csXyzFv.s" } @@ -2590,7 +2151,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2600,7 +2162,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__13daNpcT_Path_cFv.s" } @@ -2610,7 +2173,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2620,7 +2184,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__8cM3dGCylFv.s" } @@ -2630,7 +2195,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__8cM3dGAabFv.s" } @@ -2642,18 +2208,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/func_80B23C84.s" } #pragma pop /* 80B24088-80B2408C 005B28 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2661,14 +2229,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B24188-80B2418C 005C28 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2676,7 +2246,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2686,7 +2257,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__12dBgS_AcchCirFv.s" } @@ -2696,7 +2268,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__10dCcD_GSttsFv.s" } @@ -2706,7 +2279,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__12dBgS_ObjAcchFv.s" } @@ -2716,7 +2290,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/__dt__12J3DFrameCtrlFv.s" } @@ -2726,8 +2301,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2737,31 +2313,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B2467C-80B24680 00611C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80B24680-80B24688 006120 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B24688-80B24690 006128 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B24690-80B24698 006130 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2774,14 +2355,16 @@ void daNpcT_c::afterMoved() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B246B4-80B246B8 006154 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } @@ -2790,7 +2373,8 @@ void daNpcT_c::drawGhost() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2801,29 +2385,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_toby/d_a_npc_toby/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B24718-80B2471C 0061B8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B2471C-80B24720 0061BC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B24720-80B24724 0061C0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B24724-80B24728 0061C4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.cpp b/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.cpp index f63c87f843..4145d42695 100644 --- a/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.cpp +++ b/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.cpp @@ -1,429 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_uri -// +/** + * @file d_a_npc_uri.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_uri/d_a_npc_uri.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80B2C56C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B2BE90 */ ~cXyz(); - /* 80B2C568 */ cXyz(); -}; - -struct daNpc_Uri_c { - /* 80B267AC */ ~daNpc_Uri_c(); - /* 80B268F8 */ void create(); - /* 80B26BE4 */ void CreateHeap(); - /* 80B2708C */ void Delete(); - /* 80B270C0 */ void Execute(); - /* 80B270E0 */ void Draw(); - /* 80B27174 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B27194 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B271EC */ void getType(); - /* 80B27260 */ void isDelete(); - /* 80B272F0 */ void reset(); - /* 80B27750 */ void afterJntAnm(int); - /* 80B27820 */ void setParam(); - /* 80B27994 */ void checkChangeEvt(); - /* 80B27B3C */ void setAfterTalkMotion(); - /* 80B27BF0 */ void srchActors(); - /* 80B27C8C */ void evtTalk(); - /* 80B27D2C */ void evtCutProc(); - /* 80B27DF4 */ void action(); - /* 80B27F14 */ void beforeMove(); - /* 80B27FD8 */ void setAttnPos(); - /* 80B28318 */ void setCollision(); - /* 80B284D4 */ bool drawDbgInfo(); - /* 80B284DC */ void drawOtherMdl(); - /* 80B285B4 */ void afterSetMotionAnm(int, int, f32, int); - /* 80B285EC */ void changeBck(int*, int*); - /* 80B28618 */ void changeBtp(int*, int*); - /* 80B28644 */ void selectAction(); - /* 80B28794 */ void chkAction(int (daNpc_Uri_c::*)(void*)); - /* 80B287C0 */ void setAction(int (daNpc_Uri_c::*)(void*)); - /* 80B28868 */ void chkPlayerCarryBasket(); - /* 80B288DC */ void chkPlayerGetWoodShield(); - /* 80B28910 */ void getTutorialCond(cXyz); - /* 80B28FB8 */ void cutConversation(int); - /* 80B29198 */ void cutStartCarryTutorial(int); - /* 80B293C0 */ void cutEndCarryTutorial(int); - /* 80B296B8 */ void cutConversationWithMoi(int); - /* 80B2985C */ void cutFindWolf(int); - /* 80B29BA4 */ void cutMeetingAgain(int); - /* 80B29EA0 */ void krun(void*); - /* 80B2A1B4 */ void wait(void*); - /* 80B2AB60 */ void walk(void*); - /* 80B2B24C */ void sitWait(void*); - /* 80B2B7C0 */ void talk(void*); - /* 80B2CC64 */ daNpc_Uri_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B2CD44 */ s32 getEyeballMaterialNo(); - /* 80B2CD4C */ s32 getHeadJointNo(); - /* 80B2CD54 */ s32 getNeckJointNo(); - /* 80B2CD5C */ bool getBackboneJointNo(); - /* 80B2CD64 */ void checkChangeJoint(int); - /* 80B2CD74 */ void checkRemoveJoint(int); - /* 80B2CD84 */ s32 getFootLJointNo(); - /* 80B2CD8C */ s32 getFootRJointNo(); - - static void* mCutNameList[7]; - static u8 mCutList[84]; -}; - -struct daNpc_Uri_Param_c { - /* 80B2CD94 */ ~daNpc_Uri_Param_c(); - - static u8 const m[172]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80B2BECC */ ~csXyz(); - /* 80B2C468 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148058 */ void getTrnsfrmAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80B2BB08 */ ~daNpcT_c(); - /* 80B2C064 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B2CA5C */ void ctrlSubFaceMotion(int); - /* 80B2CA60 */ bool getEyeballLMaterialNo(); - /* 80B2CA68 */ bool getEyeballRMaterialNo(); - /* 80B2CA70 */ bool evtEndProc(); - /* 80B2CA78 */ void afterMoved(); - /* 80B2CA7C */ bool chkXYItems(); - /* 80B2CA84 */ void decTmr(); - /* 80B2CA9C */ void drawGhost(); - /* 80B2CAA0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B2CAA8 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B2CAD8 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B2CB08 */ void changeAnm(int*, int*); - /* 80B2CB0C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145D2C */ void setNextPathInfo(s8, u8); - /* 80145DD0 */ void setNextIdx(int); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80B2BF50 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B2C46C */ ~daNpcT_JntAnm_c(); - /* 80B2C738 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B2C854 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B2BF08 */ ~daNpcT_ActorMngr_c(); - /* 80B2BF98 */ daNpcT_ActorMngr_c(); -}; - -struct dSv_player_collect_c { - /* 80034208 */ void isCollect(int, u8) const; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B2C5B4 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B2C624 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B2C680 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dAttention_c { - /* 80B2CDEC */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B2BFD4 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B2C01C */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B2BAC0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct J3DTexNoAnm { - /* 80B26F78 */ ~J3DTexNoAnm(); - /* 80B26FC0 */ J3DTexNoAnm(); - /* 80B2BA90 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B26FE4 */ ~J3DTexMtxAnm(); - /* 80B27020 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B26ED0 */ ~J3DTevKColorAnm(); - /* 80B26F0C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B26F24 */ ~J3DTevColorAnm(); - /* 80B26F60 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B27038 */ ~J3DMatColorAnm(); - /* 80B27074 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80B2C6F0 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -548,7 +130,6 @@ extern "C" u8 mCutList__11daNpc_Uri_c[84]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -685,11 +266,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -709,10 +285,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; @@ -724,12 +297,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" extern u8 mBlureFlag__13mDoGph_gInf_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" void __register_global_object(); // @@ -1232,25 +800,30 @@ SECTION_DATA static void* lit_5098[3] = { #pragma pop /* 80B2DB44-80B2DB64 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Uri_MethodTable */ -SECTION_DATA static void* daNpc_Uri_MethodTable[8] = { - (void*)daNpc_Uri_Create__FPv, - (void*)daNpc_Uri_Delete__FPv, - (void*)daNpc_Uri_Execute__FPv, - (void*)daNpc_Uri_IsDelete__FPv, - (void*)daNpc_Uri_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Uri_MethodTable = { + (process_method_func)daNpc_Uri_Create__FPv, + (process_method_func)daNpc_Uri_Delete__FPv, + (process_method_func)daNpc_Uri_Execute__FPv, + (process_method_func)daNpc_Uri_IsDelete__FPv, + (process_method_func)daNpc_Uri_Draw__FPv, }; /* 80B2DB64-80B2DB94 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_URI */ -SECTION_DATA extern void* g_profile_NPC_URI[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02790000, (void*)&g_fpcLf_Method, - (void*)0x00001018, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017A0000, (void*)&daNpc_Uri_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_URI = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_URI, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Uri_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 378, // mPriority + &daNpc_Uri_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B2DB94-80B2DBA0 000B4C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1520,7 +1093,8 @@ asm void daNpc_Uri_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__15J3DTevKColorAnmFv.s" } @@ -1530,7 +1104,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__15J3DTevKColorAnmFv.s" } @@ -1540,7 +1115,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__14J3DTevColorAnmFv.s" } @@ -1550,7 +1126,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__14J3DTevColorAnmFv.s" } @@ -1560,7 +1137,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__11J3DTexNoAnmFv.s" } @@ -1570,7 +1148,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__11J3DTexNoAnmFv.s" } @@ -1580,7 +1159,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__12J3DTexMtxAnmFv.s" } @@ -1590,7 +1170,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__12J3DTexMtxAnmFv.s" } @@ -1600,7 +1181,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__14J3DMatColorAnmFv.s" } @@ -1610,7 +1192,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__14J3DMatColorAnmFv.s" } @@ -2360,7 +1943,8 @@ static bool daNpc_Uri_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/calc__11J3DTexNoAnmCFPUs.s" } @@ -2370,7 +1954,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__10cCcD_GSttsFv.s" } @@ -2380,7 +1965,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__8daNpcT_cFv.s" } @@ -2390,7 +1976,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__4cXyzFv.s" } @@ -2400,7 +1987,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__5csXyzFv.s" } @@ -2410,7 +1998,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2420,7 +2009,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__13daNpcT_Path_cFv.s" } @@ -2430,7 +2020,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2440,7 +2031,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__8cM3dGCylFv.s" } @@ -2450,7 +2042,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__8cM3dGAabFv.s" } @@ -2462,18 +2055,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/func_80B2C064.s" } #pragma pop /* 80B2C468-80B2C46C 005DA8 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2481,14 +2076,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B2C568-80B2C56C 005EA8 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2496,7 +2093,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2506,7 +2104,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__12dBgS_AcchCirFv.s" } @@ -2516,7 +2115,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__10dCcD_GSttsFv.s" } @@ -2526,7 +2126,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__12dBgS_ObjAcchFv.s" } @@ -2536,7 +2137,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/__dt__12J3DFrameCtrlFv.s" } @@ -2546,8 +2148,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2557,31 +2160,36 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B2CA5C-80B2CA60 00639C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80B2CA60-80B2CA68 0063A0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B2CA68-80B2CA70 0063A8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B2CA70-80B2CA78 0063B0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2591,7 +2199,8 @@ void daNpcT_c::afterMoved() { } /* 80B2CA7C-80B2CA84 0063BC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2599,19 +2208,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B2CA9C-80B2CAA0 0063DC 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B2CAA0-80B2CAA8 0063E0 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2620,7 +2232,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2631,19 +2244,22 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B2CB08-80B2CB0C 006448 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B2CB0C-80B2CB10 00644C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2793,7 +2409,8 @@ static asm void func_80B2CDE4() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_uri/d_a_npc_uri/getDistTable__12dAttention_cFi.s" } diff --git a/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.cpp b/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.cpp index 96feceef14..1bc3e47882 100644 --- a/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.cpp +++ b/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.cpp @@ -1,96 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_worm -// +/** + * @file d_a_npc_worm.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_worm/d_a_npc_worm.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct npc_worm_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct daPy_py_c { - /* 8015F4F0 */ void setLookPos(cXyz*); - /* 80B2F050 */ void getLeftHandPos() const; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dInsect_c { - /* 8015E010 */ dInsect_c(); - /* 80B2F06C */ void Insect_Release(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dAttCatch_c { - /* 80073A08 */ void request(fopAc_ac_c*, u8, f32, f32, f32, s16, int); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; // // Forward References: @@ -152,27 +67,15 @@ extern "C" void cLib_addCalc2__FPffff(); extern "C" void cLib_addCalc0__FPfff(); extern "C" void cLib_addCalcAngleS2__FPssss(); extern "C" void MtxPosition__FP4cXyzP4cXyz(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void _savegpr_24(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_24(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -576,25 +479,30 @@ COMPILER_STRIP_GATE(0x80B2F120, &lit_4126); #pragma pop /* 80B2F12C-80B2F14C -00001 0020+00 1/0 0/0 0/0 .data l_daNPC_WORM_Method */ -SECTION_DATA static void* l_daNPC_WORM_Method[8] = { - (void*)daNPC_WORM_Create__FP10fopAc_ac_c, - (void*)daNPC_WORM_Delete__FP14npc_worm_class, - (void*)daNPC_WORM_Execute__FP14npc_worm_class, - (void*)daNPC_WORM_IsDelete__FP14npc_worm_class, - (void*)daNPC_WORM_Draw__FP14npc_worm_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daNPC_WORM_Method = { + (process_method_func)daNPC_WORM_Create__FP10fopAc_ac_c, + (process_method_func)daNPC_WORM_Delete__FP14npc_worm_class, + (process_method_func)daNPC_WORM_Execute__FP14npc_worm_class, + (process_method_func)daNPC_WORM_IsDelete__FP14npc_worm_class, + (process_method_func)daNPC_WORM_Draw__FP14npc_worm_class, }; /* 80B2F14C-80B2F17C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_WORM */ -SECTION_DATA extern void* g_profile_NPC_WORM[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x01010000, (void*)&g_fpcLf_Method, - (void*)0x000005EC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01AD0000, (void*)&l_daNPC_WORM_Method, - (void*)0x00040100, (void*)NULL, +extern actor_process_profile_definition g_profile_NPC_WORM = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_WORM, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(npc_worm_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 429, // mPriority + &l_daNPC_WORM_Method, // sub_method + 0x00040100, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 80B2F17C-80B2F188 000050 000C+00 1/1 0/0 0/0 .data __vt__14npc_worm_class */ @@ -619,7 +527,8 @@ static asm void daNPC_WORM_Create(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::getLeftHandPos() const { +// asm void daPy_py_c::getLeftHandPos() const { +extern "C" asm void getLeftHandPos__9daPy_py_cCFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm/getLeftHandPos__9daPy_py_cCFv.s" } @@ -629,7 +538,8 @@ asm void daPy_py_c::getLeftHandPos() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dInsect_c::Insect_Release() { +// asm void dInsect_c::Insect_Release() { +extern "C" asm void Insect_Release__9dInsect_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_worm/d_a_npc_worm/Insect_Release__9dInsect_cFv.s" } diff --git a/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.cpp b/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.cpp index 515106cb67..f78a02d4c6 100644 --- a/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.cpp +++ b/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.cpp @@ -1,475 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_wrestler -// +/** + * @file d_a_npc_wrestler.cpp + * +*/ -// #include "rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h" +#include "rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h" #include "dolphin/types.h" #include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B40FCC */ ~cXyz(); - /* 80B41008 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CCC8 */ void push(); - /* 8000CD14 */ void pop(); - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CDD4 */ void transM(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - - static u8 now[48]; -}; - -struct mDoGph_gInf_c { - /* 800080D0 */ void fadeOut(f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTagArena_c { - /* 80B41618 */ void getArenaPos(); -}; - -struct daPy_py_c { - /* 80B41634 */ void getRightFootPos() const; - /* 80B41650 */ void getLeftFootPos() const; -}; - -struct daNpc_grA_c { - /* 809BF7A4 */ void setTagJump(); - /* 809BF99C */ void setHomeJump(); - /* 809C1160 */ void getMode1(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct daNpcWrestler_c { - /* 80B2F28C */ daNpcWrestler_c(); - /* 80B2F4A0 */ ~daNpcWrestler_c(); - /* 80B2F688 */ void Create(); - /* 80B2F974 */ void CreateHeap(); - /* 80B2FDB0 */ void Delete(); - /* 80B2FDE4 */ void Execute(); - /* 80B2FE1C */ void Draw(); - /* 80B2FE84 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B30150 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B30170 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B301BC */ void checkStartUp(); - /* 80B3023C */ void setExpressionAnm(int, bool); - /* 80B30654 */ void setExpressionBtp(int); - /* 80B3074C */ void setMotionAnm(int, f32); - /* 80B308B0 */ void reset(); - /* 80B30AD8 */ void setAction(bool (daNpcWrestler_c::*)(void*)); - /* 80B30BEC */ void checkArenaInfo(); - /* 80B30CA4 */ void checkArenaSub(fopAc_ac_c*); - /* 80B30D48 */ void setOnToArena(f32); - /* 80B30F00 */ void wait(void*); - /* 80B31680 */ void setMotion(int, f32, int); - /* 80B316C8 */ void setExpression(int, f32); - /* 80B316F4 */ void talk(void*); - /* 80B31EB0 */ void demo(void*); - /* 80B32058 */ void gotoArena(void*); - /* 80B32444 */ void gotoLiving(void*); - /* 80B32850 */ void sumouReady(void*); - /* 80B331CC */ void sumouWait(void*); - /* 80B339EC */ void checkOutOfArenaP(); - /* 80B33B3C */ void setNextAction(); - /* 80B34654 */ void sumouPunchHit(void*); - /* 80B34CD0 */ void sumouPunchChaseHit(void*); - /* 80B35364 */ void sumouPunchMiss(void*); - /* 80B35780 */ void checkOutOfArenaW(); - /* 80B358F0 */ void getJointPos(int); - /* 80B35968 */ void sumouPunchDraw(void*); - /* 80B3606C */ void sumouTackleHit(void*); - /* 80B36908 */ void sumouTackleMiss(void*); - /* 80B36C8C */ void sumouTackleDraw(void*); - /* 80B37270 */ void sumouSideStep(void*); - /* 80B378F4 */ void sumouLostBalance(void*); - /* 80B37C30 */ void sumouPunchShock(void*); - /* 80B37FB8 */ void sumouPunchChaseShock(void*); - /* 80B38518 */ void sumouPunchStagger(void*); - /* 80B389A4 */ void sumouTackleShock(void*); - /* 80B38C90 */ void sumouTackleStagger(void*); - /* 80B39334 */ void sumouTackleStaggerRelease(void*); - /* 80B39554 */ void sumouTacklePush(void*); - /* 80B39C18 */ void sumouTackleRelease(void*); - /* 80B39F88 */ void demoSumouReady(void*); - /* 80B3AE24 */ void demoSumouWin(void*); - /* 80B3B4B4 */ void demoSumouLose(void*); - /* 80B3BC84 */ void demoSumouWin2(void*); - /* 80B3C278 */ void demoSumouLose2(void*); - /* 80B3CA2C */ void demoSumouUnilateralWin(void*); - /* 80B3D0C0 */ void demoTalkAfterLose(void*); - /* 80B3D584 */ void EvCut_grDSEntry(int); - /* 80B3DB50 */ void EvCut_grDSEntry2(int); - /* 80B3DCE8 */ void EvCut_grDSEntry3_4(int); - /* 80B3E0FC */ void EvCut_grDSEntry5(int); - /* 80B3E584 */ void EvCut_grDSLose(int); - /* 80B3EAE4 */ void setParam(); - /* 80B3EB94 */ void main(); - /* 80B3EF10 */ void setWrestlerVoice(); - /* 80B3FCE8 */ void playMotion(); - /* 80B404FC */ void ctrlBtk(); - /* 80B405E8 */ void setAttnPos(); - /* 80B40B3C */ void lookat(); - /* 80B40D1C */ bool drawDbgInfo(); - /* 80B40D24 */ void drawOtherMdls(); - /* 80B4166C */ void adjustShapeAngle(); - - static u8 mEvtSeqList[84]; -}; - -struct daNpcWrestler_Param_c { - /* 80B41670 */ ~daNpcWrestler_Param_c(); - - static u8 const m[404]; -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153BDC */ void chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 80153EF4 */ void turn(s16, f32, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 801542A0 */ void getEvtAreaTagP(int, int); - /* 80B4100C */ ~daNpcF_c(); - /* 80B41258 */ daNpcF_c(); - /* 80B415CC */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80B40F8C */ ~csXyz(); - /* 80B40FC8 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80B40EBC */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B40E38 */ ~daNpcF_ActorMngr_c(); - /* 80B40E80 */ daNpcF_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dMeter2Info_c { - /* 8021C970 */ void setMeterString(s32); - /* 8021CC00 */ void resetMeterString(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B414B8 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dCamera_c { - /* 801614AC */ void Start(); - /* 801614D0 */ void Stop(); - /* 8016300C */ void SetTrimSize(s32); - /* 80163D50 */ void ModeFix(s32); - /* 80180AE0 */ void Set(cXyz, cXyz, f32, s16); - /* 80180C18 */ void Reset(cXyz, cXyz); - /* 80181E64 */ void Eye(); - /* 80181E98 */ void Center(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B41514 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80B41448 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B2F410 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B2F458 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B415D0 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); - /* 802B1DF4 */ void changeSubBgmStatus(s32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - template - struct TSinCosTable {}; - /* TSinCosTable<13, f32> */ - struct TSinCosTable__template0 { - /* 80B40D28 */ void func_80B40D28(void* _this, s16) /* const */; - }; - - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - -struct J3DTexNoAnm { - /* 80B2FC9C */ ~J3DTexNoAnm(); - /* 80B2FCE4 */ J3DTexNoAnm(); - /* 80B3EAB4 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B2FD08 */ ~J3DTexMtxAnm(); - /* 80B2FD44 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B2FBF4 */ ~J3DTevKColorAnm(); - /* 80B2FC30 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B2FC48 */ ~J3DTevColorAnm(); - /* 80B2FC84 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B2FD5C */ ~J3DMatColorAnm(); - /* 80B2FD98 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80B41584 */ ~J3DFrameCtrl(); -}; +#include "d/d_camera.h" // // Forward References: @@ -759,11 +296,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -781,11 +313,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void pow(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -796,12 +324,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void setTagJump__11daNpc_grA_cFv(); extern "C" void setHomeJump__11daNpc_grA_cFv(); @@ -2227,25 +1752,30 @@ SECTION_DATA static void* lit_10254[3] = { }; /* 80B42CD8-80B42CF8 -00001 0020+00 1/0 0/0 0/0 .data daNpcWrestler_MethodTable */ -SECTION_DATA static void* daNpcWrestler_MethodTable[8] = { - (void*)daNpcWrestler_Create__FPv, - (void*)daNpcWrestler_Delete__FPv, - (void*)daNpcWrestler_Execute__FPv, - (void*)daNpcWrestler_IsDelete__FPv, - (void*)daNpcWrestler_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpcWrestler_MethodTable = { + (process_method_func)daNpcWrestler_Create__FPv, + (process_method_func)daNpcWrestler_Delete__FPv, + (process_method_func)daNpcWrestler_Execute__FPv, + (process_method_func)daNpcWrestler_IsDelete__FPv, + (process_method_func)daNpcWrestler_Draw__FPv, }; /* 80B42CF8-80B42D28 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_WRESTLER */ -SECTION_DATA extern void* g_profile_NPC_WRESTLER[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x024B0000, (void*)&g_fpcLf_Method, - (void*)0x00000EA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01490000, (void*)&daNpcWrestler_MethodTable, - (void*)0x00044007, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_WRESTLER = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_WRESTLER, // mProcName + &g_fpcLf_Method.mBase, // sub_method + 0xEA0, // mSize (fix this) + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 329, // mPriority + &daNpcWrestler_MethodTable, // sub_method + 0x00044007, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B42D28-80B42D34 000F30 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -2360,7 +1890,8 @@ asm daNpcWrestler_c::daNpcWrestler_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__8cM3dGCylFv.s" } @@ -2370,7 +1901,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__8cM3dGAabFv.s" } @@ -2512,7 +2044,8 @@ asm void daNpcWrestler_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__15J3DTevKColorAnmFv.s" } @@ -2522,7 +2055,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__15J3DTevKColorAnmFv.s" } @@ -2532,7 +2066,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__14J3DTevColorAnmFv.s" } @@ -2542,7 +2077,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__14J3DTevColorAnmFv.s" } @@ -2552,7 +2088,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__11J3DTexNoAnmFv.s" } @@ -2562,7 +2099,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__11J3DTexNoAnmFv.s" } @@ -2572,7 +2110,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__12J3DTexMtxAnmFv.s" } @@ -2582,7 +2121,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__12J3DTexMtxAnmFv.s" } @@ -2592,7 +2132,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__14J3DMatColorAnmFv.s" } @@ -2602,7 +2143,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__14J3DMatColorAnmFv.s" } @@ -2693,7 +2235,7 @@ asm void daNpcWrestler_c::checkStartUp() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcWrestler_c::setExpressionAnm(int param_0, bool param_1) { +asm bool daNpcWrestler_c::setExpressionAnm(int param_0, bool param_1) { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/setExpressionAnm__15daNpcWrestler_cFib.s" } @@ -2703,7 +2245,7 @@ asm void daNpcWrestler_c::setExpressionAnm(int param_0, bool param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcWrestler_c::setExpressionBtp(int param_0) { +asm bool daNpcWrestler_c::setExpressionBtp(int param_0) { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/setExpressionBtp__15daNpcWrestler_cFi.s" } @@ -4542,7 +4084,8 @@ static bool daNpcWrestler_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/calc__11J3DTexNoAnmCFPUs.s" } @@ -4562,7 +4105,7 @@ asm void daNpcWrestler_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcWrestler_c::main() { +asm BOOL daNpcWrestler_c::main() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/main__15daNpcWrestler_cFv.s" } @@ -4642,7 +4185,7 @@ asm void daNpcWrestler_c::playMotion() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcWrestler_c::ctrlBtk() { +asm BOOL daNpcWrestler_c::ctrlBtk() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/ctrlBtk__15daNpcWrestler_cFv.s" } @@ -4708,7 +4251,7 @@ asm void daNpcWrestler_c::lookat() { #pragma pop /* 80B40D1C-80B40D24 011B7C 0008+00 1/0 0/0 0/0 .text drawDbgInfo__15daNpcWrestler_cFv */ -bool daNpcWrestler_c::drawDbgInfo() { +BOOL daNpcWrestler_c::drawDbgInfo() { return false; } @@ -4755,7 +4298,8 @@ REGISTER_CTORS(0x80B40D34, __sinit_d_a_npc_wrestler_cpp); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -4765,7 +4309,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -4775,7 +4320,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__15daNpcF_Lookat_cFv.s" } @@ -4785,14 +4331,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__5csXyzFv.s" } #pragma pop /* 80B40FC8-80B40FCC 011E28 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -4800,14 +4348,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__4cXyzFv.s" } #pragma pop /* 80B41008-80B4100C 011E68 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -4815,7 +4365,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__8daNpcF_cFv.s" } @@ -4825,7 +4376,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__ct__8daNpcF_cFv.s" } @@ -4835,7 +4387,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__12dBgS_AcchCirFv.s" } @@ -4845,7 +4398,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__10dCcD_GSttsFv.s" } @@ -4855,7 +4409,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__12dBgS_ObjAcchFv.s" } @@ -4865,14 +4420,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80B415CC-80B415D0 01242C 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -4880,7 +4437,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/__dt__10cCcD_GSttsFv.s" } @@ -4890,7 +4448,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTagArena_c::getArenaPos() { +// asm void daTagArena_c::getArenaPos() { +extern "C" asm void getArenaPos__12daTagArena_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/getArenaPos__12daTagArena_cFv.s" } @@ -4900,7 +4459,8 @@ asm void daTagArena_c::getArenaPos() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::getRightFootPos() const { +// asm void daPy_py_c::getRightFootPos() const { +extern "C" asm void getRightFootPos__9daPy_py_cCFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/getRightFootPos__9daPy_py_cCFv.s" } @@ -4910,7 +4470,8 @@ asm void daPy_py_c::getRightFootPos() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::getLeftFootPos() const { +// asm void daPy_py_c::getLeftFootPos() const { +extern "C" asm void getLeftFootPos__9daPy_py_cCFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler/getLeftFootPos__9daPy_py_cCFv.s" } diff --git a/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.cpp b/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.cpp index b7a1612152..3f4701fa55 100644 --- a/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.cpp +++ b/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.cpp @@ -1,390 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_yamid -// +/** + * @file d_a_npc_yamid.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B45828 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_yamiD_c { - /* 80B42F4C */ ~daNpc_yamiD_c(); - /* 80B43084 */ void create(); - /* 80B43338 */ void CreateHeap(); - /* 80B43788 */ void Delete(); - /* 80B437BC */ void Execute(); - /* 80B437DC */ void Draw(); - /* 80B43884 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B438A4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B438FC */ void getType(); - /* 80B43934 */ void getFlowNodeNo(); - /* 80B43998 */ void isDelete(); - /* 80B43A20 */ void reset(); - /* 80B43C34 */ void afterJntAnm(int); - /* 80B43CC0 */ void setParam(); - /* 80B43DBC */ void setAfterTalkMotion(); - /* 80B43E1C */ void srchActors(); - /* 80B43E28 */ void evtTalk(); - /* 80B43F0C */ void evtCutProc(); - /* 80B43FD4 */ void action(); - /* 80B440C0 */ void beforeMove(); - /* 80B44138 */ void setAttnPos(); - /* 80B44364 */ void setCollision(); - /* 80B44498 */ bool drawDbgInfo(); - /* 80B444A0 */ void drawGhost(); - /* 80B4450C */ void selectAction(); - /* 80B44554 */ void chkAction(int (daNpc_yamiD_c::*)(void*)); - /* 80B44580 */ void setAction(int (daNpc_yamiD_c::*)(void*)); - /* 80B44628 */ void wait(void*); - /* 80B44900 */ void talk(void*); - /* 80B44AF8 */ void cutStopper(int); - /* 80B44B8C */ void _cutStopper_Init(int const&); - /* 80B44BD4 */ void _cutStopper_Main(int const&); - /* 80B45E74 */ daNpc_yamiD_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B45F34 */ bool getEyeballMaterialNo(); - /* 80B45F3C */ s32 getHeadJointNo(); - /* 80B45F44 */ s32 getNeckJointNo(); - /* 80B45F4C */ bool getBackboneJointNo(); - /* 80B45F54 */ void checkChangeJoint(int); - /* 80B45F64 */ void checkRemoveJoint(int); - /* 80B45F74 */ void evtEndProc(); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_yamiD_Param_c { - /* 80B45FE0 */ ~daNpc_yamiD_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B45188 */ ~cXyz(); - /* 80B457DC */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B44E00 */ ~daNpcT_c(); - /* 80B452D8 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B45D18 */ void ctrlSubFaceMotion(int); - /* 80B45D1C */ s32 getFootLJointNo(); - /* 80B45D24 */ s32 getFootRJointNo(); - /* 80B45D2C */ bool getEyeballLMaterialNo(); - /* 80B45D34 */ bool getEyeballRMaterialNo(); - /* 80B45D3C */ bool checkChangeEvt(); - /* 80B45D44 */ void afterMoved(); - /* 80B45D48 */ bool chkXYItems(); - /* 80B45D50 */ void decTmr(); - /* 80B45D68 */ void drawOtherMdl(); - /* 80B45D6C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B45D74 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B45D7C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B45DAC */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B45DDC */ void changeAnm(int*, int*); - /* 80B45DE0 */ void changeBck(int*, int*); - /* 80B45DE4 */ void changeBtp(int*, int*); - /* 80B45DE8 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80B45200 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B456E0 */ ~daNpcT_JntAnm_c(); - /* 80B459F4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B45B10 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B457E0 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B458E0 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B4593C */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B45870 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B451C4 */ ~csXyz(); - /* 80B456DC */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B45248 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B45290 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B44DB8 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80B43674 */ ~J3DTexNoAnm(); - /* 80B436BC */ J3DTexNoAnm(); - /* 80B44D88 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B436E0 */ ~J3DTexMtxAnm(); - /* 80B4371C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B435CC */ ~J3DTevKColorAnm(); - /* 80B43608 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B43620 */ ~J3DTevColorAnm(); - /* 80B4365C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B43734 */ ~J3DMatColorAnm(); - /* 80B43770 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B459AC */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -497,7 +118,6 @@ extern "C" u8 mCutList__13daNpc_yamiD_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -601,9 +221,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -618,8 +235,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -630,10 +245,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -792,25 +403,30 @@ SECTION_DATA static void* lit_4814[3] = { }; /* 80B462A0-80B462C0 -00001 0020+00 1/0 0/0 0/0 .data daNpc_yamiD_MethodTable */ -SECTION_DATA static void* daNpc_yamiD_MethodTable[8] = { - (void*)daNpc_yamiD_Create__FPv, - (void*)daNpc_yamiD_Delete__FPv, - (void*)daNpc_yamiD_Execute__FPv, - (void*)daNpc_yamiD_IsDelete__FPv, - (void*)daNpc_yamiD_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_yamiD_MethodTable = { + (process_method_func)daNpc_yamiD_Create__FPv, + (process_method_func)daNpc_yamiD_Delete__FPv, + (process_method_func)daNpc_yamiD_Execute__FPv, + (process_method_func)daNpc_yamiD_IsDelete__FPv, + (process_method_func)daNpc_yamiD_Draw__FPv, }; /* 80B462C0-80B462F0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YAMID */ -SECTION_DATA extern void* g_profile_NPC_YAMID[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023D0000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013B0000, (void*)&daNpc_yamiD_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YAMID = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YAMID, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_yamiD_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 315, // mPriority + &daNpc_yamiD_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B462F0-80B462FC 0001AC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1075,7 +691,8 @@ asm void daNpc_yamiD_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__15J3DTevKColorAnmFv.s" } @@ -1085,7 +702,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__ct__15J3DTevKColorAnmFv.s" } @@ -1095,7 +713,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__14J3DTevColorAnmFv.s" } @@ -1105,7 +724,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__ct__14J3DTevColorAnmFv.s" } @@ -1115,7 +735,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__11J3DTexNoAnmFv.s" } @@ -1125,7 +746,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__ct__11J3DTexNoAnmFv.s" } @@ -1135,7 +757,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__12J3DTexMtxAnmFv.s" } @@ -1145,7 +768,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__ct__12J3DTexMtxAnmFv.s" } @@ -1155,7 +779,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__14J3DMatColorAnmFv.s" } @@ -1165,7 +790,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__ct__14J3DMatColorAnmFv.s" } @@ -1542,7 +1168,8 @@ static bool daNpc_yamiD_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/calc__11J3DTexNoAnmCFPUs.s" } @@ -1552,7 +1179,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__10cCcD_GSttsFv.s" } @@ -1562,7 +1190,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__8daNpcT_cFv.s" } @@ -1572,7 +1201,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__4cXyzFv.s" } @@ -1582,7 +1212,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__5csXyzFv.s" } @@ -1592,7 +1223,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__13daNpcT_Path_cFv.s" } @@ -1602,7 +1234,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__8cM3dGCylFv.s" } @@ -1612,7 +1245,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__8cM3dGAabFv.s" } @@ -1624,18 +1258,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/func_80B452D8.s" } #pragma pop /* 80B456DC-80B456E0 00287C 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1643,14 +1279,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B457DC-80B457E0 00297C 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1658,7 +1296,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1668,7 +1307,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1678,7 +1318,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__12dBgS_AcchCirFv.s" } @@ -1688,7 +1329,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__10dCcD_GSttsFv.s" } @@ -1698,7 +1340,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__12dBgS_ObjAcchFv.s" } @@ -1708,7 +1351,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/__dt__12J3DFrameCtrlFv.s" } @@ -1718,8 +1362,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1757,14 +1402,16 @@ COMPILER_STRIP_GATE(0x80B46124, &lit_4760); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B45D18-80B45D1C 002EB8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1780,13 +1427,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B45D2C-80B45D34 002ECC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B45D34-80B45D3C 002ED4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1801,7 +1450,8 @@ void daNpcT_c::afterMoved() { } /* 80B45D48-80B45D50 002EE8 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1809,25 +1459,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B45D68-80B45D6C 002F08 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B45D6C-80B45D74 002F0C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B45D74-80B45D7C 002F14 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1836,7 +1490,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1847,29 +1502,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamid/d_a_npc_yamid/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B45DDC-80B45DE0 002F7C 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B45DE0-80B45DE4 002F80 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B45DE4-80B45DE8 002F84 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B45DE8-80B45DEC 002F88 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.cpp b/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.cpp index ac2f9e2543..05404c678f 100644 --- a/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.cpp +++ b/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.cpp @@ -1,390 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_yamis -// +/** + * @file d_a_npc_yamis.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B48E8C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_yamiS_c { - /* 80B4656C */ ~daNpc_yamiS_c(); - /* 80B466A4 */ void create(); - /* 80B46958 */ void CreateHeap(); - /* 80B46DA8 */ void Delete(); - /* 80B46DDC */ void Execute(); - /* 80B46DFC */ void Draw(); - /* 80B46EA4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B46EC4 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B46F1C */ void getType(); - /* 80B46F54 */ void getFlowNodeNo(); - /* 80B46FB8 */ void isDelete(); - /* 80B47040 */ void reset(); - /* 80B47254 */ void afterJntAnm(int); - /* 80B472E0 */ void setParam(); - /* 80B473DC */ void setAfterTalkMotion(); - /* 80B4743C */ void srchActors(); - /* 80B47440 */ void evtTalk(); - /* 80B47524 */ void evtCutProc(); - /* 80B475EC */ void action(); - /* 80B476D8 */ void beforeMove(); - /* 80B47750 */ void setAttnPos(); - /* 80B4797C */ void setCollision(); - /* 80B47AE8 */ bool drawDbgInfo(); - /* 80B47AF0 */ void drawGhost(); - /* 80B47B5C */ void selectAction(); - /* 80B47BA4 */ void chkAction(int (daNpc_yamiS_c::*)(void*)); - /* 80B47BD0 */ void setAction(int (daNpc_yamiS_c::*)(void*)); - /* 80B47C78 */ void wait(void*); - /* 80B47F50 */ void talk(void*); - /* 80B4815C */ void cutStopper(int); - /* 80B481F0 */ void _cutStopper_Init(int const&); - /* 80B48238 */ void _cutStopper_Main(int const&); - /* 80B494D8 */ daNpc_yamiS_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B49598 */ bool getEyeballMaterialNo(); - /* 80B495A0 */ s32 getHeadJointNo(); - /* 80B495A8 */ s32 getNeckJointNo(); - /* 80B495B0 */ bool getBackboneJointNo(); - /* 80B495B8 */ void checkChangeJoint(int); - /* 80B495C8 */ void checkRemoveJoint(int); - /* 80B495D8 */ void evtEndProc(); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_yamiS_Param_c { - /* 80B49644 */ ~daNpc_yamiS_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B487EC */ ~cXyz(); - /* 80B48E40 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B48464 */ ~daNpcT_c(); - /* 80B4893C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B4937C */ void ctrlSubFaceMotion(int); - /* 80B49380 */ s32 getFootLJointNo(); - /* 80B49388 */ s32 getFootRJointNo(); - /* 80B49390 */ bool getEyeballLMaterialNo(); - /* 80B49398 */ bool getEyeballRMaterialNo(); - /* 80B493A0 */ bool checkChangeEvt(); - /* 80B493A8 */ void afterMoved(); - /* 80B493AC */ bool chkXYItems(); - /* 80B493B4 */ void decTmr(); - /* 80B493CC */ void drawOtherMdl(); - /* 80B493D0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B493D8 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B493E0 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B49410 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B49440 */ void changeAnm(int*, int*); - /* 80B49444 */ void changeBck(int*, int*); - /* 80B49448 */ void changeBtp(int*, int*); - /* 80B4944C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80B48864 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B48D44 */ ~daNpcT_JntAnm_c(); - /* 80B49058 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B49174 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B48E44 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B48F44 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B48FA0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B48ED4 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B48828 */ ~csXyz(); - /* 80B48D40 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B488AC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B488F4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B4841C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80B46C94 */ ~J3DTexNoAnm(); - /* 80B46CDC */ J3DTexNoAnm(); - /* 80B483EC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B46D00 */ ~J3DTexMtxAnm(); - /* 80B46D3C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B46BEC */ ~J3DTevKColorAnm(); - /* 80B46C28 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B46C40 */ ~J3DTevColorAnm(); - /* 80B46C7C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B46D54 */ ~J3DMatColorAnm(); - /* 80B46D90 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B49010 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -497,7 +118,6 @@ extern "C" u8 mCutList__13daNpc_yamiS_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -601,9 +221,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -618,8 +235,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -630,10 +245,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -792,25 +403,30 @@ SECTION_DATA static void* lit_4821[3] = { }; /* 80B49904-80B49924 -00001 0020+00 1/0 0/0 0/0 .data daNpc_yamiS_MethodTable */ -SECTION_DATA static void* daNpc_yamiS_MethodTable[8] = { - (void*)daNpc_yamiS_Create__FPv, - (void*)daNpc_yamiS_Delete__FPv, - (void*)daNpc_yamiS_Execute__FPv, - (void*)daNpc_yamiS_IsDelete__FPv, - (void*)daNpc_yamiS_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_yamiS_MethodTable = { + (process_method_func)daNpc_yamiS_Create__FPv, + (process_method_func)daNpc_yamiS_Delete__FPv, + (process_method_func)daNpc_yamiS_Execute__FPv, + (process_method_func)daNpc_yamiS_IsDelete__FPv, + (process_method_func)daNpc_yamiS_Draw__FPv, }; /* 80B49924-80B49954 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YAMIS */ -SECTION_DATA extern void* g_profile_NPC_YAMIS[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023F0000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013D0000, (void*)&daNpc_yamiS_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YAMIS = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YAMIS, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_yamiS_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 317, // mPriority + &daNpc_yamiS_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B49954-80B49960 0001AC 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1075,7 +691,8 @@ asm void daNpc_yamiS_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__15J3DTevKColorAnmFv.s" } @@ -1085,7 +702,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__ct__15J3DTevKColorAnmFv.s" } @@ -1095,7 +713,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__14J3DTevColorAnmFv.s" } @@ -1105,7 +724,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__ct__14J3DTevColorAnmFv.s" } @@ -1115,7 +735,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__11J3DTexNoAnmFv.s" } @@ -1125,7 +746,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__ct__11J3DTexNoAnmFv.s" } @@ -1135,7 +757,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__12J3DTexMtxAnmFv.s" } @@ -1145,7 +768,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__ct__12J3DTexMtxAnmFv.s" } @@ -1155,7 +779,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__14J3DMatColorAnmFv.s" } @@ -1165,7 +790,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__ct__14J3DMatColorAnmFv.s" } @@ -1537,7 +1163,8 @@ static bool daNpc_yamiS_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/calc__11J3DTexNoAnmCFPUs.s" } @@ -1547,7 +1174,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__10cCcD_GSttsFv.s" } @@ -1557,7 +1185,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__8daNpcT_cFv.s" } @@ -1567,7 +1196,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__4cXyzFv.s" } @@ -1577,7 +1207,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__5csXyzFv.s" } @@ -1587,7 +1218,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__13daNpcT_Path_cFv.s" } @@ -1597,7 +1229,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__8cM3dGCylFv.s" } @@ -1607,7 +1240,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__8cM3dGAabFv.s" } @@ -1619,18 +1253,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/func_80B4893C.s" } #pragma pop /* 80B48D40-80B48D44 0028C0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1638,14 +1274,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B48E40-80B48E44 0029C0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1653,7 +1291,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1663,7 +1302,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1673,7 +1313,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__12dBgS_AcchCirFv.s" } @@ -1683,7 +1324,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__10dCcD_GSttsFv.s" } @@ -1693,7 +1335,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__12dBgS_ObjAcchFv.s" } @@ -1703,7 +1346,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/__dt__12J3DFrameCtrlFv.s" } @@ -1713,8 +1357,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1752,14 +1397,16 @@ COMPILER_STRIP_GATE(0x80B49788, &lit_4760); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B4937C-80B49380 002EFC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1775,13 +1422,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B49390-80B49398 002F10 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B49398-80B493A0 002F18 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1796,7 +1445,8 @@ void daNpcT_c::afterMoved() { } /* 80B493AC-80B493B4 002F2C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1804,25 +1454,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B493CC-80B493D0 002F4C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B493D0-80B493D8 002F50 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B493D8-80B493E0 002F58 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1831,7 +1485,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1842,29 +1497,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamis/d_a_npc_yamis/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B49440-80B49444 002FC0 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B49444-80B49448 002FC4 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B49448-80B4944C 002FC8 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B4944C-80B49450 002FCC 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.cpp b/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.cpp index b579653765..c96d539051 100644 --- a/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.cpp +++ b/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.cpp @@ -1,395 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_yamit -// +/** + * @file d_a_npc_yamit.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTagYami_c { - /* 80D65EEC */ void onMidnaTagSw(); - /* 80D65F24 */ void offMidnaTagSw2(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B4C5EC */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_yamiT_c { - /* 80B49BEC */ ~daNpc_yamiT_c(); - /* 80B49D24 */ void create(); - /* 80B49FD8 */ void CreateHeap(); - /* 80B4A428 */ void Delete(); - /* 80B4A45C */ void Execute(); - /* 80B4A47C */ void _search_Tag(void*, void*); - /* 80B4A4E0 */ void Draw(); - /* 80B4A588 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B4A5A8 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B4A600 */ void getType(); - /* 80B4A638 */ void getFlowNodeNo(); - /* 80B4A69C */ void isDelete(); - /* 80B4A724 */ void reset(); - /* 80B4A914 */ void afterJntAnm(int); - /* 80B4A9A0 */ void setParam(); - /* 80B4AAD0 */ void setAfterTalkMotion(); - /* 80B4AB30 */ void srchActors(); - /* 80B4ABA0 */ void evtTalk(); - /* 80B4AC84 */ void evtCutProc(); - /* 80B4AD4C */ void action(); - /* 80B4AE38 */ void beforeMove(); - /* 80B4AEB0 */ void setAttnPos(); - /* 80B4B0DC */ void setCollision(); - /* 80B4B210 */ bool drawDbgInfo(); - /* 80B4B218 */ void evtEndProc(); - /* 80B4B294 */ void drawGhost(); - /* 80B4B300 */ void selectAction(); - /* 80B4B348 */ void chkAction(int (daNpc_yamiT_c::*)(void*)); - /* 80B4B374 */ void setAction(int (daNpc_yamiT_c::*)(void*)); - /* 80B4B41C */ void wait(void*); - /* 80B4B7D4 */ void talk(void*); - /* 80B4B9E0 */ void cutStopper(int); - /* 80B4BA74 */ void _cutStopper_Init(int const&); - /* 80B4BAAC */ void _cutStopper_Main(int const&); - /* 80B4CC38 */ daNpc_yamiT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B4CCF8 */ bool getEyeballMaterialNo(); - /* 80B4CD00 */ s32 getHeadJointNo(); - /* 80B4CD08 */ s32 getNeckJointNo(); - /* 80B4CD10 */ bool getBackboneJointNo(); - /* 80B4CD18 */ void checkChangeJoint(int); - /* 80B4CD28 */ void checkRemoveJoint(int); - - static void* mCutNameList[2]; - static u8 mCutList[24]; -}; - -struct daNpc_yamiT_Param_c { - /* 80B4CD38 */ ~daNpc_yamiT_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B4BF4C */ ~cXyz(); - /* 80B4C5A0 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B4BBC4 */ ~daNpcT_c(); - /* 80B4C09C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B4CADC */ void ctrlSubFaceMotion(int); - /* 80B4CAE0 */ s32 getFootLJointNo(); - /* 80B4CAE8 */ s32 getFootRJointNo(); - /* 80B4CAF0 */ bool getEyeballLMaterialNo(); - /* 80B4CAF8 */ bool getEyeballRMaterialNo(); - /* 80B4CB00 */ bool checkChangeEvt(); - /* 80B4CB08 */ void afterMoved(); - /* 80B4CB0C */ bool chkXYItems(); - /* 80B4CB14 */ void decTmr(); - /* 80B4CB2C */ void drawOtherMdl(); - /* 80B4CB30 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B4CB38 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B4CB40 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B4CB70 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B4CBA0 */ void changeAnm(int*, int*); - /* 80B4CBA4 */ void changeBck(int*, int*); - /* 80B4CBA8 */ void changeBtp(int*, int*); - /* 80B4CBAC */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80B4BFC4 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B4C4A4 */ ~daNpcT_JntAnm_c(); - /* 80B4C7B8 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B4C8D4 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B4C5A4 */ ~daNpcT_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B4C6A4 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B4C700 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B4C634 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B4BF88 */ ~csXyz(); - /* 80B4C4A0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B4C00C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B4C054 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B4BB7C */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80B4A314 */ ~J3DTexNoAnm(); - /* 80B4A35C */ J3DTexNoAnm(); - /* 80B4BB4C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B4A380 */ ~J3DTexMtxAnm(); - /* 80B4A3BC */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B4A26C */ ~J3DTevKColorAnm(); - /* 80B4A2A8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B4A2C0 */ ~J3DTevColorAnm(); - /* 80B4A2FC */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B4A3D4 */ ~J3DMatColorAnm(); - /* 80B4A410 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B4C770 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -503,7 +119,6 @@ extern "C" u8 mCutList__13daNpc_yamiT_c[24]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -606,9 +221,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -623,8 +235,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -635,10 +245,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); extern "C" void onMidnaTagSw__11daTagYami_cFv(); @@ -802,25 +408,30 @@ SECTION_DATA static void* lit_4836[3] = { }; /* 80B4D024-80B4D044 -00001 0020+00 1/0 0/0 0/0 .data daNpc_yamiT_MethodTable */ -SECTION_DATA static void* daNpc_yamiT_MethodTable[8] = { - (void*)daNpc_yamiT_Create__FPv, - (void*)daNpc_yamiT_Delete__FPv, - (void*)daNpc_yamiT_Execute__FPv, - (void*)daNpc_yamiT_IsDelete__FPv, - (void*)daNpc_yamiT_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_yamiT_MethodTable = { + (process_method_func)daNpc_yamiT_Create__FPv, + (process_method_func)daNpc_yamiT_Delete__FPv, + (process_method_func)daNpc_yamiT_Execute__FPv, + (process_method_func)daNpc_yamiT_IsDelete__FPv, + (process_method_func)daNpc_yamiT_Draw__FPv, }; /* 80B4D044-80B4D074 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YAMIT */ -SECTION_DATA extern void* g_profile_NPC_YAMIT[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x023E0000, (void*)&g_fpcLf_Method, - (void*)0x00000FCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x013C0000, (void*)&daNpc_yamiT_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YAMIT = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YAMIT, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_yamiT_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 316, // mPriority + &daNpc_yamiT_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B4D074-80B4D080 0001D8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1085,7 +696,8 @@ asm void daNpc_yamiT_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__15J3DTevKColorAnmFv.s" } @@ -1095,7 +707,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__ct__15J3DTevKColorAnmFv.s" } @@ -1105,7 +718,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__14J3DTevColorAnmFv.s" } @@ -1115,7 +729,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__ct__14J3DTevColorAnmFv.s" } @@ -1125,7 +740,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__11J3DTexNoAnmFv.s" } @@ -1135,7 +751,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__ct__11J3DTexNoAnmFv.s" } @@ -1145,7 +762,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__12J3DTexMtxAnmFv.s" } @@ -1155,7 +773,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__ct__12J3DTexMtxAnmFv.s" } @@ -1165,7 +784,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__14J3DMatColorAnmFv.s" } @@ -1175,7 +795,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__ct__14J3DMatColorAnmFv.s" } @@ -1573,7 +1194,8 @@ static bool daNpc_yamiT_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/calc__11J3DTexNoAnmCFPUs.s" } @@ -1583,7 +1205,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__10cCcD_GSttsFv.s" } @@ -1593,7 +1216,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__8daNpcT_cFv.s" } @@ -1603,7 +1227,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__4cXyzFv.s" } @@ -1613,7 +1238,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__5csXyzFv.s" } @@ -1623,7 +1249,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__13daNpcT_Path_cFv.s" } @@ -1633,7 +1260,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__8cM3dGCylFv.s" } @@ -1643,7 +1271,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__8cM3dGAabFv.s" } @@ -1655,18 +1284,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/func_80B4C09C.s" } #pragma pop /* 80B4C4A0-80B4C4A4 0029A0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1674,14 +1305,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B4C5A0-80B4C5A4 002AA0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1689,7 +1322,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1699,7 +1333,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1709,7 +1344,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__12dBgS_AcchCirFv.s" } @@ -1719,7 +1355,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__10dCcD_GSttsFv.s" } @@ -1729,7 +1366,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__12dBgS_ObjAcchFv.s" } @@ -1739,7 +1377,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/__dt__12J3DFrameCtrlFv.s" } @@ -1749,8 +1388,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1788,14 +1428,16 @@ COMPILER_STRIP_GATE(0x80B4CE7C, &lit_4767); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B4CADC-80B4CAE0 002FDC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1811,13 +1453,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B4CAF0-80B4CAF8 002FF0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B4CAF8-80B4CB00 002FF8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1832,7 +1476,8 @@ void daNpcT_c::afterMoved() { } /* 80B4CB0C-80B4CB14 00300C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1840,25 +1485,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B4CB2C-80B4CB30 00302C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B4CB30-80B4CB38 003030 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B4CB38-80B4CB40 003038 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1867,7 +1516,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1878,29 +1528,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yamit/d_a_npc_yamit/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B4CBA0-80B4CBA4 0030A0 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B4CBA4-80B4CBA8 0030A4 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B4CBA8-80B4CBAC 0030A8 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B4CBAC-80B4CBB0 0030AC 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.cpp b/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.cpp index 52ad37c5ce..b8fed65122 100644 --- a/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.cpp +++ b/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.cpp @@ -1,406 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_yelia -// +/** + * @file d_a_npc_yelia.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80B51A44 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Yelia_c { - /* 80B4D30C */ ~daNpc_Yelia_c(); - /* 80B4D458 */ void create(); - /* 80B4D754 */ void CreateHeap(); - /* 80B4DC20 */ void Delete(); - /* 80B4DC54 */ void Execute(); - /* 80B4DC74 */ void Draw(); - /* 80B4DD08 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B4DD28 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B4DD80 */ void getType(); - /* 80B4DDF8 */ void isDelete(); - /* 80B4DF10 */ void reset(); - /* 80B4E068 */ void afterJntAnm(int); - /* 80B4E0F4 */ void setParam(); - /* 80B4E2C0 */ void checkChangeEvt(); - /* 80B4E5BC */ void setAfterTalkMotion(); - /* 80B4E6A0 */ void srchActors(); - /* 80B4E7C8 */ void evtTalk(); - /* 80B4E868 */ void evtCutProc(); - /* 80B4E930 */ void action(); - /* 80B4EA28 */ void beforeMove(); - /* 80B4EAEC */ void setAttnPos(); - /* 80B4EE4C */ void setCollision(); - /* 80B4EFA4 */ bool drawDbgInfo(); - /* 80B4EFAC */ void selectAction(); - /* 80B4F054 */ void chkAction(int (daNpc_Yelia_c::*)(void*)); - /* 80B4F080 */ void setAction(int (daNpc_Yelia_c::*)(void*)); - /* 80B4F128 */ void cutConversationAboutLoopHole(int); - /* 80B4F3E0 */ void cutTWResistance(int); - /* 80B4F534 */ void cutTakeWoodStatue(int); - /* 80B4FDD8 */ void cutClothTry(int); - /* 80B4FE78 */ void cutThankYou(int); - /* 80B50084 */ void wait(void*); - /* 80B5080C */ void horseWait(void*); - /* 80B50A0C */ void reminiscence(void*); - /* 80B50B60 */ void talk(void*); - /* 80B52104 */ daNpc_Yelia_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B521E4 */ bool getEyeballMaterialNo(); - /* 80B521EC */ s32 getHeadJointNo(); - /* 80B521F4 */ s32 getNeckJointNo(); - /* 80B521FC */ bool getBackboneJointNo(); - /* 80B52204 */ void checkChangeJoint(int); - /* 80B52214 */ void checkRemoveJoint(int); - /* 80B52224 */ bool chkXYItems(); - - static void* mCutNameList[6]; - static u8 mCutList[72]; -}; - -struct daNpc_Yelia_Param_c { - /* 80B5222C */ ~daNpc_Yelia_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B51368 */ ~cXyz(); - /* 80B51A40 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 80B50FE0 */ ~daNpcT_c(); - /* 80B5153C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B51F34 */ void ctrlSubFaceMotion(int); - /* 80B51F38 */ s32 getFootLJointNo(); - /* 80B51F40 */ s32 getFootRJointNo(); - /* 80B51F48 */ bool getEyeballLMaterialNo(); - /* 80B51F50 */ bool getEyeballRMaterialNo(); - /* 80B51F58 */ bool evtEndProc(); - /* 80B51F60 */ void afterMoved(); - /* 80B51F64 */ void decTmr(); - /* 80B51F7C */ void drawOtherMdl(); - /* 80B51F80 */ void drawGhost(); - /* 80B51F84 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B51F8C */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B51F94 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B51FC4 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B51FF4 */ void changeAnm(int*, int*); - /* 80B51FF8 */ void changeBck(int*, int*); - /* 80B51FFC */ void changeBtp(int*, int*); - /* 80B52000 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80B51428 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B51944 */ ~daNpcT_JntAnm_c(); - /* 80B51C10 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B51D2C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B513E0 */ ~daNpcT_ActorMngr_c(); - /* 80B51470 */ daNpcT_ActorMngr_c(); -}; - -struct daItemBase_c { - /* 80037A64 */ void hide(); - /* 80037A74 */ void show(); -}; - -struct daDitem_c { - /* 80B52284 */ void setOffsetPos(cXyz); -}; - -struct dSv_player_item_c { - /* 80033C2C */ void setWarashibeItem(u8); -}; - -struct dSv_memBit_c { - /* 80034810 */ void onSwitch(int); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A4C4 */ void remove(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B51AFC */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B51B58 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B51A8C */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B513A4 */ ~csXyz(); - /* 80B51940 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B514AC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B514F4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B50F98 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DTexNoAnm { - /* 80B4DB0C */ ~J3DTexNoAnm(); - /* 80B4DB54 */ J3DTexNoAnm(); - /* 80B50F68 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B4DB78 */ ~J3DTexMtxAnm(); - /* 80B4DBB4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B4DA64 */ ~J3DTevKColorAnm(); - /* 80B4DAA0 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B4DAB8 */ ~J3DTevColorAnm(); - /* 80B4DAF4 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B4DBCC */ ~J3DMatColorAnm(); - /* 80B4DC08 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B51BC8 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -519,7 +124,6 @@ extern "C" u8 mCutList__13daNpc_Yelia_c[72]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -641,10 +245,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -662,12 +262,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void strcat(); -extern "C" void strcpy(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -678,9 +273,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1223,25 +815,30 @@ SECTION_DATA static void* lit_5931[3] = { #pragma pop /* 80B53220-80B53240 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Yelia_MethodTable */ -SECTION_DATA static void* daNpc_Yelia_MethodTable[8] = { - (void*)daNpc_Yelia_Create__FPv, - (void*)daNpc_Yelia_Delete__FPv, - (void*)daNpc_Yelia_Execute__FPv, - (void*)daNpc_Yelia_IsDelete__FPv, - (void*)daNpc_Yelia_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Yelia_MethodTable = { + (process_method_func)daNpc_Yelia_Create__FPv, + (process_method_func)daNpc_Yelia_Delete__FPv, + (process_method_func)daNpc_Yelia_Execute__FPv, + (process_method_func)daNpc_Yelia_IsDelete__FPv, + (process_method_func)daNpc_Yelia_Draw__FPv, }; /* 80B53240-80B53270 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YELIA */ -SECTION_DATA extern void* g_profile_NPC_YELIA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027A0000, (void*)&g_fpcLf_Method, - (void*)0x00000FF0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017B0000, (void*)&daNpc_Yelia_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YELIA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YELIA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Yelia_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 379, // mPriority + &daNpc_Yelia_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B53270-80B5327C 000D94 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1510,7 +1107,8 @@ asm void daNpc_Yelia_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__15J3DTevKColorAnmFv.s" } @@ -1520,7 +1118,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__15J3DTevKColorAnmFv.s" } @@ -1530,7 +1129,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__14J3DTevColorAnmFv.s" } @@ -1540,7 +1140,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__14J3DTevColorAnmFv.s" } @@ -1550,7 +1151,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__11J3DTexNoAnmFv.s" } @@ -1560,7 +1162,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__11J3DTexNoAnmFv.s" } @@ -1570,7 +1173,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__12J3DTexMtxAnmFv.s" } @@ -1580,7 +1184,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__12J3DTexMtxAnmFv.s" } @@ -1590,7 +1195,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__14J3DMatColorAnmFv.s" } @@ -1600,7 +1206,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__14J3DMatColorAnmFv.s" } @@ -2160,7 +1767,8 @@ static bool daNpc_Yelia_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/calc__11J3DTexNoAnmCFPUs.s" } @@ -2170,7 +1778,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__10cCcD_GSttsFv.s" } @@ -2180,7 +1789,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__8daNpcT_cFv.s" } @@ -2190,7 +1800,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__4cXyzFv.s" } @@ -2200,7 +1811,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__5csXyzFv.s" } @@ -2210,7 +1822,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -2220,7 +1833,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__13daNpcT_Path_cFv.s" } @@ -2230,7 +1844,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -2240,7 +1855,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__8cM3dGCylFv.s" } @@ -2250,7 +1866,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__8cM3dGAabFv.s" } @@ -2262,18 +1879,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/func_80B5153C.s" } #pragma pop /* 80B51940-80B51944 004720 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2281,14 +1900,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B51A40-80B51A44 004820 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2296,7 +1917,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -2306,7 +1928,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__12dBgS_AcchCirFv.s" } @@ -2316,7 +1939,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__10dCcD_GSttsFv.s" } @@ -2326,7 +1950,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__12dBgS_ObjAcchFv.s" } @@ -2336,7 +1961,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/__dt__12J3DFrameCtrlFv.s" } @@ -2346,8 +1972,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2357,14 +1984,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B51F34-80B51F38 004D14 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2380,18 +2009,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B51F48-80B51F50 004D28 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B51F50-80B51F58 004D30 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B51F58-80B51F60 004D38 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2404,30 +2036,35 @@ void daNpcT_c::afterMoved() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B51F7C-80B51F80 004D5C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B51F80-80B51F84 004D60 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B51F84-80B51F8C 004D64 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B51F8C-80B51F94 004D6C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -2436,7 +2073,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -2447,29 +2085,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B51FF4-80B51FF8 004DD4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B51FF8-80B51FFC 004DD8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B51FFC-80B52000 004DDC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B52000-80B52004 004DE0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -2612,7 +2255,8 @@ static asm void func_80B5227C() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daDitem_c::setOffsetPos(cXyz param_0) { +// asm void daDitem_c::setOffsetPos(cXyz param_0) { +extern "C" asm void setOffsetPos__9daDitem_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_yelia/d_a_npc_yelia/setOffsetPos__9daDitem_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.cpp b/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.cpp index e20721c559..29eca386b0 100644 --- a/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.cpp +++ b/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.cpp @@ -1,543 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_ykm -// +/** + * @file d_a_npc_ykm.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm.h" #include "dol2asm.h" -// -// Types: -// - -struct csXyz { - /* 80B5C588 */ ~csXyz(); - /* 80B5CCBC */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B5C54C */ ~cXyz(); - /* 80B5CDBC */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 80B5D720 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daPy_py_c { - static u8 m_midnaActor[4]; -}; - -struct daNpc_ykW_c { - /* 80B5FCC8 */ void getType(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80B5CDC0 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_ykM_c { - /* 80B534EC */ ~daNpc_ykM_c(); - /* 80B53698 */ void create(); - /* 80B53990 */ void CreateHeap(); - /* 80B540BC */ void Delete(); - /* 80B540F0 */ void Execute(); - /* 80B54110 */ void Draw(); - /* 80B541F8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B54218 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B54270 */ void srchGadget(void*, void*); - /* 80B5430C */ void getTomatoPureeP(); - /* 80B543DC */ void getCheeseP(); - /* 80B544B0 */ void srchYkm(void*, void*); - /* 80B5454C */ void getOtherYkmP(int); - /* 80B54628 */ void srchYkw(void*, void*); - /* 80B546C4 */ void getOtherYkwP(int); - /* 80B547A0 */ void getType(); - /* 80B54808 */ void isDelete(); - /* 80B548A8 */ void reset(); - /* 80B54B44 */ void afterJntAnm(int); - /* 80B54BD0 */ void setParam(); - /* 80B54E5C */ void checkChangeEvt(); - /* 80B55004 */ void setAfterTalkMotion(); - /* 80B550A4 */ void srchActors(); - /* 80B55254 */ void evtTalk(); - /* 80B552F4 */ void evtCutProc(); - /* 80B553BC */ void action(); - /* 80B55658 */ void beforeMove(); - /* 80B5571C */ void afterMoved(); - /* 80B55A64 */ void setAttnPos(); - /* 80B560B4 */ void setCollision(); - /* 80B5641C */ bool drawDbgInfo(); - /* 80B56424 */ void drawOtherMdl(); - /* 80B56624 */ void setFishAnm(int, int, f32); - /* 80B566E8 */ void setLeafAnm(int, f32); - /* 80B567B4 */ void afterSetMotionAnm(int, int, f32, int); - /* 80B5680C */ void selectAction(); - /* 80B56954 */ void chkAction(int (daNpc_ykM_c::*)(void*)); - /* 80B56980 */ void setAction(int (daNpc_ykM_c::*)(void*)); - /* 80B56A28 */ void chkContinueAttnPlayer(); - /* 80B56AB4 */ void chkTouchPlayer(); - /* 80B56B84 */ void cutSlideDown(int); - /* 80B572C8 */ void cutMeetingAgain(int); - /* 80B57638 */ void cutGetTomatoPuree(int); - /* 80B5806C */ void cutGetTaste(int); - /* 80B58A38 */ void cutLv5DungeonClear(int); - /* 80B59500 */ void cutFindWolf(int); - /* 80B59748 */ void cutStartSnowboardRace(int); - /* 80B59B90 */ void cutEndSnowboardRace(int); - /* 80B5A0B8 */ void cutHug(int); - /* 80B5A128 */ void setDialogueMotion(); - /* 80B5A224 */ void dialogue(); - /* 80B5A3FC */ void wait(void*); - /* 80B5ABA8 */ void cook(void*); - /* 80B5B260 */ void race(void*); - /* 80B5BE08 */ void talk(void*); - /* 80B5D588 */ daNpc_ykM_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B5D688 */ s32 getEyeballMaterialNo(); - /* 80B5D690 */ s32 getHeadJointNo(); - /* 80B5D698 */ s32 getNeckJointNo(); - /* 80B5D6A0 */ bool getBackboneJointNo(); - /* 80B5D6A8 */ void checkChangeJoint(int); - /* 80B5D6B8 */ void checkRemoveJoint(int); - - static void* mCutNameList[10]; - static u8 mCutList[120]; -}; - -struct daNpc_ykM_Param_c { - /* 80B5D6C8 */ ~daNpc_ykM_Param_c(); - - static u8 const m[200]; -}; - -struct daNpcT_pntData_c {}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084658 */ void ChkCoHit(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80148094 */ void getTrnsfrmKeyAnmP(char const*, int); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 80B5C1C4 */ ~daNpcT_c(); - /* 80B5C8B8 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B5D2B0 */ void ctrlSubFaceMotion(int); - /* 80B5D2B4 */ s32 getFootLJointNo(); - /* 80B5D2BC */ s32 getFootRJointNo(); - /* 80B5D2C4 */ bool getEyeballLMaterialNo(); - /* 80B5D2CC */ bool getEyeballRMaterialNo(); - /* 80B5D2D4 */ bool evtEndProc(); - /* 80B5D2DC */ bool chkXYItems(); - /* 80B5D2E4 */ void decTmr(); - /* 80B5D2FC */ void drawGhost(); - /* 80B5D300 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B5D308 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B5D338 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B5D368 */ void changeAnm(int*, int*); - /* 80B5D36C */ void changeBck(int*, int*); - /* 80B5D370 */ void changeBtp(int*, int*); - /* 80B5D374 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mCcDSph[64]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145DD0 */ void setNextIdx(int); - /* 80146188 */ void chkPassed1(cXyz, int); - /* 80B5C6D8 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B5CCC0 */ ~daNpcT_JntAnm_c(); - /* 80B5CF8C */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B5D0A8 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B5C690 */ ~daNpcT_ActorMngr_c(); - /* 80B5C720 */ daNpcT_ActorMngr_c(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dTres_c { - /* 8009C3CC */ void setPosition(int, u8, Vec const*, int); -}; - -struct dTimer_c { - /* 8025DB10 */ void isStart(); -}; - -struct dSv_memBit_c { - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dPa_levelEcallBack {}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, - csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8, - cXyz const*); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dMeter2Info_c { - /* 8021C970 */ void setMeterString(s32); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dComIfG_play_c { - /* 8002CB9C */ void getTimerNowTimeMs(); - /* 8002CBBC */ void getTimerMode(); - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 80B5C5C4 */ ~dCcD_Sph(); - /* 80B5C75C */ dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B5CE78 */ ~dCcD_GStts(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B5CED4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B5CE08 */ ~dBgS_AcchCir(); -}; - -struct dBgS { - /* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dAttention_c { - /* 80B54E48 */ void getDistTable(int); - - static u8 dist_table[6552]; -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 80B5C7E0 */ ~cM3dGSph(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B5C828 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B5C870 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B5C17C */ ~cCcD_GStts(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B53FA8 */ ~J3DTexNoAnm(); - /* 80B53FF0 */ J3DTexNoAnm(); - /* 80B5C14C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B54014 */ ~J3DTexMtxAnm(); - /* 80B54050 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B53F00 */ ~J3DTevKColorAnm(); - /* 80B53F3C */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B53F54 */ ~J3DTevColorAnm(); - /* 80B53F90 */ J3DTevColorAnm(); -}; - -struct J3DShapeTable { - /* 803258A0 */ void hide(); - /* 803258D8 */ void show(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B54068 */ ~J3DMatColorAnm(); - /* 80B540A4 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 80B5CF44 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -678,7 +146,6 @@ extern "C" u8 mCutList__11daNpc_ykM_c[120]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -852,11 +319,6 @@ extern "C" void init__12J3DFrameCtrlFs(); extern "C" void checkPass__12J3DFrameCtrlFf(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -881,10 +343,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__8dCcD_Cyl[36]; @@ -899,16 +358,11 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; -extern "C" extern u8 g_env_light[4880]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; extern "C" u8 m_midnaActor__9daPy_py_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void __register_global_object(); @@ -1590,25 +1044,30 @@ SECTION_DATA static void* lit_6857[9] = { }; /* 80B5EB4C-80B5EB6C -00001 0020+00 1/0 0/0 0/0 .data daNpc_ykM_MethodTable */ -SECTION_DATA static void* daNpc_ykM_MethodTable[8] = { - (void*)daNpc_ykM_Create__FPv, - (void*)daNpc_ykM_Delete__FPv, - (void*)daNpc_ykM_Execute__FPv, - (void*)daNpc_ykM_IsDelete__FPv, - (void*)daNpc_ykM_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_ykM_MethodTable = { + (process_method_func)daNpc_ykM_Create__FPv, + (process_method_func)daNpc_ykM_Delete__FPv, + (process_method_func)daNpc_ykM_Execute__FPv, + (process_method_func)daNpc_ykM_IsDelete__FPv, + (process_method_func)daNpc_ykM_Draw__FPv, }; /* 80B5EB6C-80B5EB9C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YKM */ -SECTION_DATA extern void* g_profile_NPC_YKM[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027B0000, (void*)&g_fpcLf_Method, - (void*)0x0000158C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017C0000, (void*)&daNpc_ykM_MethodTable, - (void*)0x00040107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YKM = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YKM, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_ykM_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 380, // mPriority + &daNpc_ykM_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B5EB9C-80B5EBA8 0010B4 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1910,7 +1369,8 @@ asm void daNpc_ykM_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__15J3DTevKColorAnmFv.s" } @@ -1920,7 +1380,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__15J3DTevKColorAnmFv.s" } @@ -1930,7 +1391,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__14J3DTevColorAnmFv.s" } @@ -1940,7 +1402,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__14J3DTevColorAnmFv.s" } @@ -1950,7 +1413,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__11J3DTexNoAnmFv.s" } @@ -1960,7 +1424,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__11J3DTexNoAnmFv.s" } @@ -1970,7 +1435,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__12J3DTexMtxAnmFv.s" } @@ -1980,7 +1446,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__12J3DTexMtxAnmFv.s" } @@ -1990,7 +1457,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__14J3DMatColorAnmFv.s" } @@ -2000,7 +1468,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__14J3DMatColorAnmFv.s" } @@ -2231,7 +1700,8 @@ asm void daNpc_ykM_c::setParam() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::getDistTable(int param_0) { +// asm void dAttention_c::getDistTable(int param_0) { +extern "C" asm void getDistTable__12dAttention_cFi() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/getDistTable__12dAttention_cFi.s" } @@ -3154,7 +2624,8 @@ static bool daNpc_ykM_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/calc__11J3DTexNoAnmCFPUs.s" } @@ -3164,7 +2635,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__10cCcD_GSttsFv.s" } @@ -3174,7 +2646,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__8daNpcT_cFv.s" } @@ -3184,7 +2657,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__4cXyzFv.s" } @@ -3194,7 +2668,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__5csXyzFv.s" } @@ -3204,7 +2679,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::~dCcD_Sph() { +// asm dCcD_Sph::~dCcD_Sph() { +extern "C" asm void __dt__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__8dCcD_SphFv.s" } @@ -3214,7 +2690,8 @@ asm dCcD_Sph::~dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3224,7 +2701,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__13daNpcT_Path_cFv.s" } @@ -3234,7 +2712,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -3244,7 +2723,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_Sph::dCcD_Sph() { +// asm dCcD_Sph::dCcD_Sph() { +extern "C" asm void __ct__8dCcD_SphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__ct__8dCcD_SphFv.s" } @@ -3254,7 +2734,8 @@ asm dCcD_Sph::dCcD_Sph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +extern "C" asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__8cM3dGSphFv.s" } @@ -3264,7 +2745,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__8cM3dGCylFv.s" } @@ -3274,7 +2756,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__8cM3dGAabFv.s" } @@ -3286,18 +2769,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/func_80B5C8B8.s" } #pragma pop /* 80B5CCBC-80B5CCC0 0098BC 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3305,14 +2790,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B5CDBC-80B5CDC0 0099BC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3320,7 +2807,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3330,7 +2818,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__12dBgS_AcchCirFv.s" } @@ -3340,7 +2829,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__10dCcD_GSttsFv.s" } @@ -3350,7 +2840,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__12dBgS_ObjAcchFv.s" } @@ -3360,7 +2851,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/__dt__12J3DFrameCtrlFv.s" } @@ -3370,8 +2862,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3381,14 +2874,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B5D2B0-80B5D2B4 009EB0 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -3404,23 +2899,27 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B5D2C4-80B5D2CC 009EC4 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B5D2CC-80B5D2D4 009ECC 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B5D2D4-80B5D2DC 009ED4 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 80B5D2DC-80B5D2E4 009EDC 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3428,19 +2927,22 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B5D2FC-80B5D300 009EFC 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B5D300-80B5D308 009F00 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3449,7 +2951,8 @@ bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -3460,29 +2963,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B5D368-80B5D36C 009F68 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B5D36C-80B5D370 009F6C 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B5D370-80B5D374 009F70 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B5D374-80B5D378 009F74 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -3751,7 +3259,8 @@ static asm void func_80B5D718() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykm/d_a_npc_ykm/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.cpp b/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.cpp index 79f4dabb0b..376c8b72c0 100644 --- a/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.cpp +++ b/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.cpp @@ -1,510 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_ykw -// +/** + * @file d_a_npc_ykw.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw.h" #include "dol2asm.h" -// -// Types: -// - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B66BFC */ ~cXyz(); - /* 80B672D4 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTag_EvtArea_c { - /* 80B67BC4 */ void chkPointInArea(cXyz); - /* 8048C94C */ void chkPointInArea(cXyz, cXyz); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80145A24 */ void checkEndSequence(); - /* 80B672D8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_ykW_c { - /* 80B5EF0C */ ~daNpc_ykW_c(); - /* 80B5F084 */ void create(); - /* 80B5F34C */ void CreateHeap(); - /* 80B5F784 */ void Delete(); - /* 80B5F7B8 */ void Execute(); - /* 80B5F7D8 */ void Draw(); - /* 80B5F8AC */ void createHeapCallBack(fopAc_ac_c*); - /* 80B5F8CC */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B5F924 */ void srchItemHeart(void*, void*); - /* 80B5F9D8 */ void srchYkw(void*, void*); - /* 80B5FA74 */ void getOtherYkwP(int); - /* 80B5FB50 */ void srchYkm(void*, void*); - /* 80B5FBEC */ void getOtherYkmP(int); - /* 80B5FCC8 */ void getType(); - /* 80B5FD30 */ void isDelete(); - /* 80B5FE6C */ void reset(); - /* 80B601C8 */ void afterJntAnm(int); - /* 80B60290 */ void setParam(); - /* 80B6042C */ void checkChangeEvt(); - /* 80B60520 */ void setAfterTalkMotion(); - /* 80B605C0 */ void srchActors(); - /* 80B60744 */ void evtTalk(); - /* 80B607E4 */ void evtCutProc(); - /* 80B608AC */ void action(); - /* 80B60AFC */ void beforeMove(); - /* 80B60BC0 */ void afterMoved(); - /* 80B60F08 */ void setAttnPos(); - /* 80B614D0 */ void setCollision(); - /* 80B61708 */ bool drawDbgInfo(); - /* 80B61710 */ void selectAction(); - /* 80B61828 */ void chkAction(int (daNpc_ykW_c::*)(void*)); - /* 80B61854 */ void setAction(int (daNpc_ykW_c::*)(void*)); - /* 80B618FC */ void getGoalPos(); - /* 80B61A0C */ void orderGoIntoBossRoomEvt(); - /* 80B61AA4 */ void putUtuwaHeart(cXyz*, f32, f32, s16, cXyz*); - /* 80B61C8C */ void cutShowDoor(int); - /* 80B61E74 */ void cutGoIntoBossRoom(int); - /* 80B62AF8 */ void cutLv5DungeonClear(int); - /* 80B63894 */ void cutFindWolf(int); - /* 80B63AA0 */ void cutStartSnowboardRace(int); - /* 80B63EE0 */ void cutEndSnowboardRace(int); - /* 80B6450C */ void cutHug(int); - /* 80B647E4 */ void setDialogueMotion(); - /* 80B6491C */ void dialogue(); - /* 80B649A8 */ void wait(void*); - /* 80B65278 */ void sitWait(void*); - /* 80B654CC */ void walk(void*); - /* 80B6591C */ void race(void*); - /* 80B6640C */ void talk(void*); - /* 80B67A3C */ daNpc_ykW_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B67B1C */ s32 getEyeballMaterialNo(); - /* 80B67B24 */ s32 getHeadJointNo(); - /* 80B67B2C */ s32 getNeckJointNo(); - /* 80B67B34 */ bool getBackboneJointNo(); - /* 80B67B3C */ void checkChangeJoint(int); - /* 80B67B4C */ void checkRemoveJoint(int); - /* 80B67B5C */ s32 getFootLJointNo(); - /* 80B67B64 */ s32 getFootRJointNo(); - - static void* mCutNameList[8]; - static u8 mCutList[96]; -}; - -struct daNpc_ykW_Param_c { - /* 80B67B6C */ ~daNpc_ykW_Param_c(); - - static u8 const m[180]; -}; - -struct daNpc_ykM_c { - /* 80B547A0 */ void getType(); -}; - -struct daNpcT_pntData_c {}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80B66C38 */ ~csXyz(); - /* 80B671D4 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014A908 */ void setPos(cXyz); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 8014BE2C */ void getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); - /* 80B66874 */ ~daNpcT_c(); - /* 80B66DD0 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B6780C */ void ctrlSubFaceMotion(int); - /* 80B67810 */ bool getEyeballLMaterialNo(); - /* 80B67818 */ bool getEyeballRMaterialNo(); - /* 80B67820 */ bool evtEndProc(); - /* 80B67828 */ bool chkXYItems(); - /* 80B67830 */ void decTmr(); - /* 80B67848 */ void drawOtherMdl(); - /* 80B6784C */ void drawGhost(); - /* 80B67850 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B67858 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B67860 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B67890 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B678C0 */ void changeAnm(int*, int*); - /* 80B678C4 */ void changeBck(int*, int*); - /* 80B678C8 */ void changeBtp(int*, int*); - /* 80B678CC */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; - static u8 mFindActorPtrs[200]; - static u8 mFindCount[4]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80145DD0 */ void setNextIdx(int); - /* 80B677C8 */ void getDstPos(cXyz, cXyz*); - /* 80145E38 */ void getDstPos(cXyz, cXyz*, int); - /* 80145FB4 */ void getDstPosH(cXyz, cXyz*, int, int); - /* 80146188 */ void chkPassed1(cXyz, int); - /* 80B66CBC */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B671D8 */ ~daNpcT_JntAnm_c(); - /* 80B674A4 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B675C0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B66C74 */ ~daNpcT_ActorMngr_c(); - /* 80B66D04 */ daNpcT_ActorMngr_c(); -}; - -struct daItemBase_c { - /* 80037A5C */ void getItemNo(); -}; - -struct dTres_c { - /* 8009C3CC */ void setPosition(int, u8, Vec const*, int); -}; - -struct dTimer_c { - /* 8025DB10 */ void isStart(); -}; - -struct dSv_memBit_c { - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, - csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8, - cXyz const*); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B67320 */ ~dBgS_AcchCir(); -}; - -struct dBgS { - /* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct dPaPo_c { - /* 80050C9C */ void init(dBgS_Acch*, f32, f32); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A4C4 */ void remove(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dMeter2Info_c { - /* 8021C970 */ void setMeterString(s32); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042958 */ void setSkipZev(void*, char*); - /* 8004365C */ void setPt2(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483C4 */ void setGoal(cXyz*); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dDlst_shadowControl_c { - /* 80055F1C */ void addReal(u32, J3DModel*); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); - /* 8002CB9C */ void getTimerNowTimeMs(); - /* 8002CBBC */ void getTimerMode(); - /* 8002CBDC */ void getTimerPtr(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B67390 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B673EC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B66D40 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B66D88 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B6682C */ ~cCcD_GStts(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800744A0 */ void GroundCross(cBgS_GndChk*); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); - /* 802AFB94 */ void bgmStreamPrepare(u32); - /* 802AFE18 */ void bgmStreamPlay(); - /* 802AFEDC */ void bgmStreamStop(u32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B5F670 */ ~J3DTexNoAnm(); - /* 80B5F6B8 */ J3DTexNoAnm(); - /* 80B667FC */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B5F6DC */ ~J3DTexMtxAnm(); - /* 80B5F718 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B5F5C8 */ ~J3DTevKColorAnm(); - /* 80B5F604 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B5F61C */ ~J3DTevColorAnm(); - /* 80B5F658 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B5F730 */ ~J3DMatColorAnm(); - /* 80B5F76C */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B6745C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -638,7 +139,6 @@ extern "C" u8 mCutList__11daNpc_ykW_c[96]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -816,11 +316,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECSquareDistance(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -841,13 +336,7 @@ extern "C" void _restgpr_25(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" void strcmp(); -extern "C" void strcat(); -extern "C" void strcpy(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -858,14 +347,10 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mFindActorPtrs__8daNpcT_c[200]; extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" u8 mFindCount__8daNpcT_c[4]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); extern "C" void getType__11daNpc_ykM_cFv(); @@ -1500,25 +985,30 @@ SECTION_DATA static void* lit_7918[3] = { }; /* 80B68B98-80B68BB8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_ykW_MethodTable */ -SECTION_DATA static void* daNpc_ykW_MethodTable[8] = { - (void*)daNpc_ykW_Create__FPv, - (void*)daNpc_ykW_Delete__FPv, - (void*)daNpc_ykW_Execute__FPv, - (void*)daNpc_ykW_IsDelete__FPv, - (void*)daNpc_ykW_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_ykW_MethodTable = { + (process_method_func)daNpc_ykW_Create__FPv, + (process_method_func)daNpc_ykW_Delete__FPv, + (process_method_func)daNpc_ykW_Execute__FPv, + (process_method_func)daNpc_ykW_IsDelete__FPv, + (process_method_func)daNpc_ykW_Draw__FPv, }; /* 80B68BB8-80B68BE8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YKW */ -SECTION_DATA extern void* g_profile_NPC_YKW[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027C0000, (void*)&g_fpcLf_Method, - (void*)0x00001078, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017D0000, (void*)&daNpc_ykW_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_YKW = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_YKW, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_ykW_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 381, // mPriority + &daNpc_ykW_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B68BE8-80B68BF4 000CA8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1782,7 +1272,8 @@ asm void daNpc_ykW_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__15J3DTevKColorAnmFv.s" } @@ -1792,7 +1283,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__15J3DTevKColorAnmFv.s" } @@ -1802,7 +1294,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__14J3DTevColorAnmFv.s" } @@ -1812,7 +1305,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__14J3DTevColorAnmFv.s" } @@ -1822,7 +1316,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__11J3DTexNoAnmFv.s" } @@ -1832,7 +1327,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__11J3DTexNoAnmFv.s" } @@ -1842,7 +1338,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__12J3DTexMtxAnmFv.s" } @@ -1852,7 +1349,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__12J3DTexMtxAnmFv.s" } @@ -1862,7 +1360,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__14J3DMatColorAnmFv.s" } @@ -1872,7 +1371,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__14J3DMatColorAnmFv.s" } @@ -3017,7 +2517,8 @@ static bool daNpc_ykW_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/calc__11J3DTexNoAnmCFPUs.s" } @@ -3027,7 +2528,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__10cCcD_GSttsFv.s" } @@ -3037,7 +2539,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__8daNpcT_cFv.s" } @@ -3047,7 +2550,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__4cXyzFv.s" } @@ -3057,7 +2561,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__5csXyzFv.s" } @@ -3067,7 +2572,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -3077,7 +2583,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__13daNpcT_Path_cFv.s" } @@ -3087,7 +2594,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { +extern "C" asm void __ct__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__ct__18daNpcT_ActorMngr_cFv.s" } @@ -3097,7 +2605,8 @@ asm daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__8cM3dGCylFv.s" } @@ -3107,7 +2616,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__8cM3dGAabFv.s" } @@ -3119,18 +2629,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/func_80B66DD0.s" } #pragma pop /* 80B671D4-80B671D8 0083B4 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -3138,14 +2650,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B672D4-80B672D8 0084B4 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -3153,7 +2667,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -3163,7 +2678,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__12dBgS_AcchCirFv.s" } @@ -3173,7 +2689,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__10dCcD_GSttsFv.s" } @@ -3183,7 +2700,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__12dBgS_ObjAcchFv.s" } @@ -3193,7 +2711,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/__dt__12J3DFrameCtrlFv.s" } @@ -3203,8 +2722,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -3214,7 +2734,8 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } @@ -3224,36 +2745,42 @@ asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_Path_c::getDstPos(cXyz param_0, cXyz* param_1) { +// asm void daNpcT_Path_c::getDstPos(cXyz param_0, cXyz* param_1) { +extern "C" asm void getDstPos__13daNpcT_Path_cF4cXyzP4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/getDstPos__13daNpcT_Path_cF4cXyzP4cXyz.s" } #pragma pop /* 80B6780C-80B67810 0089EC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } /* 80B67810-80B67818 0089F0 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B67818-80B67820 0089F8 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B67820-80B67828 008A00 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } /* 80B67828-80B67830 008A08 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -3261,30 +2788,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B67848-80B6784C 008A28 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B6784C-80B67850 008A2C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B67850-80B67858 008A30 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B67858-80B67860 008A38 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3293,7 +2825,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -3304,29 +2837,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B678C0-80B678C4 008AA0 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B678C4-80B678C8 008AA4 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B678C8-80B678CC 008AA8 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B678CC-80B678D0 008AAC 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -3476,7 +3014,8 @@ static asm void func_80B67BBC() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +// asm void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { +extern "C" asm void chkPointInArea__15daTag_EvtArea_cF4cXyz() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_ykw/d_a_npc_ykw/chkPointInArea__15daTag_EvtArea_cF4cXyz.s" } diff --git a/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.cpp b/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.cpp index 8425a7fe9d..a5ea9ed9df 100644 --- a/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.cpp +++ b/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.cpp @@ -1,367 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zanb -// +/** + * @file d_a_npc_zanb.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B6B4B0 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_zanB_c { - /* 80B68F2C */ ~daNpc_zanB_c(); - /* 80B6904C */ void create(); - /* 80B69330 */ void CreateHeap(); - /* 80B6975C */ void Delete(); - /* 80B69790 */ void Execute(); - /* 80B697B0 */ void Draw(); - /* 80B69844 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B69864 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B698BC */ void getType(); - /* 80B698DC */ bool isDelete(); - /* 80B698E4 */ void reset(); - /* 80B69A3C */ void afterJntAnm(int); - /* 80B69AC8 */ void checkChangeEvt(); - /* 80B69B7C */ void setParam(); - /* 80B69CA8 */ void setAfterTalkMotion(); - /* 80B69D08 */ void srchActors(); - /* 80B69D0C */ void evtTalk(); - /* 80B69DAC */ void evtCutProc(); - /* 80B69E74 */ void action(); - /* 80B69F60 */ void beforeMove(); - /* 80B69FD8 */ void setAttnPos(); - /* 80B6A268 */ void setCollision(); - /* 80B6A408 */ bool drawDbgInfo(); - /* 80B6A410 */ void drawGhost(); - /* 80B6A47C */ void selectAction(); - /* 80B6A4C4 */ void chkAction(int (daNpc_zanB_c::*)(void*)); - /* 80B6A4F0 */ void setAction(int (daNpc_zanB_c::*)(void*)); - /* 80B6A598 */ void wait(void*); - /* 80B6A874 */ void talk(void*); - /* 80B6BADC */ daNpc_zanB_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B6BC18 */ s32 getEyeballMaterialNo(); - /* 80B6BC20 */ s32 getHeadJointNo(); - /* 80B6BC28 */ s32 getNeckJointNo(); - /* 80B6BC30 */ bool getBackboneJointNo(); - /* 80B6BC38 */ void checkChangeJoint(int); - /* 80B6BC48 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_zanB_Param_c { - /* 80B6BC58 */ ~daNpc_zanB_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80B6AF24 */ ~csXyz(); - /* 80B6B364 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B6AEE8 */ ~cXyz(); - /* 80B6B464 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B6AB60 */ ~daNpcT_c(); - /* 80B6AF60 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B6B9A0 */ void ctrlSubFaceMotion(int); - /* 80B6B9A4 */ s32 getFootLJointNo(); - /* 80B6B9AC */ s32 getFootRJointNo(); - /* 80B6B9B4 */ bool getEyeballLMaterialNo(); - /* 80B6B9BC */ bool getEyeballRMaterialNo(); - /* 80B6B9C4 */ bool evtEndProc(); - /* 80B6B9CC */ void afterMoved(); - /* 80B6B9D0 */ bool chkXYItems(); - /* 80B6B9D8 */ void decTmr(); - /* 80B6B9F0 */ void drawOtherMdl(); - /* 80B6B9F4 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B6B9FC */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B6BA04 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B6BA34 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B6BA64 */ void changeAnm(int*, int*); - /* 80B6BA68 */ void changeBck(int*, int*); - /* 80B6BA6C */ void changeBtp(int*, int*); - /* 80B6BA70 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B6B368 */ ~daNpcT_JntAnm_c(); - /* 80B6B67C */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B6B798 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B6B468 */ ~daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B6B568 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B6B5C4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B6B4F8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B6BB88 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B6BBD0 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B6AB18 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DTexNoAnm { - /* 80B69648 */ ~J3DTexNoAnm(); - /* 80B69690 */ J3DTexNoAnm(); - /* 80B6AAE8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B696B4 */ ~J3DTexMtxAnm(); - /* 80B696F0 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B695A0 */ ~J3DTevKColorAnm(); - /* 80B695DC */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B695F4 */ ~J3DTevColorAnm(); - /* 80B69630 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B69708 */ ~J3DMatColorAnm(); - /* 80B69744 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B6B634 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -469,7 +113,6 @@ extern "C" u8 mCutList__12daNpc_zanB_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -567,10 +210,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -585,8 +224,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -597,10 +234,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -743,25 +376,30 @@ SECTION_DATA static void* lit_4783[3] = { }; /* 80B6BEE0-80B6BF00 -00001 0020+00 1/0 0/0 0/0 .data daNpc_zanB_MethodTable */ -SECTION_DATA static void* daNpc_zanB_MethodTable[8] = { - (void*)daNpc_zanB_Create__FPv, - (void*)daNpc_zanB_Delete__FPv, - (void*)daNpc_zanB_Execute__FPv, - (void*)daNpc_zanB_IsDelete__FPv, - (void*)daNpc_zanB_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_zanB_MethodTable = { + (process_method_func)daNpc_zanB_Create__FPv, + (process_method_func)daNpc_zanB_Delete__FPv, + (process_method_func)daNpc_zanB_Execute__FPv, + (process_method_func)daNpc_zanB_IsDelete__FPv, + (process_method_func)daNpc_zanB_Draw__FPv, }; /* 80B6BF00-80B6BF30 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZANB */ -SECTION_DATA extern void* g_profile_NPC_ZANB[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027D0000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017E0000, (void*)&daNpc_zanB_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZANB = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZANB, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_zanB_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 382, // mPriority + &daNpc_zanB_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B6BF30-80B6BF3C 000160 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1021,7 +659,8 @@ asm void daNpc_zanB_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__15J3DTevKColorAnmFv.s" } @@ -1031,7 +670,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__ct__15J3DTevKColorAnmFv.s" } @@ -1041,7 +681,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__14J3DTevColorAnmFv.s" } @@ -1051,7 +692,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__ct__14J3DTevColorAnmFv.s" } @@ -1061,7 +703,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__11J3DTexNoAnmFv.s" } @@ -1071,7 +714,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__ct__11J3DTexNoAnmFv.s" } @@ -1081,7 +725,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__12J3DTexMtxAnmFv.s" } @@ -1091,7 +736,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__ct__12J3DTexMtxAnmFv.s" } @@ -1101,7 +747,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__14J3DMatColorAnmFv.s" } @@ -1111,7 +758,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__ct__14J3DMatColorAnmFv.s" } @@ -1504,7 +1152,8 @@ static bool daNpc_zanB_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/calc__11J3DTexNoAnmCFPUs.s" } @@ -1514,7 +1163,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__10cCcD_GSttsFv.s" } @@ -1524,7 +1174,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__8daNpcT_cFv.s" } @@ -1534,7 +1185,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__4cXyzFv.s" } @@ -1544,7 +1196,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__5csXyzFv.s" } @@ -1556,18 +1209,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/func_80B6AF60.s" } #pragma pop /* 80B6B364-80B6B368 002524 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1575,14 +1230,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B6B464-80B6B468 002624 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1590,7 +1247,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1600,7 +1258,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1610,7 +1269,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__12dBgS_AcchCirFv.s" } @@ -1620,7 +1280,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__10dCcD_GSttsFv.s" } @@ -1630,7 +1291,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__12dBgS_ObjAcchFv.s" } @@ -1640,7 +1302,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__12J3DFrameCtrlFv.s" } @@ -1650,8 +1313,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1661,14 +1325,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B6B9A0-80B6B9A4 002B60 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1684,18 +1350,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B6B9B4-80B6B9BC 002B74 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B6B9BC-80B6B9C4 002B7C 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80B6B9C4-80B6B9CC 002B84 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1705,7 +1374,8 @@ void daNpcT_c::afterMoved() { } /* 80B6B9D0-80B6B9D8 002B90 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1713,25 +1383,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B6B9F0-80B6B9F4 002BB0 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B6B9F4-80B6B9FC 002BB4 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B6B9FC-80B6BA04 002BBC 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1740,7 +1414,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1751,29 +1426,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B6BA64-80B6BA68 002C24 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6BA68-80B6BA6C 002C28 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6BA6C-80B6BA70 002C2C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6BA70-80B6BA74 002C30 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1827,7 +1507,8 @@ asm daNpc_zanB_c::daNpc_zanB_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__8cM3dGCylFv.s" } @@ -1837,7 +1518,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zanb/d_a_npc_zanb/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.cpp b/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.cpp index bca8d6a637..71af5279f0 100644 --- a/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.cpp +++ b/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.cpp @@ -1,327 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zant -// +/** + * @file d_a_npc_zant.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zant/d_a_npc_zant.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111C0 */ void entryDL(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B6E19C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Zant_c { - /* 80B6C1AC */ ~daNpc_Zant_c(); - /* 80B6C2D0 */ void create(); - /* 80B6C574 */ void CreateHeap(); - /* 80B6C700 */ void Delete(); - /* 80B6C734 */ void Execute(); - /* 80B6C754 */ void Draw(); - /* 80B6C7E8 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B6C808 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B6C860 */ void getType(); - /* 80B6C880 */ void getFlowNodeNo(); - /* 80B6C89C */ void isDelete(); - /* 80B6C8CC */ void reset(); - /* 80B6C9F0 */ void afterJntAnm(int); - /* 80B6C9F4 */ void setParam(); - /* 80B6CAF0 */ void setAfterTalkMotion(); - /* 80B6CB50 */ void srchActors(); - /* 80B6CB54 */ void evtTalk(); - /* 80B6CC54 */ void evtCutProc(); - /* 80B6CD1C */ void action(); - /* 80B6CE08 */ void beforeMove(); - /* 80B6CE80 */ void setAttnPos(); - /* 80B6D074 */ void setCollision(); - /* 80B6D1A8 */ bool drawDbgInfo(); - /* 80B6D1B0 */ void drawGhost(); - /* 80B6D21C */ void selectAction(); - /* 80B6D264 */ void chkAction(int (daNpc_Zant_c::*)(void*)); - /* 80B6D290 */ void setAction(int (daNpc_Zant_c::*)(void*)); - /* 80B6D338 */ void wait(void*); - /* 80B6D584 */ void talk(void*); - /* 80B6E800 */ daNpc_Zant_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Zant_Param_c { - /* 80B6E93C */ ~daNpc_Zant_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B6DBD4 */ ~cXyz(); - /* 80B6E150 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 801490D4 */ void ctrlBtk(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B6D84C */ ~daNpcT_c(); - /* 80B6DC4C */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B6E368 */ bool getEyeballMaterialNo(); - /* 80B6E694 */ s32 getHeadJointNo(); - /* 80B6E69C */ s32 getNeckJointNo(); - /* 80B6E6A4 */ s32 getBackboneJointNo(); - /* 80B6E6AC */ void ctrlSubFaceMotion(int); - /* 80B6E6B0 */ bool checkChangeJoint(int); - /* 80B6E6B8 */ bool checkRemoveJoint(int); - /* 80B6E6C0 */ s32 getFootLJointNo(); - /* 80B6E6C8 */ s32 getFootRJointNo(); - /* 80B6E6D0 */ bool getEyeballLMaterialNo(); - /* 80B6E6D8 */ bool getEyeballRMaterialNo(); - /* 80B6E6E0 */ bool checkChangeEvt(); - /* 80B6E6E8 */ bool evtEndProc(); - /* 80B6E6F0 */ void afterMoved(); - /* 80B6E6F4 */ bool chkXYItems(); - /* 80B6E6FC */ void decTmr(); - /* 80B6E714 */ void drawOtherMdl(); - /* 80B6E718 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B6E720 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B6E728 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B6E758 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B6E788 */ void changeAnm(int*, int*); - /* 80B6E78C */ void changeBck(int*, int*); - /* 80B6E790 */ void changeBtp(int*, int*); - /* 80B6E794 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B6E054 */ ~daNpcT_JntAnm_c(); - /* 80B6E370 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B6E48C */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B6E154 */ ~daNpcT_ActorMngr_c(); -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B6E254 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B6E2B0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B6E1E4 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B6DC10 */ ~csXyz(); - /* 80B6E050 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B6E8AC */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B6E8F4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B6D804 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B6E320 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -419,7 +103,6 @@ extern "C" u8 mCutList__12daNpc_Zant_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); extern "C" void entryDL__16mDoExt_McaMorfSOFv(); @@ -510,7 +193,6 @@ extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -525,8 +207,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -534,10 +214,6 @@ extern "C" extern void* __vt__8daNpcT_c[49]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -670,25 +346,30 @@ SECTION_DATA static void* lit_4675[3] = { }; /* 80B6EB6C-80B6EB8C -00001 0020+00 1/0 0/0 0/0 .data daNpc_Zant_MethodTable */ -SECTION_DATA static void* daNpc_Zant_MethodTable[8] = { - (void*)daNpc_Zant_Create__FPv, - (void*)daNpc_Zant_Delete__FPv, - (void*)daNpc_Zant_Execute__FPv, - (void*)daNpc_Zant_IsDelete__FPv, - (void*)daNpc_Zant_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Zant_MethodTable = { + (process_method_func)daNpc_Zant_Create__FPv, + (process_method_func)daNpc_Zant_Delete__FPv, + (process_method_func)daNpc_Zant_Execute__FPv, + (process_method_func)daNpc_Zant_IsDelete__FPv, + (process_method_func)daNpc_Zant_Draw__FPv, }; /* 80B6EB8C-80B6EBBC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZANT */ -SECTION_DATA extern void* g_profile_NPC_ZANT[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027E0000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x017F0000, (void*)&daNpc_Zant_MethodTable, - (void*)0x00044107, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZANT = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZANT, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Zant_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 383, // mPriority + &daNpc_Zant_MethodTable, // sub_method + 0x00044107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B6EBBC-80B6EBC8 000128 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ @@ -1245,7 +926,8 @@ static bool daNpc_Zant_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__10cCcD_GSttsFv.s" } @@ -1255,7 +937,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__8daNpcT_cFv.s" } @@ -1265,7 +948,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__4cXyzFv.s" } @@ -1275,7 +959,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__5csXyzFv.s" } @@ -1287,18 +972,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/func_80B6DC4C.s" } #pragma pop /* 80B6E050-80B6E054 001F90 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1306,14 +993,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B6E150-80B6E154 002090 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1321,7 +1010,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1331,7 +1021,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1341,7 +1032,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__12dBgS_AcchCirFv.s" } @@ -1351,7 +1043,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__10dCcD_GSttsFv.s" } @@ -1361,7 +1054,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__12dBgS_ObjAcchFv.s" } @@ -1371,7 +1065,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__12J3DFrameCtrlFv.s" } @@ -1387,8 +1082,9 @@ bool daNpcT_c::getEyeballMaterialNo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1426,7 +1122,8 @@ COMPILER_STRIP_GATE(0x80B6EA78, &lit_4621); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } @@ -1448,7 +1145,8 @@ s32 daNpcT_c::getBackboneJointNo() { } /* 80B6E6AC-80B6E6B0 0025EC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1474,13 +1172,15 @@ s32 daNpcT_c::getFootRJointNo() { /* 80B6E6D0-80B6E6D8 002610 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80B6E6D8-80B6E6E0 002618 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } @@ -1490,7 +1190,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80B6E6E8-80B6E6F0 002628 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1500,7 +1201,8 @@ void daNpcT_c::afterMoved() { } /* 80B6E6F4-80B6E6FC 002634 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1508,25 +1210,29 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B6E714-80B6E718 002654 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B6E718-80B6E720 002658 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B6E720-80B6E728 002660 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1535,7 +1241,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1546,29 +1253,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B6E788-80B6E78C 0026C8 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6E78C-80B6E790 0026CC 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6E790-80B6E794 0026D0 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B6E794-80B6E798 0026D4 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1622,7 +1334,8 @@ asm daNpc_Zant_c::daNpc_Zant_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__8cM3dGCylFv.s" } @@ -1632,7 +1345,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zant/d_a_npc_zant/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.cpp b/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.cpp index 81c990b145..a64733b3d6 100644 --- a/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.cpp +++ b/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.cpp @@ -1,369 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zelR -// +/** + * @file d_a_npc_zelR.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B7133C */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_ZelR_c { - /* 80B6EE2C */ ~daNpc_ZelR_c(); - /* 80B6EF64 */ void create(); - /* 80B6F1F8 */ void CreateHeap(); - /* 80B6F664 */ void Delete(); - /* 80B6F698 */ void Execute(); - /* 80B6F6B8 */ void Draw(); - /* 80B6F77C */ void createHeapCallBack(fopAc_ac_c*); - /* 80B6F79C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B6F7F4 */ void getType(); - /* 80B6F814 */ void getFlowNodeNo(); - /* 80B6F830 */ void getPath(); - /* 80B6F83C */ void isDelete(); - /* 80B6F894 */ void reset(); - /* 80B6FA10 */ void afterJntAnm(int); - /* 80B6FA9C */ void ctrlBtk(); - /* 80B6FBA8 */ void setParam(); - /* 80B6FC9C */ void setAfterTalkMotion(); - /* 80B6FCFC */ void srchActors(); - /* 80B6FD00 */ void evtTalk(); - /* 80B6FE00 */ void evtCutProc(); - /* 80B6FEC8 */ void action(); - /* 80B70018 */ void beforeMove(); - /* 80B70090 */ void setAttnPos(); - /* 80B702B0 */ void setCollision(); - /* 80B703E0 */ bool drawDbgInfo(); - /* 80B703E8 */ void selectAction(); - /* 80B70430 */ void chkAction(int (daNpc_ZelR_c::*)(void*)); - /* 80B7045C */ void setAction(int (daNpc_ZelR_c::*)(void*)); - /* 80B70504 */ void wait(void*); - /* 80B706B0 */ void talk(void*); - /* 80B71974 */ daNpc_ZelR_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B71A34 */ s32 getEyeballRMaterialNo(); - /* 80B71A3C */ s32 getEyeballLMaterialNo(); - /* 80B71A44 */ s32 getHeadJointNo(); - /* 80B71A4C */ bool getBackboneJointNo(); - /* 80B71A54 */ void checkChangeJoint(int); - /* 80B71A64 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_ZelR_Param_c { - /* 80B71A74 */ ~daNpc_ZelR_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B70C9C */ ~cXyz(); - /* 80B712F0 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B70914 */ ~daNpcT_c(); - /* 80B70DEC */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B7182C */ s32 getNeckJointNo(); - /* 80B71834 */ void ctrlSubFaceMotion(int); - /* 80B71838 */ s32 getFootLJointNo(); - /* 80B71840 */ s32 getFootRJointNo(); - /* 80B71848 */ bool getEyeballMaterialNo(); - /* 80B71850 */ bool checkChangeEvt(); - /* 80B71858 */ bool evtEndProc(); - /* 80B71860 */ void afterMoved(); - /* 80B71864 */ bool chkXYItems(); - /* 80B7186C */ void decTmr(); - /* 80B71884 */ void drawOtherMdl(); - /* 80B71888 */ void drawGhost(); - /* 80B7188C */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B71894 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B7189C */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B718CC */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B718FC */ void changeAnm(int*, int*); - /* 80B71900 */ void changeBck(int*, int*); - /* 80B71904 */ void changeBtp(int*, int*); - /* 80B71908 */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80B70D14 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B711F4 */ ~daNpcT_JntAnm_c(); - /* 80B71508 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B71624 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80B712F4 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B713F4 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B71450 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B71384 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B70CD8 */ ~csXyz(); - /* 80B711F0 */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B70D5C */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B70DA4 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B708CC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B6F550 */ ~J3DTexNoAnm(); - /* 80B6F598 */ J3DTexNoAnm(); - /* 80B7089C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B6F5BC */ ~J3DTexMtxAnm(); - /* 80B6F5F8 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B6F4A8 */ ~J3DTevKColorAnm(); - /* 80B6F4E4 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B6F4FC */ ~J3DTevColorAnm(); - /* 80B6F538 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B6F610 */ ~J3DMatColorAnm(); - /* 80B6F64C */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B714C0 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -475,7 +117,6 @@ extern "C" u8 mCutList__12daNpc_ZelR_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -570,9 +211,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -587,8 +225,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -599,10 +235,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -738,25 +371,30 @@ SECTION_DATA static void* lit_4842[3] = { }; /* 80B71CDC-80B71CFC -00001 0020+00 1/0 0/0 0/0 .data daNpc_ZelR_MethodTable */ -SECTION_DATA static void* daNpc_ZelR_MethodTable[8] = { - (void*)daNpc_ZelR_Create__FPv, - (void*)daNpc_ZelR_Delete__FPv, - (void*)daNpc_ZelR_Execute__FPv, - (void*)daNpc_ZelR_IsDelete__FPv, - (void*)daNpc_ZelR_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_ZelR_MethodTable = { + (process_method_func)daNpc_ZelR_Create__FPv, + (process_method_func)daNpc_ZelR_Delete__FPv, + (process_method_func)daNpc_ZelR_Execute__FPv, + (process_method_func)daNpc_ZelR_IsDelete__FPv, + (process_method_func)daNpc_ZelR_Draw__FPv, }; /* 80B71CFC-80B71D2C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZELR */ -SECTION_DATA extern void* g_profile_NPC_ZELR[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02800000, (void*)&g_fpcLf_Method, - (void*)0x00000FC8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01810000, (void*)&daNpc_ZelR_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZELR = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZELR, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_ZelR_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 385, // mPriority + &daNpc_ZelR_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B71D2C-80B71D38 000154 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1004,7 +642,8 @@ asm void daNpc_ZelR_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__15J3DTevKColorAnmFv.s" } @@ -1014,7 +653,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__ct__15J3DTevKColorAnmFv.s" } @@ -1024,7 +664,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__14J3DTevColorAnmFv.s" } @@ -1034,7 +675,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__ct__14J3DTevColorAnmFv.s" } @@ -1044,7 +686,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__11J3DTexNoAnmFv.s" } @@ -1054,7 +697,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__ct__11J3DTexNoAnmFv.s" } @@ -1064,7 +708,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__12J3DTexMtxAnmFv.s" } @@ -1074,7 +719,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__ct__12J3DTexMtxAnmFv.s" } @@ -1084,7 +730,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__14J3DMatColorAnmFv.s" } @@ -1094,7 +741,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__ct__14J3DMatColorAnmFv.s" } @@ -1458,7 +1106,8 @@ static bool daNpc_ZelR_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/calc__11J3DTexNoAnmCFPUs.s" } @@ -1468,7 +1117,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__10cCcD_GSttsFv.s" } @@ -1478,7 +1128,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__8daNpcT_cFv.s" } @@ -1488,7 +1139,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__4cXyzFv.s" } @@ -1498,7 +1150,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__5csXyzFv.s" } @@ -1508,7 +1161,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__13daNpcT_Path_cFv.s" } @@ -1518,7 +1172,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__8cM3dGCylFv.s" } @@ -1528,7 +1183,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__8cM3dGAabFv.s" } @@ -1540,18 +1196,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/func_80B70DEC.s" } #pragma pop /* 80B711F0-80B711F4 0024B0 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1559,14 +1217,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B712F0-80B712F4 0025B0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1574,7 +1234,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1584,7 +1245,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1594,7 +1256,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__12dBgS_AcchCirFv.s" } @@ -1604,7 +1267,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__10dCcD_GSttsFv.s" } @@ -1614,7 +1278,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__12dBgS_ObjAcchFv.s" } @@ -1624,7 +1289,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/__dt__12J3DFrameCtrlFv.s" } @@ -1634,8 +1300,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1673,7 +1340,8 @@ COMPILER_STRIP_GATE(0x80B71BB8, &lit_4792); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } @@ -1685,7 +1353,8 @@ s32 daNpcT_c::getNeckJointNo() { } /* 80B71834-80B71838 002AF4 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1711,7 +1380,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80B71858-80B71860 002B18 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1721,7 +1391,8 @@ void daNpcT_c::afterMoved() { } /* 80B71864-80B7186C 002B24 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1729,30 +1400,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B71884-80B71888 002B44 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B71888-80B7188C 002B48 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B7188C-80B71894 002B4C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B71894-80B7189C 002B54 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1761,7 +1437,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1772,29 +1449,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelR/d_a_npc_zelR/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B718FC-80B71900 002BBC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B71900-80B71904 002BC0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B71904-80B71908 002BC4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B71908-80B7190C 002BC8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.cpp b/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.cpp index 4e08eaba7d..3dd86ffa12 100644 --- a/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.cpp +++ b/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.cpp @@ -1,369 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zelRo -// +/** + * @file d_a_npc_zelRo.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B744B8 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_ZelRo_c { - /* 80B71FAC */ ~daNpc_ZelRo_c(); - /* 80B720E4 */ void create(); - /* 80B72378 */ void CreateHeap(); - /* 80B727E4 */ void Delete(); - /* 80B72818 */ void Execute(); - /* 80B72838 */ void Draw(); - /* 80B728FC */ void createHeapCallBack(fopAc_ac_c*); - /* 80B7291C */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B72974 */ void getType(); - /* 80B72994 */ void getFlowNodeNo(); - /* 80B729B0 */ void getPath(); - /* 80B729BC */ void isDelete(); - /* 80B72A10 */ void reset(); - /* 80B72B8C */ void afterJntAnm(int); - /* 80B72C18 */ void ctrlBtk(); - /* 80B72D24 */ void setParam(); - /* 80B72E18 */ void setAfterTalkMotion(); - /* 80B72E78 */ void srchActors(); - /* 80B72E7C */ void evtTalk(); - /* 80B72F7C */ void evtCutProc(); - /* 80B73044 */ void action(); - /* 80B73194 */ void beforeMove(); - /* 80B7320C */ void setAttnPos(); - /* 80B7342C */ void setCollision(); - /* 80B7355C */ bool drawDbgInfo(); - /* 80B73564 */ void selectAction(); - /* 80B735AC */ void chkAction(int (daNpc_ZelRo_c::*)(void*)); - /* 80B735D8 */ void setAction(int (daNpc_ZelRo_c::*)(void*)); - /* 80B73680 */ void wait(void*); - /* 80B7382C */ void talk(void*); - /* 80B74AE8 */ daNpc_ZelRo_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B74BA8 */ s32 getEyeballRMaterialNo(); - /* 80B74BB0 */ s32 getEyeballLMaterialNo(); - /* 80B74BB8 */ s32 getHeadJointNo(); - /* 80B74BC0 */ s32 getNeckJointNo(); - /* 80B74BC8 */ bool getBackboneJointNo(); - /* 80B74BD0 */ void checkChangeJoint(int); - /* 80B74BE0 */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_ZelRo_Param_c { - /* 80B74BF0 */ ~daNpc_ZelRo_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B73E18 */ ~cXyz(); - /* 80B7446C */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014AA40 */ void hitChk(dCcD_GObjInf*, u32); - /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B73A90 */ ~daNpcT_c(); - /* 80B73F68 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B749A8 */ void ctrlSubFaceMotion(int); - /* 80B749AC */ s32 getFootLJointNo(); - /* 80B749B4 */ s32 getFootRJointNo(); - /* 80B749BC */ bool getEyeballMaterialNo(); - /* 80B749C4 */ bool checkChangeEvt(); - /* 80B749CC */ bool evtEndProc(); - /* 80B749D4 */ void afterMoved(); - /* 80B749D8 */ bool chkXYItems(); - /* 80B749E0 */ void decTmr(); - /* 80B749F8 */ void drawOtherMdl(); - /* 80B749FC */ void drawGhost(); - /* 80B74A00 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B74A08 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B74A10 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B74A40 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B74A70 */ void changeAnm(int*, int*); - /* 80B74A74 */ void changeBck(int*, int*); - /* 80B74A78 */ void changeBtp(int*, int*); - /* 80B74A7C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_Path_c { - /* 80145C40 */ void initialize(); - /* 80145C74 */ void setPathInfo(u8, s8, u8); - /* 80B73E90 */ ~daNpcT_Path_c(); -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B74370 */ ~daNpcT_JntAnm_c(); - /* 80B74684 */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B747A0 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80B74470 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B74570 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B745CC */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B74500 */ ~dBgS_AcchCir(); -}; - -struct csXyz { - /* 80B73E54 */ ~csXyz(); - /* 80B7436C */ csXyz(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B73ED8 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B73F20 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B73A48 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B726D0 */ ~J3DTexNoAnm(); - /* 80B72718 */ J3DTexNoAnm(); - /* 80B73A18 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B7273C */ ~J3DTexMtxAnm(); - /* 80B72778 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B72628 */ ~J3DTevKColorAnm(); - /* 80B72664 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B7267C */ ~J3DTevColorAnm(); - /* 80B726B8 */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B72790 */ ~J3DMatColorAnm(); - /* 80B727CC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B7463C */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -475,7 +117,6 @@ extern "C" u8 mCutList__13daNpc_ZelRo_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); extern "C" void @@ -570,9 +211,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -587,8 +225,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -599,10 +235,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -738,25 +371,30 @@ SECTION_DATA static void* lit_4842[3] = { }; /* 80B74E5C-80B74E7C -00001 0020+00 1/0 0/0 0/0 .data daNpc_ZelRo_MethodTable */ -SECTION_DATA static void* daNpc_ZelRo_MethodTable[8] = { - (void*)daNpc_ZelRo_Create__FPv, - (void*)daNpc_ZelRo_Delete__FPv, - (void*)daNpc_ZelRo_Execute__FPv, - (void*)daNpc_ZelRo_IsDelete__FPv, - (void*)daNpc_ZelRo_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_ZelRo_MethodTable = { + (process_method_func)daNpc_ZelRo_Create__FPv, + (process_method_func)daNpc_ZelRo_Delete__FPv, + (process_method_func)daNpc_ZelRo_Execute__FPv, + (process_method_func)daNpc_ZelRo_IsDelete__FPv, + (process_method_func)daNpc_ZelRo_Draw__FPv, }; /* 80B74E7C-80B74EAC -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZELRO */ -SECTION_DATA extern void* g_profile_NPC_ZELRO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02810000, (void*)&g_fpcLf_Method, - (void*)0x00000FC8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01820000, (void*)&daNpc_ZelRo_MethodTable, - (void*)0x00044108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZELRO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZELRO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_ZelRo_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 386, // mPriority + &daNpc_ZelRo_MethodTable, // sub_method + 0x00044108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B74EAC-80B74EB8 000154 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1004,7 +642,8 @@ asm void daNpc_ZelRo_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__15J3DTevKColorAnmFv.s" } @@ -1014,7 +653,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__ct__15J3DTevKColorAnmFv.s" } @@ -1024,7 +664,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__14J3DTevColorAnmFv.s" } @@ -1034,7 +675,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__ct__14J3DTevColorAnmFv.s" } @@ -1044,7 +686,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__11J3DTexNoAnmFv.s" } @@ -1054,7 +697,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__ct__11J3DTexNoAnmFv.s" } @@ -1064,7 +708,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__12J3DTexMtxAnmFv.s" } @@ -1074,7 +719,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__ct__12J3DTexMtxAnmFv.s" } @@ -1084,7 +730,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__14J3DMatColorAnmFv.s" } @@ -1094,7 +741,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__ct__14J3DMatColorAnmFv.s" } @@ -1458,7 +1106,8 @@ static bool daNpc_ZelRo_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/calc__11J3DTexNoAnmCFPUs.s" } @@ -1468,7 +1117,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__10cCcD_GSttsFv.s" } @@ -1478,7 +1128,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__8daNpcT_cFv.s" } @@ -1488,7 +1139,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__4cXyzFv.s" } @@ -1498,7 +1150,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__5csXyzFv.s" } @@ -1508,7 +1161,8 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_Path_c::~daNpcT_Path_c() { +// asm daNpcT_Path_c::~daNpcT_Path_c() { +extern "C" asm void __dt__13daNpcT_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__13daNpcT_Path_cFv.s" } @@ -1518,7 +1172,8 @@ asm daNpcT_Path_c::~daNpcT_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__8cM3dGCylFv.s" } @@ -1528,7 +1183,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__8cM3dGAabFv.s" } @@ -1540,18 +1196,20 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/func_80B73F68.s" } #pragma pop /* 80B7436C-80B74370 0024AC 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1559,14 +1217,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B7446C-80B74470 0025AC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1574,7 +1234,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1584,7 +1245,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1594,7 +1256,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__12dBgS_AcchCirFv.s" } @@ -1604,7 +1267,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__10dCcD_GSttsFv.s" } @@ -1614,7 +1278,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__12dBgS_ObjAcchFv.s" } @@ -1624,7 +1289,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/__dt__12J3DFrameCtrlFv.s" } @@ -1634,8 +1300,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1673,14 +1340,16 @@ COMPILER_STRIP_GATE(0x80B74D34, &lit_4792); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B749A8-80B749AC 002AE8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1706,7 +1375,8 @@ bool daNpcT_c::checkChangeEvt() { } /* 80B749CC-80B749D4 002B0C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1716,7 +1386,8 @@ void daNpcT_c::afterMoved() { } /* 80B749D8-80B749E0 002B18 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1724,30 +1395,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B749F8-80B749FC 002B38 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B749FC-80B74A00 002B3C 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B74A00-80B74A08 002B40 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B74A08-80B74A10 002B48 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1756,7 +1432,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1767,29 +1444,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelRo/d_a_npc_zelRo/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B74A70-80B74A74 002BB0 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B74A74-80B74A78 002BB4 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B74A78-80B74A7C 002BB8 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B74A7C-80B74A80 002BBC 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.cpp b/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.cpp index 4795bdb5b3..e74ffaf62c 100644 --- a/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.cpp +++ b/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.cpp @@ -1,363 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zelda -// +/** + * @file d_a_npc_zelda.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daNpcT_faceMotionAnmData_c {}; - -struct daNpcT_MotionSeqMngr_c { - struct sequenceStepData_c {}; - - /* 80145898 */ void initialize(); - /* 80B777B0 */ ~daNpcT_MotionSeqMngr_c(); -}; - -struct daNpcT_evtData_c {}; - -struct daNpcT_motionAnmData_c {}; - -struct J3DJoint {}; - -struct daNpc_Zelda_c { - /* 80B7512C */ ~daNpc_Zelda_c(); - /* 80B7524C */ void create(); - /* 80B75530 */ void CreateHeap(); - /* 80B75978 */ void Delete(); - /* 80B759AC */ void Execute(); - /* 80B759CC */ void Draw(); - /* 80B75A90 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B75AB0 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B75B08 */ void getType(); - /* 80B75B28 */ bool isDelete(); - /* 80B75B30 */ void reset(); - /* 80B75C9C */ void afterJntAnm(int); - /* 80B75D28 */ void ctrlBtk(); - /* 80B75E34 */ void checkChangeEvt(); - /* 80B75EE8 */ void setParam(); - /* 80B76014 */ void setAfterTalkMotion(); - /* 80B76074 */ void srchActors(); - /* 80B76078 */ void evtTalk(); - /* 80B76118 */ void evtCutProc(); - /* 80B761E0 */ void action(); - /* 80B762CC */ void beforeMove(); - /* 80B76344 */ void setAttnPos(); - /* 80B765D4 */ void setCollision(); - /* 80B76774 */ bool drawDbgInfo(); - /* 80B7677C */ void selectAction(); - /* 80B767C4 */ void chkAction(int (daNpc_Zelda_c::*)(void*)); - /* 80B767F0 */ void setAction(int (daNpc_Zelda_c::*)(void*)); - /* 80B76898 */ void wait(void*); - /* 80B76B74 */ void talk(void*); - /* 80B77DD8 */ daNpc_Zelda_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B77F14 */ s32 getEyeballRMaterialNo(); - /* 80B77F1C */ s32 getEyeballLMaterialNo(); - /* 80B77F24 */ s32 getHeadJointNo(); - /* 80B77F2C */ s32 getNeckJointNo(); - /* 80B77F34 */ bool getBackboneJointNo(); - /* 80B77F3C */ void checkChangeJoint(int); - /* 80B77F4C */ void checkRemoveJoint(int); - - static void* mCutNameList; - static u8 mCutList[12]; -}; - -struct daNpc_Zelda_Param_c { - /* 80B77F5C */ ~daNpc_Zelda_Param_c(); - - static u8 const m[140]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct csXyz { - /* 80B77224 */ ~csXyz(); - /* 80B77664 */ csXyz(); -}; - -struct _GXColorS10 {}; - -struct J3DModel {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B771E8 */ ~cXyz(); - /* 80B77764 */ cXyz(); -}; - -struct daNpcT_c { - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 801483F8 */ void loadRes(s8 const*, char const**); - /* 801484AC */ void deleteRes(s8 const*, char const**); - /* 8014852C */ void execute(); - /* 8014886C */ void draw(int, int, f32, _GXColorS10*, f32, int, int, int); - /* 80148C70 */ void setEnvTevColor(); - /* 80148CCC */ void setRoomNo(); - /* 80149190 */ void setMtx(); - /* 8014951C */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 8014997C */ void evtProc(); - /* 80149BB4 */ void setFootPos(); - /* 80149D7C */ void setFootPrtcl(cXyz*, f32, f32); - /* 8014A05C */ bool checkCullDraw(); - /* 8014A064 */ void twilight(); - /* 8014A0B0 */ void evtOrder(); - /* 8014A224 */ void evtChange(); - /* 8014A324 */ void clrParam(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); - /* 8014A628 */ void setMotionAnm(int, f32, int); - /* 8014AA18 */ void setAngle(s16); - /* 8014A99C */ void setAngle(csXyz); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014B338 */ void srchPlayerActor(); - /* 8014B648 */ void step(s16, int, int, int, int); - /* 8014BBF0 */ void initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); - /* 80B76E60 */ ~daNpcT_c(); - /* 80B77260 */ daNpcT_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, - daNpcT_evtData_c const*, char**); - /* 80B77CA0 */ void ctrlSubFaceMotion(int); - /* 80B77CA4 */ s32 getFootLJointNo(); - /* 80B77CAC */ s32 getFootRJointNo(); - /* 80B77CB4 */ bool getEyeballMaterialNo(); - /* 80B77CBC */ bool evtEndProc(); - /* 80B77CC4 */ void afterMoved(); - /* 80B77CC8 */ bool chkXYItems(); - /* 80B77CD0 */ void decTmr(); - /* 80B77CE8 */ void drawOtherMdl(); - /* 80B77CEC */ void drawGhost(); - /* 80B77CF0 */ bool afterSetFaceMotionAnm(int, int, f32, int); - /* 80B77CF8 */ bool afterSetMotionAnm(int, int, f32, int); - /* 80B77D00 */ void getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 80B77D30 */ void getMotionAnm(daNpcT_motionAnmData_c); - /* 80B77D60 */ void changeAnm(int*, int*); - /* 80B77D64 */ void changeBck(int*, int*); - /* 80B77D68 */ void changeBtp(int*, int*); - /* 80B77D6C */ void changeBtk(int*, int*); - - static u8 mCcDCyl[68]; -}; - -struct daNpcT_MatAnm_c { - /* 80145764 */ void initialize(); -}; - -struct daNpcT_JntAnm_c { - /* 80146C98 */ void initialize(); - /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32, - f32, f32, f32, f32, f32, f32, cXyz*); - /* 80147C38 */ void calcJntRad(f32, f32, f32); - /* 80B77668 */ ~daNpcT_JntAnm_c(); - /* 80B7797C */ void setEyeAngleY(cXyz, s16, int, f32, s16); - /* 80B77A98 */ void setEyeAngleX(cXyz, f32, s16); -}; - -struct daNpcT_DmgStagger_c { - /* 80147E3C */ void calc(int); -}; - -struct daNpcT_ActorMngr_c { - /* 801456D4 */ void initialize(); - /* 801456E0 */ void entry(fopAc_ac_c*); - /* 801456FC */ void remove(); - /* 80145708 */ void getActorP(); - /* 80B77768 */ ~daNpcT_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B77868 */ ~dCcD_GStts(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B778C4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80B777F8 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B77E84 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B77ECC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B76E18 */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B75864 */ ~J3DTexNoAnm(); - /* 80B758AC */ J3DTexNoAnm(); - /* 80B76DE8 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B758D0 */ ~J3DTexMtxAnm(); - /* 80B7590C */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B757BC */ ~J3DTevKColorAnm(); - /* 80B757F8 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B75810 */ ~J3DTevColorAnm(); - /* 80B7584C */ J3DTevColorAnm(); -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B75924 */ ~J3DMatColorAnm(); - /* 80B75960 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B77934 */ ~J3DFrameCtrl(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - // // Forward References: // @@ -466,7 +114,6 @@ extern "C" u8 mCutList__13daNpc_Zelda_c[12]; // External References: // -SECTION_INIT void memset(); extern "C" void mDoMtx_YrotS__FPA4_fs(); extern "C" void mDoMtx_YrotM__FPA4_fs(); extern "C" void mDoMtx_ZrotM__FPA4_fs(); @@ -560,10 +207,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -578,8 +221,6 @@ extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcT_c[68]; @@ -590,10 +231,7 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" void __register_global_object(); // @@ -742,25 +380,30 @@ SECTION_DATA static void* lit_4865[3] = { }; /* 80B78240-80B78260 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Zelda_MethodTable */ -SECTION_DATA static void* daNpc_Zelda_MethodTable[8] = { - (void*)daNpc_Zelda_Create__FPv, - (void*)daNpc_Zelda_Delete__FPv, - (void*)daNpc_Zelda_Execute__FPv, - (void*)daNpc_Zelda_IsDelete__FPv, - (void*)daNpc_Zelda_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_Zelda_MethodTable = { + (process_method_func)daNpc_Zelda_Create__FPv, + (process_method_func)daNpc_Zelda_Delete__FPv, + (process_method_func)daNpc_Zelda_Execute__FPv, + (process_method_func)daNpc_Zelda_IsDelete__FPv, + (process_method_func)daNpc_Zelda_Draw__FPv, }; /* 80B78260-80B78290 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZELDA */ -SECTION_DATA extern void* g_profile_NPC_ZELDA[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x027F0000, (void*)&g_fpcLf_Method, - (void*)0x00000FA0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01800000, (void*)&daNpc_Zelda_MethodTable, - (void*)0x00040108, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZELDA = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZELDA, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Zelda_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 384, // mPriority + &daNpc_Zelda_MethodTable, // sub_method + 0x00040108, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B78290-80B7829C 0001B8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1017,7 +660,8 @@ asm void daNpc_Zelda_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__15J3DTevKColorAnmFv.s" } @@ -1027,7 +671,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__ct__15J3DTevKColorAnmFv.s" } @@ -1037,7 +682,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__14J3DTevColorAnmFv.s" } @@ -1047,7 +693,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__ct__14J3DTevColorAnmFv.s" } @@ -1057,7 +704,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__11J3DTexNoAnmFv.s" } @@ -1067,7 +715,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__ct__11J3DTexNoAnmFv.s" } @@ -1077,7 +726,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__12J3DTexMtxAnmFv.s" } @@ -1087,7 +737,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__ct__12J3DTexMtxAnmFv.s" } @@ -1097,7 +748,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__14J3DMatColorAnmFv.s" } @@ -1107,7 +759,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__ct__14J3DMatColorAnmFv.s" } @@ -1506,7 +1159,8 @@ static bool daNpc_Zelda_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/calc__11J3DTexNoAnmCFPUs.s" } @@ -1516,7 +1170,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__10cCcD_GSttsFv.s" } @@ -1526,7 +1181,8 @@ asm cCcD_GStts::~cCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::~daNpcT_c() { +// asm daNpcT_c::~daNpcT_c() { +extern "C" asm void __dt__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__8daNpcT_cFv.s" } @@ -1536,7 +1192,8 @@ asm daNpcT_c::~daNpcT_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__4cXyzFv.s" } @@ -1546,7 +1203,8 @@ asm cXyz::~cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__5csXyzFv.s" } @@ -1558,18 +1216,20 @@ asm csXyz::~csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/func_80B77260.s" } #pragma pop /* 80B77664-80B77668 002624 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -1577,14 +1237,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +// asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { +extern "C" asm void __dt__15daNpcT_JntAnm_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__15daNpcT_JntAnm_cFv.s" } #pragma pop /* 80B77764-80B77768 002724 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -1592,7 +1254,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +// asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +extern "C" asm void __dt__18daNpcT_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__18daNpcT_ActorMngr_cFv.s" } @@ -1602,7 +1265,8 @@ asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +// asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { +extern "C" asm void __dt__22daNpcT_MotionSeqMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__22daNpcT_MotionSeqMngr_cFv.s" } @@ -1612,7 +1276,8 @@ asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__12dBgS_AcchCirFv.s" } @@ -1622,7 +1287,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__10dCcD_GSttsFv.s" } @@ -1632,7 +1298,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__12dBgS_ObjAcchFv.s" } @@ -1642,7 +1309,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__12J3DFrameCtrlFv.s" } @@ -1652,8 +1320,9 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -1663,14 +1332,16 @@ asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +// asm void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { +extern "C" asm void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs.s" } #pragma pop /* 80B77CA0-80B77CA4 002C60 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +// void daNpcT_c::ctrlSubFaceMotion(int param_0) { +extern "C" asm void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -1691,7 +1362,8 @@ bool daNpcT_c::getEyeballMaterialNo() { } /* 80B77CBC-80B77CC4 002C7C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -1701,7 +1373,8 @@ void daNpcT_c::afterMoved() { } /* 80B77CC8-80B77CD0 002C88 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -1709,30 +1382,35 @@ bool daNpcT_c::chkXYItems() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::decTmr() { +// asm void daNpcT_c::decTmr() { +extern "C" asm void decTmr__8daNpcT_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/decTmr__8daNpcT_cFv.s" } #pragma pop /* 80B77CE8-80B77CEC 002CA8 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -void daNpcT_c::drawOtherMdl() { +// void daNpcT_c::drawOtherMdl() { +extern "C" asm void drawOtherMdl__8daNpcT_cFv() { /* empty function */ } /* 80B77CEC-80B77CF0 002CAC 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { +// void daNpcT_c::drawGhost() { +extern "C" asm void drawGhost__8daNpcT_cFv() { /* empty function */ } /* 80B77CF0-80B77CF8 002CB0 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } /* 80B77CF8-80B77D00 002CB8 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -1741,7 +1419,8 @@ bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int para #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +// asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { +extern "C" asm void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c.s" } @@ -1752,29 +1431,34 @@ asm void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +// asm void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { +extern "C" asm void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c.s" } #pragma pop /* 80B77D60-80B77D64 002D20 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { +// void daNpcT_c::changeAnm(int* param_0, int* param_1) { +extern "C" asm void changeAnm__8daNpcT_cFPiPi() { /* empty function */ } /* 80B77D64-80B77D68 002D24 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { +// void daNpcT_c::changeBck(int* param_0, int* param_1) { +extern "C" asm void changeBck__8daNpcT_cFPiPi() { /* empty function */ } /* 80B77D68-80B77D6C 002D28 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { +// void daNpcT_c::changeBtp(int* param_0, int* param_1) { +extern "C" asm void changeBtp__8daNpcT_cFPiPi() { /* empty function */ } /* 80B77D6C-80B77D70 002D2C 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { +// void daNpcT_c::changeBtk(int* param_0, int* param_1) { +extern "C" asm void changeBtk__8daNpcT_cFPiPi() { /* empty function */ } @@ -1828,7 +1512,8 @@ asm daNpc_Zelda_c::daNpc_Zelda_c(daNpcT_faceMotionAnmData_c const* param_0, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__8cM3dGCylFv.s" } @@ -1838,7 +1523,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zelda/d_a_npc_zelda/__dt__8cM3dGAabFv.s" } diff --git a/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.cpp b/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.cpp index 0ca3d563f1..a32468c9f7 100644 --- a/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.cpp +++ b/rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.cpp @@ -6250,7 +6250,8 @@ extern "C" asm void __dt__12dBgS_ObjAcchFv() { #pragma pop /* 80B7F660-80B7F664 007240 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } diff --git a/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.cpp b/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.cpp index 07be510139..29ae5b37a0 100644 --- a/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.cpp +++ b/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.cpp @@ -1,381 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zrc -// +/** + * @file d_a_npc_zrc.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoExt_morf_c { - /* 8000FB7C */ void setMorf(f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80B92AB8 */ ~cXyz(); - /* 80B92AF4 */ cXyz(); -}; - -struct fopAcM_lc_c { - /* 8001DC68 */ void lineCheck(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct daPy_py_c { - /* 8015F424 */ void checkNowWolfEyeUp(); -}; - -struct J3DModel {}; - -struct J3DJoint {}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTransformKey {}; - -struct _GXColorS10 {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 8015276C */ void setMtx(); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153954 */ void changeEvent(char*, char*, u16, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 80B92AF8 */ ~daNpcF_c(); - /* 80B92D44 */ daNpcF_c(); - /* 80B930B8 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct daNpc_zrC_c { - /* 80B8DC0C */ daNpc_zrC_c(); - /* 80B8DE20 */ ~daNpc_zrC_c(); - /* 80B8E03C */ void create(); - /* 80B8E338 */ void CreateHeap(); - /* 80B8E830 */ void Delete(); - /* 80B8E864 */ void Execute(); - /* 80B8E884 */ void Draw(); - /* 80B8E914 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B8EB48 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B8EB68 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B8EBB4 */ void setParam(); - /* 80B8ED94 */ void main(); - /* 80B8EF2C */ void ctrlBtk(); - /* 80B8F00C */ void setAttnPos(); - /* 80B8F56C */ void setExpressionAnm(int, bool); - /* 80B8F898 */ void setExpressionBtp(int); - /* 80B8F9CC */ void setExpression(int, f32); - /* 80B8F9F8 */ void setMotionAnm(int, f32); - /* 80B8FBE4 */ void setMotion(int, f32, int); - /* 80B8FC28 */ bool drawDbgInfo(); - /* 80B8FC30 */ void drawOtherMdls(); - /* 80B8FC34 */ void getTypeFromParam(); - /* 80B8FC8C */ void isDelete(); - /* 80B8FD10 */ void reset(); - /* 80B8FF14 */ void playExpression(); - /* 80B904DC */ void playMotion(); - /* 80B90940 */ void playMotionAnm2(daNpcF_c::daNpcF_anmPlayData***); - /* 80B90A6C */ void chkAction(int (daNpc_zrC_c::*)(void*)); - /* 80B90A98 */ void setAction(int (daNpc_zrC_c::*)(void*)); - /* 80B90B40 */ void selectAction(); - /* 80B90C34 */ void doNormalAction(int); - /* 80B90D48 */ void doEvent(); - /* 80B9113C */ void setLookMode(int); - /* 80B91160 */ void lookat(); - /* 80B91418 */ void setExpressionTalkAfter(); - /* 80B914F4 */ void wait(void*); - /* 80B916FC */ void waitSick(void*); - /* 80B91808 */ void waitPray(void*); - /* 80B91F78 */ void waitThrone(void*); - /* 80B920EC */ void talk(void*); - /* 80B922D8 */ void test(void*); - /* 80B923BC */ void ECut_earringGet(int); - /* 80B9318C */ void adjustShapeAngle(); - - static void* mEvtCutNameList[2]; - static u8 mEvtCutList[24]; -}; - -struct daNpc_zrC_Param_c { - /* 80B93190 */ ~daNpc_zrC_Param_c(); - - static u8 const m[116]; -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct csXyz { - /* 80B92A78 */ ~csXyz(); - /* 80B92AB4 */ csXyz(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80B929A8 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B92924 */ ~daNpcF_ActorMngr_c(); - /* 80B9296C */ daNpcF_ActorMngr_c(); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B92FA4 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B93000 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80B92F34 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B8DD90 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B8DDD8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B930BC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B8E71C */ ~J3DTexNoAnm(); - /* 80B8E764 */ J3DTexNoAnm(); - /* 80B928F4 */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B8E788 */ ~J3DTexMtxAnm(); - /* 80B8E7C4 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B8E674 */ ~J3DTevKColorAnm(); - /* 80B8E6B0 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B8E6C8 */ ~J3DTevColorAnm(); - /* 80B8E704 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B8E7DC */ ~J3DMatColorAnm(); - /* 80B8E818 */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B93070 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -587,9 +217,6 @@ extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -605,10 +232,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -619,11 +243,8 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -951,25 +572,30 @@ SECTION_DATA static void* lit_5558[9] = { }; /* 80B93AD4-80B93AF4 -00001 0020+00 1/0 0/0 0/0 .data daNpc_zrC_MethodTable */ -SECTION_DATA static void* daNpc_zrC_MethodTable[8] = { - (void*)daNpc_zrC_Create__FPv, - (void*)daNpc_zrC_Delete__FPv, - (void*)daNpc_zrC_Execute__FPv, - (void*)daNpc_zrC_IsDelete__FPv, - (void*)daNpc_zrC_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_zrC_MethodTable = { + (process_method_func)daNpc_zrC_Create__FPv, + (process_method_func)daNpc_zrC_Delete__FPv, + (process_method_func)daNpc_zrC_Execute__FPv, + (process_method_func)daNpc_zrC_IsDelete__FPv, + (process_method_func)daNpc_zrC_Draw__FPv, }; /* 80B93AF4-80B93B24 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZRC */ -SECTION_DATA extern void* g_profile_NPC_ZRC[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02830000, (void*)&g_fpcLf_Method, - (void*)0x00000E3C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01850000, (void*)&daNpc_zrC_MethodTable, - (void*)0x00044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZRC = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZRC, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_zrC_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 389, // mPriority + &daNpc_zrC_MethodTable, // sub_method + 0x00044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B93B24-80B93B30 00043C 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1084,7 +710,8 @@ asm daNpc_zrC_c::daNpc_zrC_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__8cM3dGCylFv.s" } @@ -1094,7 +721,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__8cM3dGAabFv.s" } @@ -1200,7 +828,8 @@ asm void daNpc_zrC_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__15J3DTevKColorAnmFv.s" } @@ -1210,7 +839,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__15J3DTevKColorAnmFv.s" } @@ -1220,7 +850,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__14J3DTevColorAnmFv.s" } @@ -1230,7 +861,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__14J3DTevColorAnmFv.s" } @@ -1240,7 +872,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__11J3DTexNoAnmFv.s" } @@ -1250,7 +883,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__11J3DTexNoAnmFv.s" } @@ -1260,7 +894,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__12J3DTexMtxAnmFv.s" } @@ -1270,7 +905,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__12J3DTexMtxAnmFv.s" } @@ -1280,7 +916,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__14J3DMatColorAnmFv.s" } @@ -1290,7 +927,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__14J3DMatColorAnmFv.s" } @@ -2803,7 +2441,8 @@ static bool daNpc_zrC_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/calc__11J3DTexNoAnmCFPUs.s" } @@ -2813,7 +2452,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2823,7 +2463,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2833,7 +2474,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__15daNpcF_Lookat_cFv.s" } @@ -2843,14 +2485,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__5csXyzFv.s" } #pragma pop /* 80B92AB4-80B92AB8 004F94 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2858,14 +2502,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__4cXyzFv.s" } #pragma pop /* 80B92AF4-80B92AF8 004FD4 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2873,7 +2519,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__8daNpcF_cFv.s" } @@ -2883,7 +2530,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__ct__8daNpcF_cFv.s" } @@ -2893,7 +2541,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__12dBgS_AcchCirFv.s" } @@ -2903,7 +2552,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__10dCcD_GSttsFv.s" } @@ -2913,7 +2563,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__12dBgS_ObjAcchFv.s" } @@ -2923,14 +2574,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80B930B8-80B930BC 005598 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2938,7 +2591,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrc/d_a_npc_zrc/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.cpp b/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.cpp index 466aa9fa71..eca44ac408 100644 --- a/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.cpp +++ b/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.cpp @@ -1,463 +1,11 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_npc_zrz -// +/** + * @file d_a_npc_zrz.cpp + * +*/ #include "rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz { - /* 80B9A7B8 */ ~csXyz(); - /* 80B9A7F4 */ csXyz(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266AE4 */ void operator+(Vec const&) const; - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266B84 */ void operator*(f32) const; - /* 80266EF4 */ void normalize(); - /* 80B9A7F8 */ ~cXyz(); - /* 80B9A834 */ cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CCC8 */ void push(); - /* 8000CD14 */ void pop(); - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CE70 */ void scaleM(cXyz const&); - /* 8000CF0C */ void ZXYrotS(csXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DModel {}; - -struct mDoExt_invisibleModel { - /* 8000E53C */ void create(J3DModel*, u8); - /* 8000E7C0 */ void entryDL(cXyz*); -}; - -struct J3DAnmTextureSRTKey {}; - -struct J3DAnmTexPattern { - /* 8032AF50 */ void getTexNo(u16, u16*) const; -}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*); - /* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_btpAnm { - /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); -}; - -struct mDoExt_btkAnm { - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DModelData {}; - -struct Z2Creature { - /* 802C03C8 */ Z2Creature(); - /* 802C0420 */ ~Z2Creature(); - /* 802C0530 */ void init(Vec*, Vec*, u8, u8); -}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static f32 mGroundY; -}; - -struct J3DJoint {}; - -struct _GXColorS10 {}; - -struct daNpc_zrZ_c { - /* 80B93DCC */ daNpc_zrZ_c(); - /* 80B94014 */ ~daNpc_zrZ_c(); - /* 80B9423C */ void create(); - /* 80B9453C */ void CreateHeap(); - /* 80B949F4 */ void Delete(); - /* 80B94A28 */ void Execute(); - /* 80B94A48 */ void Draw(); - /* 80B94B34 */ void draw(int, int, f32, _GXColorS10*, int); - /* 80B94E18 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 80B950F4 */ void createHeapCallBack(fopAc_ac_c*); - /* 80B95114 */ void ctrlJointCallBack(J3DJoint*, int); - /* 80B95244 */ void setParam(); - /* 80B953CC */ void main(); - /* 80B95598 */ void ctrlBtk(); - /* 80B956B4 */ void setAttnPos(); - /* 80B95BB8 */ void setMtx(); - /* 80B95C6C */ void setExpressionAnm(int, bool); - /* 80B95DD0 */ void setExpressionBtp(int); - /* 80B95F10 */ void setExpression(int, f32); - /* 80B95F3C */ void setMotionAnm(int, f32); - /* 80B9612C */ void setMotion(int, f32, int); - /* 80B96170 */ bool drawDbgInfo(); - /* 80B96178 */ void drawOtherMdls(); - /* 80B9617C */ void getTypeFromParam(); - /* 80B961B4 */ void isDelete(); - /* 80B96268 */ void reset(); - /* 80B9652C */ void playExpression(); - /* 80B96618 */ void playMotion(); - /* 80B96740 */ void chkAction(int (daNpc_zrZ_c::*)(void*)); - /* 80B9676C */ void setAction(int (daNpc_zrZ_c::*)(void*)); - /* 80B96814 */ void selectAction(); - /* 80B968E0 */ void doNormalAction(int); - /* 80B969F4 */ void doEvent(); - /* 80B96DF0 */ void setSkipZev(int, int); - /* 80B96E7C */ void setLookMode(int); - /* 80B96EA0 */ void lookat(); - /* 80B97128 */ void setExpressionTalkAfter(); - /* 80B97160 */ void lightReady(); - /* 80B971BC */ void setLightPos(); - /* 80B9723C */ void lightPowerCalc(int); - /* 80B972EC */ void lightColorProc(); - /* 80B974BC */ void ECut_helpPrince(int); - /* 80B97B78 */ void ECut_comeHere(int); - /* 80B97D7C */ void ECut_restoreLink(int); - /* 80B97EB4 */ void ECut_clothesGet(int); - /* 80B98540 */ void ECut_getAfter(int); - /* 80B9877C */ void ECut_sealRelease(int); - /* 80B98ACC */ void ECut_srSkip(int); - /* 80B98C34 */ void pullbackPlayer(f32); - /* 80B98D04 */ void wait(void*); - /* 80B98F84 */ void comeHere(void*); - /* 80B998BC */ void comeHere2(void*); - /* 80B9A0EC */ void talk(void*); - /* 80B9A29C */ void test(void*); - /* 80B9A380 */ void himoCalc(); - /* 80B9AF7C */ void adjustShapeAngle(); - - static void* mEvtCutNameList[8]; - static u8 mEvtCutList[96]; -}; - -struct daNpc_zrZ_Param_c { - /* 80B9AF80 */ ~daNpc_zrZ_Param_c(); - - static u8 const m[132]; -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); -}; - -struct J3DAnmTransformKey {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct daNpcF_c { - struct daNpcF_anmPlayData {}; - - /* 80152014 */ void execute(); - /* 801522AC */ void draw(int, int, f32, _GXColorS10*, int); - /* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); - /* 80152654 */ void srchAttnActor1(void*, void*); - /* 801527FC */ void setMtx2(); - /* 801528C8 */ void initialize(); - /* 80152B2C */ void getTrnsfrmKeyAnmP(char*, int); - /* 80152B68 */ void getTexPtrnAnmP(char*, int); - /* 80152BA4 */ void getTexSRTKeyAnmP(char*, int); - /* 80152C1C */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int); - /* 80152C80 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80152CC4 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int); - /* 80152D04 */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int); - /* 80152D84 */ void setEnvTevColor(); - /* 80152DE0 */ void setRoomNo(); - /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***); - /* 8015337C */ void setLookatMtx(int, int*, f32); - /* 80153578 */ void hitChk2(dCcD_Cyl*, int, int); - /* 80153658 */ void setDamage(int, int, int); - /* 80153718 */ void ctrlMsgAnm(int&, int&, fopAc_ac_c*, int); - /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16); - /* 80153D1C */ void initTalk(int, fopAc_ac_c**); - /* 80153D84 */ void talkProc(int*, int, fopAc_ac_c**); - /* 801540A4 */ void step(s16, int, int, int); - /* 80154250 */ void setAngle(s16); - /* 80154278 */ void getDistTableIdx(int, int); - /* 8015436C */ void getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16, int, - int); - /* 801549E0 */ void chkFindPlayer2(int, s16); - /* 80B9A838 */ ~daNpcF_c(); - /* 80B9AA84 */ daNpcF_c(); - /* 80B9ADF8 */ void setCollisions(); - - static u8 mCcDCyl[68]; -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 80B9A61C */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150A7C */ void chkPassedDst(cXyz); - /* 80150C18 */ void getNextIdx(); - /* 80150C60 */ void getBeforeIdx(); - /* 80150EB4 */ void setNextIdxDst(cXyz); - /* 80B9A5BC */ ~daNpcF_Path_c(); -}; - -struct daNpcF_MatAnm_c { - /* 80150738 */ void initialize(); -}; - -struct daNpcF_Lookat_c { - /* 80151038 */ void initialize(); - /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, - cXyz*); - /* 80151350 */ void calc(fopAc_ac_c*, f32 (*)[4], csXyz**, int, int, int); - /* 80B9A6E8 */ ~daNpcF_Lookat_c(); -}; - -struct daNpcF_ActorMngr_c { - /* 801506B0 */ void initialize(); - /* 801506BC */ void entry(fopAc_ac_c*); - /* 801506E0 */ void remove(); - /* 801506EC */ void getActorP(); - /* 80B9A664 */ ~daNpcF_ActorMngr_c(); - /* 80B9A6AC */ daNpcF_ActorMngr_c(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 8024A528 */ void getEventId(int*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); - /* 8004365C */ void setPt2(void*); - /* 8004368C */ void setPtT(void*); -}; - -struct dEvent_manager_c { - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); - /* 800483E8 */ void getRunEventName(); - /* 800487F0 */ void ChkPresentEnd(); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80B9ACE4 */ ~dCcD_GStts(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80B9AD40 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F58 */ void SetWall(f32, f32); - /* 80B9AC74 */ ~dBgS_AcchCir(); -}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80B93F84 */ ~cM3dGCyl(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 80B93FCC */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 80B9ADFC */ ~cCcD_GStts(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - -struct _GXColor {}; - -struct Z2SeqMgr { - /* 802AF408 */ void bgmStop(u32, s32); - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); - /* 802AFF8C */ void changeBgmStatus(s32); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); - /* 802AD8B0 */ void seStop(JAISoundID, u32); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct LIGHT_INFLUENCE {}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DTexNoAnm { - /* 80B948E0 */ ~J3DTexNoAnm(); - /* 80B94928 */ J3DTexNoAnm(); - /* 80B9A58C */ void calc(u16*) const; -}; - -struct J3DTexMtxAnm { - /* 80B9494C */ ~J3DTexMtxAnm(); - /* 80B94988 */ J3DTexMtxAnm(); -}; - -struct J3DTevKColorAnm { - /* 80B94838 */ ~J3DTevKColorAnm(); - /* 80B94874 */ J3DTevKColorAnm(); -}; - -struct J3DTevColorAnm { - /* 80B9488C */ ~J3DTevColorAnm(); - /* 80B948C8 */ J3DTevColorAnm(); -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DMaterialAnm { - /* 8032C320 */ void initialize(); -}; - -struct J3DMatColorAnm { - /* 80B949A0 */ ~J3DMatColorAnm(); - /* 80B949DC */ J3DMatColorAnm(); -}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80B9ADB0 */ ~J3DFrameCtrl(); -}; - // // Forward References: // @@ -733,12 +281,6 @@ extern "C" void initialize__14J3DMaterialAnmFv(); extern "C" void removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern(); extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXConcat(); -extern "C" void PSMTXInverse(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareMag(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); extern "C" void __ptmf_test(); @@ -758,10 +300,7 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" u8 mCcDCyl__8daNpcF_c[68]; @@ -772,14 +311,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; extern "C" f32 mGroundY__11fopAcM_gc_c; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -1267,25 +801,30 @@ SECTION_DATA static void* lit_5908[103] = { }; /* 80B9B714-80B9B734 -00001 0020+00 1/0 0/0 0/0 .data daNpc_zrZ_MethodTable */ -SECTION_DATA static void* daNpc_zrZ_MethodTable[8] = { - (void*)daNpc_zrZ_Create__FPv, - (void*)daNpc_zrZ_Delete__FPv, - (void*)daNpc_zrZ_Execute__FPv, - (void*)daNpc_zrZ_IsDelete__FPv, - (void*)daNpc_zrZ_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class daNpc_zrZ_MethodTable = { + (process_method_func)daNpc_zrZ_Create__FPv, + (process_method_func)daNpc_zrZ_Delete__FPv, + (process_method_func)daNpc_zrZ_Execute__FPv, + (process_method_func)daNpc_zrZ_IsDelete__FPv, + (process_method_func)daNpc_zrZ_Draw__FPv, }; /* 80B9B734-80B9B764 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_ZRZ */ -SECTION_DATA extern void* g_profile_NPC_ZRZ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02840000, (void*)&g_fpcLf_Method, - (void*)0x000014C8, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01860000, (void*)&daNpc_zrZ_MethodTable, - (void*)0x08044100, (void*)0x040E0000, +extern actor_process_profile_definition g_profile_NPC_ZRZ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_ZRZ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_zrZ_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 390, // mPriority + &daNpc_zrZ_MethodTable, // sub_method + 0x08044100, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType }; /* 80B9B764-80B9B770 0004E0 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ @@ -1414,7 +953,8 @@ asm daNpc_zrZ_c::daNpc_zrZ_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__8cM3dGCylFv.s" } @@ -1424,7 +964,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__8cM3dGAabFv.s" } @@ -1521,7 +1062,8 @@ asm void daNpc_zrZ_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::~J3DTevKColorAnm() { +// asm J3DTevKColorAnm::~J3DTevKColorAnm() { +extern "C" asm void __dt__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__15J3DTevKColorAnmFv.s" } @@ -1531,7 +1073,8 @@ asm J3DTevKColorAnm::~J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevKColorAnm::J3DTevKColorAnm() { +// asm J3DTevKColorAnm::J3DTevKColorAnm() { +extern "C" asm void __ct__15J3DTevKColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__15J3DTevKColorAnmFv.s" } @@ -1541,7 +1084,8 @@ asm J3DTevKColorAnm::J3DTevKColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::~J3DTevColorAnm() { +// asm J3DTevColorAnm::~J3DTevColorAnm() { +extern "C" asm void __dt__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__14J3DTevColorAnmFv.s" } @@ -1551,7 +1095,8 @@ asm J3DTevColorAnm::~J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTevColorAnm::J3DTevColorAnm() { +// asm J3DTevColorAnm::J3DTevColorAnm() { +extern "C" asm void __ct__14J3DTevColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__14J3DTevColorAnmFv.s" } @@ -1561,7 +1106,8 @@ asm J3DTevColorAnm::J3DTevColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::~J3DTexNoAnm() { +// asm J3DTexNoAnm::~J3DTexNoAnm() { +extern "C" asm void __dt__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__11J3DTexNoAnmFv.s" } @@ -1571,7 +1117,8 @@ asm J3DTexNoAnm::~J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexNoAnm::J3DTexNoAnm() { +// asm J3DTexNoAnm::J3DTexNoAnm() { +extern "C" asm void __ct__11J3DTexNoAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__11J3DTexNoAnmFv.s" } @@ -1581,7 +1128,8 @@ asm J3DTexNoAnm::J3DTexNoAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::~J3DTexMtxAnm() { +// asm J3DTexMtxAnm::~J3DTexMtxAnm() { +extern "C" asm void __dt__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__12J3DTexMtxAnmFv.s" } @@ -1591,7 +1139,8 @@ asm J3DTexMtxAnm::~J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DTexMtxAnm::J3DTexMtxAnm() { +// asm J3DTexMtxAnm::J3DTexMtxAnm() { +extern "C" asm void __ct__12J3DTexMtxAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__12J3DTexMtxAnmFv.s" } @@ -1601,7 +1150,8 @@ asm J3DTexMtxAnm::J3DTexMtxAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::~J3DMatColorAnm() { +// asm J3DMatColorAnm::~J3DMatColorAnm() { +extern "C" asm void __dt__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__14J3DMatColorAnmFv.s" } @@ -1611,7 +1161,8 @@ asm J3DMatColorAnm::~J3DMatColorAnm() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DMatColorAnm::J3DMatColorAnm() { +// asm J3DMatColorAnm::J3DMatColorAnm() { +extern "C" asm void __ct__14J3DMatColorAnmFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__14J3DMatColorAnmFv.s" } @@ -2811,7 +2362,8 @@ static bool daNpc_zrZ_IsDelete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DTexNoAnm::calc(u16* param_0) const { +// asm void J3DTexNoAnm::calc(u16* param_0) const { +extern "C" asm void calc__11J3DTexNoAnmCFPUs() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/calc__11J3DTexNoAnmCFPUs.s" } @@ -2821,7 +2373,8 @@ asm void J3DTexNoAnm::calc(u16* param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { +// asm daNpcF_Path_c::~daNpcF_Path_c() { +extern "C" asm void __dt__13daNpcF_Path_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__13daNpcF_Path_cFv.s" } @@ -2831,7 +2384,8 @@ asm daNpcF_Path_c::~daNpcF_Path_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +// asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { +extern "C" asm void __dt__16daNpcF_SPCurve_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__16daNpcF_SPCurve_cFv.s" } @@ -2841,7 +2395,8 @@ asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { +extern "C" asm void __dt__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__18daNpcF_ActorMngr_cFv.s" } @@ -2851,7 +2406,8 @@ asm daNpcF_ActorMngr_c::~daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +// asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { +extern "C" asm void __ct__18daNpcF_ActorMngr_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__18daNpcF_ActorMngr_cFv.s" } @@ -2861,7 +2417,8 @@ asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +// asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { +extern "C" asm void __dt__15daNpcF_Lookat_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__15daNpcF_Lookat_cFv.s" } @@ -2871,14 +2428,16 @@ asm daNpcF_Lookat_c::~daNpcF_Lookat_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm csXyz::~csXyz() { +// asm csXyz::~csXyz() { +extern "C" asm void __dt__5csXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__5csXyzFv.s" } #pragma pop /* 80B9A7F4-80B9A7F8 006B14 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */ -csXyz::csXyz() { +// csXyz::csXyz() { +extern "C" asm void __ct__5csXyzFv() { /* empty function */ } @@ -2886,14 +2445,16 @@ csXyz::csXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__4cXyzFv.s" } #pragma pop /* 80B9A834-80B9A838 006B54 0004+00 2/2 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +extern "C" asm void __ct__4cXyzFv() { /* empty function */ } @@ -2901,7 +2462,8 @@ cXyz::cXyz() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::~daNpcF_c() { +// asm daNpcF_c::~daNpcF_c() { +extern "C" asm void __dt__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__8daNpcF_cFv.s" } @@ -2911,7 +2473,8 @@ asm daNpcF_c::~daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcF_c::daNpcF_c() { +// asm daNpcF_c::daNpcF_c() { +extern "C" asm void __ct__8daNpcF_cFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__ct__8daNpcF_cFv.s" } @@ -2921,7 +2484,8 @@ asm daNpcF_c::daNpcF_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +extern "C" asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__12dBgS_AcchCirFv.s" } @@ -2931,7 +2495,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__10dCcD_GSttsFv.s" } @@ -2941,7 +2506,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__12dBgS_ObjAcchFv.s" } @@ -2951,14 +2517,16 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// asm J3DFrameCtrl::~J3DFrameCtrl() { +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__12J3DFrameCtrlFv.s" } #pragma pop /* 80B9ADF8-80B9ADFC 007118 0004+00 1/0 0/0 0/0 .text setCollisions__8daNpcF_cFv */ -void daNpcF_c::setCollisions() { +// void daNpcF_c::setCollisions() { +extern "C" asm void setCollisions__8daNpcF_cFv() { /* empty function */ } @@ -2966,7 +2534,8 @@ void daNpcF_c::setCollisions() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/npc/d_a_npc_zrz/d_a_npc_zrz/__dt__10cCcD_GSttsFv.s" } diff --git a/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.cpp b/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.cpp index 5676e48910..e6459abaeb 100644 --- a/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.cpp +++ b/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.cpp @@ -2411,11 +2411,12 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, - daNpcT_evtData_c const* param_6, char** param_7) { +// asm daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0, +// daNpcT_motionAnmData_c const* param_1, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3, +// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5, +// daNpcT_evtData_c const* param_6, char** param_7) { +extern "C" asm void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa/func_80CD4DA4.s" } @@ -2501,8 +2502,9 @@ bool daNpcT_c::getEyeballMaterialNo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, - s16 param_4) { +// asm void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, +// s16 param_4) { +extern "C" asm void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa/setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs.s" } @@ -2550,18 +2552,21 @@ s32 daNpcT_c::getFootRJointNo() { /* 80CD57D0-80CD57D8 007570 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 80CD57D8-80CD57E0 007578 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } /* 80CD57E0-80CD57E8 007580 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2571,7 +2576,8 @@ void daNpcT_c::afterMoved() { } /* 80CD57EC-80CD57F4 00758C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } @@ -2586,7 +2592,8 @@ asm void daNpcT_c::decTmr() { #pragma pop /* 80CD580C-80CD5814 0075AC 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } diff --git a/src/d/a/d_a_npc.cpp b/src/d/a/d_a_npc.cpp index d5689046cd..fef6fed9dd 100644 --- a/src/d/a/d_a_npc.cpp +++ b/src/d/a/d_a_npc.cpp @@ -2957,7 +2957,8 @@ bool daNpcT_c::evtCutProc() { } /* 8014CC70-8014CC78 1475B0 0008+00 1/0 1/0 0/0 .text evtEndProc__8daNpcT_cFv */ -bool daNpcT_c::evtEndProc() { +// bool daNpcT_c::evtEndProc() { +extern "C" bool evtEndProc__8daNpcT_cFv() { return true; } @@ -2982,12 +2983,14 @@ s32 daNpcT_c::getFootLJointNo() { } /* 8014CC98-8014CCA0 1475D8 0008+00 1/0 1/0 0/0 .text chkXYItems__8daNpcT_cFv */ -bool daNpcT_c::chkXYItems() { +// bool daNpcT_c::chkXYItems() { +extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } /* 8014CCA0-8014CCA8 1475E0 0008+00 1/0 1/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3014,7 +3017,8 @@ asm daNpcT_faceMotionAnmData_c daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmDa /* 8014CCE0-8014CCE8 147620 0008+00 1/0 1/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ -bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { +extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } @@ -3059,13 +3063,15 @@ extern "C" asm void __dt__8daNpcT_cFv() { /* 8014D0A8-8014D0B0 1479E8 0008+00 1/0 1/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballLMaterialNo() { +// bool daNpcT_c::getEyeballLMaterialNo() { +extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { return false; } /* 8014D0B0-8014D0B8 1479F0 0008+00 1/0 1/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv */ -bool daNpcT_c::getEyeballRMaterialNo() { +// bool daNpcT_c::getEyeballRMaterialNo() { +extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } diff --git a/tools/add_class_comments.py b/tools/add_class_comments.py index d244948495..74f3e6db6d 100644 --- a/tools/add_class_comments.py +++ b/tools/add_class_comments.py @@ -23,7 +23,7 @@ def process_file(file_path): lines = file.readlines() class_decl_pattern = re.compile(r'class\s+(\w+)\s*:') - doxygen_comment_pattern = re.compile(r'/\*\*\s+@ingroup actors-objects\s+@class\s+\w+\s+@brief', re.MULTILINE) + doxygen_comment_pattern = re.compile(r'/\*\*\s+@ingroup actors-npcs\s+@class\s+\w+\s+@brief', re.MULTILINE) for i, line in enumerate(lines): match = class_decl_pattern.search(line) @@ -31,7 +31,7 @@ def process_file(file_path): class_name = match.group(1) # Check if Doxygen comment is missing if not doxygen_comment_pattern.search(''.join(lines[max(0, i-3):i])): - doxygen_comment = f"""/**\n * @ingroup actors-objects\n * @class {class_name}\n * @brief\n *\n * @details\n *\n */\n""" + doxygen_comment = f"""/**\n * @ingroup actors-tags\n * @class {class_name}\n * @brief\n *\n * @details\n *\n */\n""" lines.insert(i, doxygen_comment) # Stop after processing the first class declaration diff --git a/tools/setup_actor.py b/tools/setup_actor.py index 6c9fcb444b..48e986fc0b 100644 --- a/tools/setup_actor.py +++ b/tools/setup_actor.py @@ -97,7 +97,6 @@ weak_funcs = { "asm mDoExt_bckAnm::~mDoExt_bckAnm()": "__dt__13mDoExt_bckAnmFv", "asm mDoExt_bckAnm::mDoExt_bckAnm()": "__ct__13mDoExt_bckAnmFv", "asm cM3dGTri::~cM3dGTri()": "__dt__8cM3dGTriFv", - # "asm cM3dGTri::cM3dGTri()": "" "asm J3DTevKColorAnm::~J3DTevKColorAnm()": "__dt__15J3DTevKColorAnmFv", "asm J3DTevKColorAnm::J3DTevKColorAnm()": "__ct__15J3DTevKColorAnmFv", "asm J3DTevColorAnm::~J3DTevColorAnm()": "__dt__14J3DTevColorAnmFv", @@ -115,7 +114,32 @@ weak_funcs = { "asm daNpcF_c::daNpcF_c()": "__ct__8daNpcF_cFv", "asm daNpcF_ActorMngr_c::daNpcF_ActorMngr_c()": "__ct__18daNpcF_ActorMngr_cFv", "void daNpcF_c::adjustShapeAngle()": "adjustShapeAngle__8daNpcF_cFv", - "void daNpcF_c::setCollisions()": "setCollisions__8daNpcF_cFv" + "void daNpcF_c::setCollisions()": "setCollisions__8daNpcF_cFv", + "asm daNpcT_c::~daNpcT_c()": "__dt__8daNpcT_cFv", + "asm daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c()": "__dt__18daNpcT_ActorMngr_cFv", + "asm daNpcT_JntAnm_c::~daNpcT_JntAnm_c()": "__dt__15daNpcT_JntAnm_cFv", + "asm daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c()": "__dt__22daNpcT_MotionSeqMngr_cFv", + "void daNpcT_c::ctrlSubFaceMotion(int param_0)": "ctrlSubFaceMotion__8daNpcT_cFi", + "asm void daNpcT_c::decTmr()": "decTmr__8daNpcT_cFv", + "void daNpcT_c::changeAnm(int* param_0, int* param_1)": "changeAnm__8daNpcT_cFPiPi", + "void daNpcT_c::changeBck(int* param_0, int* param_1)": "changeBck__8daNpcT_cFPiPi", + "void daNpcT_c::changeBtp(int* param_0, int* param_1)": "changeBtp__8daNpcT_cFPiPi", + "void daNpcT_c::changeBtk(int* param_0, int* param_1)": "changeBtk__8daNpcT_cFPiPi", + "void daNpcT_c::drawOtherMdl()": "drawOtherMdl__8daNpcT_cFv", + "void daNpcT_c::drawGhost()": "drawGhost__8daNpcT_cFv", + "void daNpcF_c::drawOtherMdls()": "drawOtherMdls__8daNpcF_cFv", + "void daNpcF_c::setExpression(int param_0, f32 param_1)": "setExpression__8daNpcF_cFif", + "void daNpcF_c::drawOtherMdls()": "drawOtherMdls__8daNpcF_cFv", + "asm daNpcCd2_c::~daNpcCd2_c()": "__dt__10daNpcCd2_cFv", + "asm dNpcLib_lookat_c::~dNpcLib_lookat_c()": "__dt__16dNpcLib_lookat_cFv", + "asm daNpcF_Path_c::~daNpcF_Path_c()": "__dt__13daNpcF_Path_cFv", + "asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c()": "__dt__16daNpcF_SPCurve_cFv", + "asm void daTagGra_c::getGraAngle()": "getGraAngle__10daTagGra_cFv", + "asm void daTagGra_c::getGraPos()": "getGraPos__10daTagGra_cFv", + "asm void daNpcT_JntAnm_c::lookActor(fopAc_ac_c* param_0, f32 param_1, u8 param_2)" : "lookActor__15daNpcT_JntAnm_cFP10fopAc_ac_cfUc", + "asm daNpcCd_c::~daNpcCd_c()": "__dt__9daNpcCd_cFv", + "asm void daNpcT_Path_c::getDstPos(cXyz param_0, cXyz* param_1)": "getDstPos__13daNpcT_Path_cF4cXyzP4cXyz", + "asm void daDitem_c::setOffsetPos(cXyz param_0)": "setOffsetPos__9daDitem_cF4cXyz" } # list of known external references to be replaced to avoid symbol collision @@ -194,6 +218,13 @@ external_refs = [ "extern \"C\" void PSMTXRotAxisRad();", "extern \"C\" void C_MTXLightOrtho();", "extern \"C\" void strcat();", + "extern \"C\" void pow();", + "extern \"C\" extern u8 mStayNo__20dStage_roomControl_c[4];", + "extern \"C\" void OSReport_Error();", + "extern \"C\" extern u32 g_blackColor;", + "extern \"C\" void PSMTXMultVecSR();", + "extern \"C\" void strlen();", + "extern \"C\" extern u32 g_saftyWhiteColor;", ] types = [ @@ -373,7 +404,6 @@ types = [ "struct cM3dGCpsS", "struct cM3dGCps", "struct cM3dGLin", - "struct daNpc_Pouya_c", "struct daNpc_Jagar_Param_c", "struct daMidna_c", "struct dAttHint_c", @@ -412,6 +442,29 @@ types = [ "struct JPAEmitterManager", "struct dPa_simpleEcallBack", "struct daTwGate_c", + "struct daCow_c", + "struct dSv_player_collect_c", + "struct daNpcCd2_c", + "struct dNpcLib_lookat_c", + "struct PathTrace_c", + "struct daTagSchedule_c", + "struct daGlwSph_c", + "struct _GlSph_Mng_c", + "struct dShopSystem_c", + "struct dShopItemCtrl_c", + "struct ShopCam_action_c", + "struct dMeter2Info_c", + "struct Z2SoundObjCoach", + "struct daNpcTheB_c", + "struct SVec", + "struct dSv_player_item_c", + "struct daNpcF_SPCurve_c", + "struct daNpcF_Path_c", + "struct daTag_ShopItem_c", + "struct dTimer_c", + "struct daNpc_Len_c", + "struct dSv_player_status_b_c", + "struct daNpc_Maro_c", ] class ActorSetupManager: @@ -469,13 +522,15 @@ class ActorSetupManager: for line in self.lines: if any(ref in line for ref in external_refs): # leave calc_mtx in unless d_camera was included - if "extern \"C\" extern void* calc_mtx[1 + 1 /* padding */];" in line and not any("d/d_camera.h" in header for header in self.include_headers): - new_lines.append(line) - continue - # leave gameInfo in unless d_a_obj_carry was included - if "extern \"C\" extern u8 g_dComIfG_gameInfo[122384];" in line and not any("d/a/obj/d_a_obj_carry/d_a_obj_carry.h" in header for header in self.include_headers): + # if "extern \"C\" extern void* calc_mtx[1 + 1 /* padding */];" in line and not any("d/d_camera.h" in header for header in self.include_headers): + # new_lines.append(line) + # continue + + # leave g_dComIfG_gameInfo in unless npc actor + if "extern \"C\" extern u8 g_dComIfG_gameInfo[122384];" in line and "npc" not in self.filename and not any("d/a/obj/d_a_obj_carry/d_a_obj_carry.h" in header for header in self.include_headers): new_lines.append(line) continue + removed_external_refs += 1 else: new_lines.append(line) @@ -546,7 +601,10 @@ class ActorSetupManager: new_lines.append(line) if "};" in line and inside_struct_or_class: - include_line = "#include \"f_op/f_op_actor_mng.h\"\n\n" + if "npc" in self.filename: + include_line = "#include \"d/a/d_a_npc.h\"\n\n" + else: + include_line = "#include \"f_op/f_op_actor_mng.h\"\n\n" if include_line not in header_lines: struct_or_class_lines.insert(0, include_line)