SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_FT_CHARA_FTCOMMON_TYPES_H
2#define MELEE_FT_CHARA_FTCOMMON_TYPES_H
3
4#include <platform.h>
5#include <placeholder.h>
6
7#include "ft/forward.h"
8#include "ftCommon/forward.h" // IWYU pragma: export
9#include "ftKirby/forward.h"
10#include "it/forward.h"
11
12#include <dolphin/mtx.h>
13
15 /* +0 */ float top;
16 /* +4 */ float bottom;
17 /* +8 */ Vec2 left;
18 /* +10 */ Vec2 right;
19};
20
23 Vec3 vec1;
24 Vec3 vec2;
25 float scale;
26};
27
29 struct {
30 /* fp+2340 */ UNK_T x0;
31 /* fp+2344 */ UNK_T x4;
32 /* fp+2348 */ UNK_T x8;
33 /* fp+234C */ UNK_T xC;
34 /* fp+2350 */ UNK_T x10;
35 /* fp+2354 */ float x14;
36 /* fp+2358 */ float x18;
37 /* fp+235C */ float x1C;
38 /* fp+2360 */ float x20;
39 /* fp+2364 */ float x24;
40 /* fp+2368 */ Vec3 x28;
41 /* fp+2374 */ Vec3 x34;
42 /* fp+2380 */ Vec3 x40;
43 /* fp+238C */ Vec3 x4C;
44 /* fp+2398 */ Vec3 x58;
46 struct {
47 /* fp+2340 */ float x0;
48 /* fp+2344 */ FtMotionId msid;
49 /* fp+2348 */ float slow_anim_frame;
50 /* fp+234C */ float middle_anim_frame;
51 /* fp+2350 */ float fast_anim_frame;
52 /* fp+2354 */ float slow_anim_rate;
53 /* fp+2358 */ float middle_anim_rate;
54 /* fp+235C */ float fast_anim_rate;
55 /* fp+2360 */ float accel_mul;
57 struct {
58 /* fp+2340 */ u8 pad_x0[12];
59 /* fp+234C */ float accel_mul;
61 struct {
62 /* fp+2340 */ float x0;
64 struct {
65 /* fp+2340 */ u8 pad_x0[4];
66 /* fp+2344 */ float x4;
67 } run;
68 struct {
69 /* fp+2340 */ bool x0;
71 struct {
72 /* fp+2340 */ int x0;
74 struct {
75 /* fp+2340 */ bool x0;
77 struct {
78 /* fp+2340 */ float x0;
79 /* fp+2344 */ int x4;
80 /* fp+2348 */ int x8;
81 /* fp+234C */ UNK_T xC;
82 /* fp+2350 */ UNK_T x10;
83 /* fp+2354 */ float x14;
84 /* fp+2358 */ u8 x18;
85 /* fp+2359 */ u8 x19;
86 /* fp+235A */ u8 x1A;
87 /* fp+235B */ u8 x1B;
89 struct {
90 /* fp+2340 */ s8 x0;
91 /* fp+2341 */ s8 x1;
92 /* fp+2342 */ s8 x2;
93 /* fp+2343 */ s8 x3;
94 /* fp+2344 */ float x4;
95 /* fp+2348 */ ftCollisionBox x8;
97 struct {
98 /* fp+2340 */ float x0;
100 struct {
101 /* fp+2340 */ float x0;
102 /* fp+2344 */ float x4;
103 /* fp+2348 */ float x8;
104 /* fp+234C */ bool xC;
105 /* fp+2350 */ float x10;
106 /* fp+2354 */ float x14;
107 /* fp+2358 */ float x18;
108 /* fp+235C */ int x1C;
109 /* fp+2360 */ int x20;
110 /* fp+2364 */ int x24;
111 /* fp+2368 */ UNK_T x28;
112 /* fp+236C */ float x2C;
114 struct {
115 /* fp+2340 */ bool x0; // itemget action is heavy type?
117 struct {
118 /* fp+2340 */ float facing_dir;
119 /* fp+2344 */ float x4;
120 /* fp+2348 */ int x8;
121 /* fp+234C */ int xC;
122 /* fp+2350 */ float x10;
123 /* fp+2354 */ int x14;
124 /* fp+2358 */ UNK_T x18;
125 /* fp+235C */ UNK_T x1C;
126 /* fp+2360 */ int x20;
128 struct {
129 /* fp+2340 */ int unk_timer;
130 /* fp+2344 */ float anim_spd;
131 /* fp+2348 */ Vec3 x8;
133 struct {
134 /* fp+2340 */ int x0;
135 /* fp+2344 */ float x4;
136 /* fp+2348 */ float x8;
137 /* fp+234C */ int xC;
138 /* fp+2350 */ bool x10;
139 /* fp+2354 */ float x14;
140 /* fp+2358 */ bool allow_interrupt;
142 struct {
143 /* fp+2340 */ bool x0;
144 /* fp+2344 */ float x4;
145 /* fp+2348 */ bool x8;
147 struct {
148 /* fp+2340 */ float x0;
150 struct {
151 /* fp+2340 */ bool x0;
152 /* fp+2344 */ bool x4;
154 struct {
155 /* fp+2340 */ int timer;
156 /* fp+2344 */ Vec3 self_vel;
158 struct {
159 /* fp+2340 */ float x0;
160 /* fp+2344 */ float anim_start;
162 struct {
163 /* fp+2340 */ bool x0;
164 /* fp+2344 */ float x4;
166 struct {
171 /* fp+2340 */ int ledge_id;
172 /* fp+2344 */ float x4;
173 /* fp+2348 */ bool x8;
175 struct {
176 /* fp+2340 */ bool x0;
178 struct {
179 /* fp+2340 */ bool x0;
181 struct {
182 /* fp+2340 */ int x0;
183 /* fp+2344 */ int x4;
184 /* fp+2348 */ float x8;
186 struct {
187 /* fp+2340 */ float x0;
188 /* fp+2344 */ int x4;
190 struct {
191 /* fp+2340 */ float x0;
193 struct {
194 /* fp+2340 */ ftCo_GObj* x0;
195 /* fp+2344 */ bool x4;
196 /* fp+2348 */ float x8;
197 /* fp+234C */ float xC;
198 /* fp+2350 */ float x10;
199 /* fp+2354 */ float x14;
200 /* fp+2358 */ Vec3 x18;
201 /* fp+2364 */ Vec3 scale;
203 struct {
204 /* fp+2340 */ bool x0;
205 /* fp+2344 */ UNK_T x4;
206 /* fp+2348 */ float x8;
207 /* fp+234C */ float xC;
208 /* fp+2350 */ float x10;
210 struct {
211 /* fp+2340 */ Vec2 pos_offset;
212 /* fp+2348 */ Vec2 x8;
213 /* fp+2350 */ Vec2 x10;
214 /* fp+2358 */ bool x18;
215 /* fp+235C */ UNK_T x1C;
216 /* fp+2360 */ UNK_T x20;
217 /* fp+2364 */ UNK_T x24;
218 /* fp+2368 */ UNK_T x28;
219 /* fp+236C */ Vec3 scale;
221 struct {
222 /* fp+2340 */ ftKb_GObj* thrower_gobj;
223 /* fp+2344 */ float x4;
224 /* fp+2348 */ float x8;
225 /* fp+234C */ float xC;
226 /* fp+2350 */ float x10;
227 /* fp+2354 */ bool x14;
228 union {
229 u8 x18;
230 struct {
231 /* fp+2358:0 */ u8 x18_b0 : 1;
232 /* fp+2358:1 */ u8 x18_b1 : 1;
233 /* fp+2358:2 */ u8 x18_b2 : 1;
234 /* fp+2358:3 */ u8 x18_b3 : 1;
235 /* fp+2358:4 */ u8 x18_b4 : 1;
236 /* fp+2358:5 */ u8 x18_b5 : 1;
237 /* fp+2358:6 */ u8 x18_b6 : 1;
238 /* fp+2358:7 */ u8 x18_b7 : 1;
239 };
240 };
241 /* fp+235C */ Vec3 scale;
244 struct {
245 /* fp+2340 */ int x0;
246 /* fp+2344 */ ftCollisionBox coll_box;
247 /* fp+235C */ float x1C;
248 /* fp+2360 */ enum_t x20;
249 /* fp+2364 */ Vec3 translate;
251 struct {
252 /* fp+2340 */ float x0;
254 struct {
255 /* fp+2340 */ int timer;
256 /* fp+2344 */ int x4;
257 /* fp+2348 */ bool x8;
258 /* fp+234C */ int vel_y_exponent;
260 struct {
261 /* fp+2340 */ int x0;
262 /* fp+2344 */ float x4;
264 struct {
265 /* fp+2340 */ float x0;
267 struct {
268 /* fp+2340 */ Vec3 cur_pos;
269 /* fp+234C */ Vec3 self_vel;
270 /* fp+2358 */ float facing_dir;
271 /* fp+235C */ int x1C;
272 /* fp+2360 */ ftCollisionBox ecb;
274 struct {
275 /* fp+2340 */ int x0;
276 /* fp+2344 */ int x4;
277 /* fp+2344 */ float x8;
279 struct {
280 /* fp+2340 */ int x0;
281 /* fp+2344 */ int x4;
282 /* fp+2348 */ float x8;
284 struct {
285 /* fp+2340 */ UNK_T x0;
286 /* fp+2344 */ float x4;
288 struct {
289 /* fp+2340 */ Item_GObj* x0;
291 struct {
292 /* fp+2340 */ bool timer;
294 struct {
295 /* fp+2340 */ Item_GObj* x0;
297 struct {
298 /* fp+2340 */ HSD_GObjEvent x0;
299 /* fp+2344 */ HSD_GObjEvent x4;
300 /* fp+2348 */ int x8;
302 struct {
303 /* fp+2340 */ HSD_GObjEvent x0;
305 struct {
306 /* fp+2340 */ u8 pad_x0[0x6c - 0x40];
307 /* fp+236C */ int x6C;
308 /* fp+2370 */ int x70;
310 struct {
311 /* fp+2340 */ u8 pad_x0[0x6c - 0x40];
312 /* fp+236C */ int x6C;
313 /* fp+2370 */ int x70;
315 struct {
316 /* fp+2340 */ void* x40;
317 /* fp+2344 */ u8 pad_x44[0x6c - 0x44];
318 /* fp+236C */ int x6C;
319 /* fp+2370 */ int x70;
320 /* fp+2374 */ void* x74;
322 struct {
323 /* fp+2340 */ int x40;
325 struct {
326 /* fp+2340 */ int x40;
327 /* fp+2344 */ int x44;
328 /* fp+2348 */ u8 pad_x48[0x68 - 0x48];
329 /* fp+2368 */ int x68;
331};
332
333#endif
Fighter_GObj ftCo_GObj
Definition forward.h:10
enum_t FtMotionId
Definition forward.h:13
Fighter_Part
Definition forward.h:234
#define UNK_T
Definition placeholder.h:30
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:9
Definition gobj.h:25
Definition types.h:21
Fighter_Part parts[3]
Definition types.h:22
Vec3 vec2
Definition types.h:24
float scale
Definition types.h:25
Vec3 vec1
Definition types.h:23
Definition types.h:14
float bottom
Definition types.h:16
Vec2 right
Definition types.h:18
Vec2 left
Definition types.h:17
float top
Definition types.h:15
void(* HSD_GObjEvent)(HSD_GObj *gobj)
Definition forward.h:104
Definition types.h:28
Vec3 cur_pos
Definition types.h:268
UNK_T x4
Definition types.h:31
float anim_start
Definition types.h:160
float slow_anim_frame
Definition types.h:49
float fast_anim_rate
Definition types.h:54
bool x4
Definition types.h:152
int x14
Definition types.h:123
struct ftCommon_MotionVars::@49 warpstar
bool timer
Definition types.h:292
struct ftCommon_MotionVars::@21 damageice
struct ftCommon_MotionVars::@59 unk_800D34E0
Vec3 x34
Definition types.h:41
struct ftCommon_MotionVars::@34 cliff
float facing_dir
Definition types.h:118
UNK_T x0
Definition types.h:30
struct ftCommon_MotionVars::@60 unk_800D3680
int vel_y_exponent
Definition types.h:258
float middle_anim_frame
Definition types.h:50
float xC
Definition types.h:197
struct ftCommon_MotionVars::@15 dash
ftKb_GObj * thrower_gobj
Definition types.h:222
u8 x18_b6
Definition types.h:237
struct ftCommon_MotionVars::@19 attacklw3
Vec2 x8
Definition types.h:212
float x2C
Definition types.h:112
struct ftCommon_MotionVars::@36 cargoturn
struct ftCommon_MotionVars::@25 itemthrow
Vec3 x18
Definition types.h:200
int x70
Definition types.h:308
u8 x1B
Definition types.h:87
Item_GObj * x0
Definition types.h:289
Vec2 pos_offset
Definition types.h:211
u8 x19
Definition types.h:85
ftCollisionBox ecb
Definition types.h:272
int x20
Definition types.h:109
UNK_T x18
Definition types.h:124
struct ftCommon_MotionVars::@46 passivewall
u8 pad_x48[0x68 - 0x48]
Definition types.h:328
void * x40
Definition types.h:316
float accel_mul
Definition types.h:55
struct ftCommon_MotionVars::@18 attackdash
int ledge_id
Used to check against opponent's Fighter::213C while they're occupying a ledge within grab range.
Definition types.h:171
int unk_timer
Definition types.h:129
struct ftCommon_MotionVars::@45 buryjump
struct ftCommon_MotionVars::@20 damage
int x68
Definition types.h:329
struct ftCommon_MotionVars::@17 attack1
float x0
Definition types.h:47
struct ftCommon_MotionVars::@47 aircatchhit
Vec3 x58
Definition types.h:44
enum_t x20
Definition types.h:248
int x0
Definition types.h:72
struct ftCommon_MotionVars::@30 escape
struct ftCommon_MotionVars::@32 rebound
bool x18
Definition types.h:214
Vec3 x28
Definition types.h:40
float x10
Definition types.h:105
struct ftCommon_MotionVars::@31 escapeair
int x24
Definition types.h:110
UNK_T x10
Definition types.h:34
UNK_T x28
Definition types.h:111
struct ftCommon_MotionVars::@35 cliffjump
struct ftCommon_MotionVars::@26 itemthrow4
Vec3 translate
Definition types.h:249
struct ftCommon_MotionVars::@57 unk_800D2890
s8 x3
Definition types.h:93
int x4
Definition types.h:79
int timer
Definition types.h:155
int x40
Definition types.h:323
UNK_T x24
Definition types.h:217
void * x74
Definition types.h:320
ftCo_GObj * x0
Definition types.h:194
struct ftCommon_MotionVars::@27 fallspecial
struct ftCommon_MotionVars::@44 bury
UNK_T x8
Definition types.h:32
struct ftCommon_MotionVars::@37 cargokneebend
float x24
Definition types.h:39
s8 x2
Definition types.h:92
bool allow_interrupt
Definition types.h:140
struct ftCommon_MotionVars::@40 yoshiegg
struct ftCommon_MotionVars::@51 hammerkneebend
u8 pad_x0[12]
Definition types.h:58
s8 x1
Definition types.h:91
UNK_T x20
Definition types.h:216
float anim_spd
Definition types.h:130
int x8
Definition types.h:80
int x6C
Definition types.h:307
u8 x18_b2
Definition types.h:233
struct ftCommon_MotionVars::@61 unk_deadleft
bool x8
Definition types.h:145
struct ftCommon_MotionVars::@16 run
struct ftCommon_MotionVars::@52 hammerlanding
int x1C
Definition types.h:108
float fast_anim_frame
Definition types.h:51
ftCollisionBox coll_box
Definition types.h:242
HSD_GObjEvent x0
Definition types.h:298
float x4
Definition types.h:66
struct ftCommon_MotionVars::@33 pass
struct ftCommon_MotionVars::@58 unk_800D331C
struct ftCommon_MotionVars::@23 guard
Vec3 scale
Definition types.h:201
ftCollisionBox x8
Definition types.h:95
struct ftCommon_MotionVars::@13 walk
struct ftCommon_MotionVars::@14 turnrun
u8 x1A
Definition types.h:86
struct ftCommon_MotionVars::@41 capturekoopa
struct ftCommon_MotionVars::@29 downwait
float x1C
Definition types.h:37
struct ftCommon_MotionVars::@24 itemget
Vec3 self_vel
Definition types.h:156
u8 x18_b5
Definition types.h:236
u8 x18_b4
Definition types.h:235
u8 x18_b1
Definition types.h:232
Vec3 x4C
Definition types.h:43
bool x0
Definition types.h:69
struct ftCommon_MotionVars::@12 common
struct ftCommon_MotionVars::@38 shouldered
float middle_anim_rate
Definition types.h:53
float x20
Definition types.h:38
Vec2 x10
Definition types.h:213
bool xC
Definition types.h:104
bool x10
Definition types.h:138
struct ftCommon_MotionVars::@53 captureleadead
float x14
Definition types.h:35
struct ftCommon_MotionVars::@48 aircatch
bool x14
Definition types.h:227
struct ftCommon_MotionVars::@42 capturekirby
int xC
Definition types.h:121
HSD_GObjEvent x4
Definition types.h:299
int x44
Definition types.h:327
struct ftCommon_MotionVars::@62 unk_deadup
Vec3 x40
Definition types.h:42
float slow_anim_rate
Definition types.h:52
Vec3 x8
Definition types.h:131
FtMotionId msid
Definition types.h:48
float x18
Definition types.h:36
UNK_T xC
Definition types.h:33
u8 pad_x44[0x6c - 0x44]
Definition types.h:317
float x8
Definition types.h:103
u8 x18_b3
Definition types.h:234
struct ftCommon_MotionVars::@56 mushroom
u8 x18
Definition types.h:84
struct ftCommon_MotionVars::@50 jumpb
struct ftCommon_MotionVars::@43 thrownkirby
struct ftCommon_MotionVars::@54 entry
struct ftCommon_MotionVars::@39 downdamage
struct ftCommon_MotionVars::@55 capturelikelike
struct ftCommon_MotionVars::@22 damageicejump
struct ftCommon_MotionVars::@28 lift
s8 x0
Definition types.h:90
UNK_T x1C
Definition types.h:125
u8 x18_b7
Definition types.h:238
u8 x18_b0
Definition types.h:231