Skip to content

Commit b059c61

Browse files
committed
HIO work for more NPCs
1 parent 3017e35 commit b059c61

File tree

9 files changed

+465
-304
lines changed

9 files changed

+465
-304
lines changed

include/d/actor/d_a_npc_ash.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ struct daNpcAsh_HIOParam {
99

1010
class daNpcAsh_Param_c {
1111
public:
12-
/* 80B24978 */ virtual ~daNpcAsh_Param_c() {}
12+
/* 8095D5D4 */ virtual ~daNpcAsh_Param_c() {}
1313

1414
static const daNpcAsh_HIOParam m;
1515
};

include/d/actor/d_a_npc_ashB.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ struct daNpcAshB_HIOParam {
1010

1111
class daNpcAshB_Param_c {
1212
public:
13-
/* 80B24978 */ virtual ~daNpcAshB_Param_c() {}
13+
/* 80962078 */ virtual ~daNpcAshB_Param_c() {}
1414

1515
static const daNpcAshB_HIOParam m;
1616
};

include/d/actor/d_a_npc_lud.h

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,6 @@
33

44
#include "d/actor/d_a_npc.h"
55

6-
/**
7-
* @ingroup actors-npcs
8-
* @class daNpc_Lud_c
9-
* @brief Luda
10-
*
11-
* @details
12-
*
13-
*/
14-
156
struct daNpc_Lud_HIOParam {
167
/* 0x00 */ daNpcT_HIOParam common;
178
/* 0x8C */ f32 play_speed;
@@ -24,6 +15,30 @@ class daNpc_Lud_Param_c {
2415
static const daNpc_Lud_HIOParam m;
2516
};
2617

18+
#if DEBUG
19+
class daNpc_Lud_HIO_c : public mDoHIO_entry_c {
20+
public:
21+
daNpc_Lud_HIO_c();
22+
23+
void listenPropertyEvent(const JORPropertyEvent*);
24+
void genMessage(JORMContext*);
25+
26+
daNpc_Lud_HIOParam m;
27+
};
28+
29+
#define NPC_LUD_HIO_CLASS daNpc_Lud_HIO_c
30+
#else
31+
#define NPC_LUD_HIO_CLASS daNpc_Lud_Param_c
32+
#endif
33+
34+
/**
35+
* @ingroup actors-npcs
36+
* @class daNpc_Lud_c
37+
* @brief Luda
38+
*
39+
* @details
40+
*
41+
*/
2742
class daNpc_Lud_c : public daNpcT_c {
2843
public:
2944
typedef int (daNpc_Lud_c::*actionFunc)(void*);
@@ -101,7 +116,7 @@ class daNpc_Lud_c : public daNpcT_c {
101116

102117
private:
103118
/* 0xE40 */ mDoExt_McaMorfSO* mpBowlMorf;
104-
/* 0xE44 */ u8 field_0xe44[0xe48 - 0xe44];
119+
/* 0xE44 */ NPC_LUD_HIO_CLASS* mpHIO;
105120
/* 0xE48 */ J3DModel* mpModel[2];
106121
/* 0xE50 */ dCcD_Cyl mCyl;
107122
/* 0xF8C */ u8 mType;

include/d/actor/d_a_npc_moi.h

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,21 @@
33

44
#include "d/actor/d_a_npc.h"
55

6-
/**
7-
* @ingroup actors-npcs
8-
* @class daNpc_Moi_c
9-
* @brief Rusl
10-
*
11-
* @details
12-
*
13-
*/
14-
156
struct daNpc_Moi_HIOParam {
167
/* 0x00 */ daNpcT_HIOParam common;
17-
/* 0x8C */ u8 field_0x70[12];
8+
/* 0x8C */ f32 field_0x8c;
9+
/* 0x90 */ f32 field_0x90;
10+
/* 0x94 */ f32 field_0x94;
1811
/* 0x98 */ s16 field_0x98;
1912
/* 0x9A */ s16 field_0x9a;
2013
/* 0x9C */ s16 field_0x9c;
2114
/* 0x9E */ s16 field_0x9e;
2215
/* 0xA0 */ s16 field_0xa0;
2316
/* 0xA2 */ s16 field_0xa2;
2417
/* 0xA4 */ f32 field_0xa4;
25-
/* 0xA8 */ u8 field_0xa8[12];
18+
/* 0xA8 */ f32 field_0xa8;
19+
/* 0xAC */ f32 field_0xac;
20+
/* 0xB0 */ f32 field_0xb0;
2621
/* 0xB4 */ f32 field_0xb4;
2722
/* 0xB8 */ f32 field_0xb8;
2823
};
@@ -34,15 +29,30 @@ class daNpc_Moi_Param_c {
3429
static const daNpc_Moi_HIOParam m;
3530
};
3631

37-
class daNpc_Moi_HIO_c
38-
#ifdef DEBUG
39-
: public mDoHIO_entry_c
40-
#endif
41-
{
32+
#if DEBUG
33+
class daNpc_Moi_HIO_c : public mDoHIO_entry_c {
4234
public:
35+
daNpc_Moi_HIO_c();
36+
37+
void listenPropertyEvent(const JORPropertyEvent*);
4338
void genMessage(JORMContext*);
39+
40+
daNpc_Moi_HIOParam m;
4441
};
4542

43+
#define NPC_MOI_HIO_CLASS daNpc_Moi_HIO_c
44+
#else
45+
#define NPC_MOI_HIO_CLASS daNpc_Moi_Param_c
46+
#endif
47+
48+
/**
49+
* @ingroup actors-npcs
50+
* @class daNpc_Moi_c
51+
* @brief Rusl
52+
*
53+
* @details
54+
*
55+
*/
4656
class daNpc_Moi_c : public daNpcT_c {
4757
public:
4858
typedef int (daNpc_Moi_c::*cutFunc)(int);
@@ -152,7 +162,7 @@ class daNpc_Moi_c : public daNpcT_c {
152162
static cutFunc mCutList[5];
153163

154164
private:
155-
/* 0x0E40 */ daNpc_Moi_HIO_c* field_0xe40;
165+
/* 0x0E40 */ NPC_MOI_HIO_CLASS* mpHIO;
156166
/* 0x0E44 */ J3DModel* mpModel[6];
157167
/* 0x0E5C */ dCcD_Cyl mCyl[4];
158168
/* 0x134C */ dCcD_Cyl mCyl2;

include/d/actor/d_a_npc_shoe.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ struct daNpcShoe_HIOParam {
99

1010
class daNpcShoe_Param_c {
1111
public:
12-
/* 8095D5D4 */ virtual ~daNpcShoe_Param_c() {}
12+
/* 80AEA344 */ virtual ~daNpcShoe_Param_c() {}
1313

1414
static const daNpcShoe_HIOParam m;
1515
};

include/d/actor/d_a_npc_uri.h

Lines changed: 25 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -3,47 +3,8 @@
33

44
#include "d/actor/d_a_npc.h"
55

6-
/**
7-
* @ingroup actors-npcs
8-
* @class daNpc_Uri_c
9-
* @brief Uli
10-
*
11-
* @details
12-
*
13-
*/
14-
15-
struct daNpc_Uri_HIOParam {
16-
/* 0x00 */ f32 field_0x00;
17-
/* 0x04 */ f32 field_0x04;
18-
/* 0x08 */ f32 field_0x08;
19-
/* 0x0C */ f32 field_0x0c;
20-
/* 0x10 */ f32 field_0x10;
21-
/* 0x14 */ f32 field_0x14;
22-
/* 0x18 */ f32 field_0x18;
23-
/* 0x1C */ f32 field_0x1c;
24-
/* 0x20 */ f32 field_0x20;
25-
/* 0x24 */ f32 field_0x24;
26-
/* 0x28 */ f32 field_0x28;
27-
/* 0x2C */ f32 field_0x2c;
28-
/* 0x30 */ f32 field_0x30;
29-
/* 0x34 */ f32 field_0x34;
30-
/* 0x38 */ f32 field_0x38;
31-
/* 0x3C */ f32 field_0x3c;
32-
/* 0x40 */ f32 field_0x40;
33-
/* 0x44 */ f32 field_0x44;
34-
/* 0x48 */ s16 field_0x48;
35-
/* 0x4A */ s16 field_0x4a;
36-
/* 0x4C */ s16 field_0x4c;
37-
/* 0x4E */ s16 field_0x4e;
38-
/* 0x50 */ f32 field_0x50;
39-
/* 0x54 */ f32 field_0x54;
40-
/* 0x58 */ f32 field_0x58;
41-
/* 0x5C */ f32 field_0x5c;
42-
/* 0x60 */ s16 field_0x60;
43-
/* 0x62 */ s16 field_0x62;
44-
/* 0x64 */ u8 field_0x64[8];
45-
/* 0x6C */ f32 field_0x6c;
46-
/* 0x70 */ u8 field_0x70[28];
6+
struct daNpc_Uri_HIOParam {
7+
/* 0x00 */ daNpcT_HIOParam common;
478
/* 0x8C */ s16 field_0x8c;
489
/* 0x8E */ s16 field_0x8e;
4910
/* 0x90 */ s16 field_0x90;
@@ -59,20 +20,35 @@
5920

6021
class daNpc_Uri_Param_c {
6122
public:
62-
/* 80B2CD94 */ virtual ~daNpc_Uri_Param_c() {};
23+
/* 80B2CD94 */ virtual ~daNpc_Uri_Param_c() {}
6324

64-
static daNpc_Uri_HIOParam const m;
25+
static const daNpc_Uri_HIOParam m;
6526
};
6627

67-
class daNpc_Uri_HIO_c
68-
#ifdef DEBUG
69-
: public mDoHIO_entry_c
70-
#endif
71-
{
28+
#if DEBUG
29+
class daNpc_Uri_HIO_c : public mDoHIO_entry_c {
7230
public:
31+
daNpc_Uri_HIO_c();
32+
33+
void listenPropertyEvent(const JORPropertyEvent*);
7334
void genMessage(JORMContext*);
35+
36+
daNpc_Uri_HIOParam m;
7437
};
7538

39+
#define NPC_URI_HIO_CLASS daNpc_Uri_HIO_c
40+
#else
41+
#define NPC_URI_HIO_CLASS daNpc_Uri_Param_c
42+
#endif
43+
44+
/**
45+
* @ingroup actors-npcs
46+
* @class daNpc_Uri_c
47+
* @brief Uli
48+
*
49+
* @details
50+
*
51+
*/
7652
class daNpc_Uri_c : public daNpcT_c {
7753
public:
7854
typedef int (daNpc_Uri_c::*cutFunc)(int);
@@ -164,7 +140,7 @@ class daNpc_Uri_c : public daNpcT_c {
164140
static cutFunc mCutList[7];
165141

166142
private:
167-
/* 0x0E40 */ daNpc_Uri_HIO_c* field_0xe40;
143+
/* 0x0E40 */ NPC_URI_HIO_CLASS* mpHIO;
168144
/* 0x0E44 */ J3DModel* mpModel[1];
169145
/* 0x0E48 */ dCcD_Cyl mCyl;
170146
/* 0x0F84 */ u8 mType;

0 commit comments

Comments
 (0)