SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_IT_TYPES_H
2#define MELEE_IT_TYPES_H
3
4#include <Runtime/platform.h>
5
6#include <melee/cm/forward.h>
7#include <melee/ef/forward.h>
8#include <melee/it/forward.h> // IWYU pragma: export
11
12#include <dat_macros.h>
13
14#include <dolphin/gx.h>
15#include <dolphin/mtx.h>
16#include <melee/ft/types.h>
19#include <melee/it/itemattrs.h>
20#include <melee/it/itPKFlash.h>
22#include <melee/lb/types.h>
23
28 /* 0x8 */ bool rare_spawned;
29};
30
33 u8 b01 : 2;
34 u8 b2 : 1;
35 u8 b3 : 1;
36 u8 b4 : 1;
37 u8 b5 : 1;
38 u8 b6 : 1;
39 u8 b7 : 1;
40 } x0;
41};
42
43struct flag32 {
44 struct flag32_flags {
45 u32 x0 : 1;
46 u32 x1 : 1;
47 u32 x2 : 1;
48 u32 x3 : 1;
49 u32 x4 : 1;
50 u32 x5 : 1;
51 u32 x6 : 1;
52 u32 x7 : 1;
53 u32 x8 : 1;
54 u32 x9 : 1;
55 u32 xA : 1;
56 u32 xB : 1;
57 u32 xC : 1;
58 u32 xD : 1;
59 u32 xE : 1;
60 u32 xF : 4;
61 u32 x13 : 1;
62 u32 x14 : 1;
63 u32 x15 : 1;
64 u32 x16 : 1;
65 u32 x17 : 2;
66 u32 x19 : 1;
67 u32 x1A : 1;
68 u32 x1B : 1;
69 u32 x1C : 1;
70 u32 x1D : 1;
71 u32 x1E : 1;
72 u32 x1F : 1;
74};
75
78};
80
87
88struct ItemAttr {
89 u8 x0_is_heavy : 1; // 0x0, bit 0x80, is heavy item (crate)
90 u8 x0_78 : 4; // Should be enum (Item_UnkKinds?) for type of action char
91 // takes when using - 0: throwable, 2: Swingable, 3:
92 // Shootable (Relation to Samus Missile lock-on behavior?)
93 u8 x0_hold_kind : 3; // defines hand hold behavior (Item_HoldKinds?)
94 u8 x1_1 : 2; // 0x1 0xB0
95 u8 x1_3 : 1; // 0x1 0x20
96 u8 x1_4 : 1; // 0x1 0x10
97 u8 x1_5 : 1; // 0x1 0x08
98 u8 x1_67_cam_kind : 2; // 0x1 0x06, is stored to 0xdcd
99 u8 x1_8 : 1; // 0x1 0x01 char flags3; //0x2
100 u8 x3; // 0x3
101 f32 x4_throw_speed_mul; // 0x4, speed multiplier at which this item is
102 // thrown at
108 f32 x1C_damage_mul; // collision related? referenced on taking damage @
109 // 80270f90
111 Vec2 x30_unk; // 0x34
114 f32 x50; // 0x50
115 f32 x54; // 0x54
116 f32 x58; // 0x58
117 f32 x5c; // 0x5c
118 f32 x60_scale; // 0x60, does not affect hitboxes
119
122
123 s32 x68; // 0x68
124 s32 x6C; // 0x6c
125 s32 x70; // 0x70
126 s32 x74; // 0x74
127
130
131 s32 x7C; // 0x7c
132 s32 x80; // 0x80
133};
134
138 int count;
139
141};
142
156
159 struct ItemStateDesc x0_itemStateDesc[8] DAT_EXTENT;
160};
161
171
172// Mirrors HurtCapsule[a_offset..scale] but with a leading bone_id where
173// HurtCapsule has its state field. Stored inline in Article::x8_hurtbones,
174// then copied into Item::xACC_itemHurtbox by it_8027163C.
181
186
195
206
210
211typedef struct ItemHitbox {
212 HitCapsule hit; // x5D4, x710, x84C, x988
213 u8 x138 : 1; // x70C, x848, x984, xAC0
216} ItemHitbox;
217
218struct xB6C_t {
220 // u32 xB6C; // struct DynamicsData* for DynamicsDesc->data?
221 // u32 xB70; // int for DynamicsDesc->count?
222 // u32 xB74; // pos.x?
223 f32 xB78; // pos.y? scale?
224 HSD_JObj* xB7C; // HSD_JObj* for bone?
227 // u32 xB88;
228 // u32 xB8C;
229 u32 xB90; // enum_t for BoneDynamicsDesc->bone_id?
230};
231
232struct Item {
233 void* x0;
234
236
238
240
242
244
247
249
253
255
257
259
261
263
265
267
269
271
273
275
277
279 Vec3 x88; // From it_80277040
280 Vec3 x94; // From it_80277040
281 Vec3 xA0; // From it_802734B4
282 Vec3 xAC_unk; // From it_80276CEC
283 ItemLogicTable* xB8_itemLogicTable; // Global item callbacks
294
297
298 HSD_GObj* x51C; // Related to the owner gobj
300 CommandInfo x524_cmd; // should this be CommandInfo* instead?
301 // f32 x528;
302 // void* x52C_item_script; // Script parse?
303 // u32 x530;
304 // u32 x534;
305 // u32 x538;
306 // u32 x53C;
307 // u32 x540;
308 // u32 x544;
311 u8 x5C9; // used heavily in it_80278108
317 u32 xAC4_ignoreItemID; // Cannot hit items with this index?
318 u8 xAC8_hurtboxNum; // Number of hurtboxes this item has
321 u8 xB68; // int for ItemDynamics->count?
325 struct xB6C_t xB6C_vars[2];
326 // u32 xB94;
327 // u32 xB98;
328 // u32 xB9C;
329 // u32 xBA0;
330 // u32 xBA4;
331 // u32 xBA8;
332 // u32 xBAC;
333 // u32 xBB0;
334 // u32 xBB4;
335 // u32 xBB8;
349
350 s32 xC34_damageDealt; // Rounded down
351 s32 xC38; // 0xc38 - ItemKind?
352 f32 xC3C; // 0xc3c
353 f32 xC40; // 0xc40
354 f32 xC44; // 0xc44
355 s32 xC48; // 0xc48
356 s32 xC4C; // Something to do with damage. 0x80077464 checks this against
357 // reflectors' maximum damage threshold
358 s32 xC50; // 0xc50
359 f32 xC54; // 0xc54
360 Vec3 xC58; // 0xc58
361 HSD_GObj* xC64_reflectGObj; // GObj that reflected this item?
362 f32 xC68; // 0xc68
363 f32 xC6C; // 0xc6c
364 f32 xC70; // 0xc70
366 S32Vec2 xC78; // 0xc78
367 struct Struct207C xC80; // 0xc80
368 s32 xC88; // 0xc88
369 u16 xC8C; // 0xc8c
371 s32 xC94; // 0xc94
372 f32 xC98; // 0xc98
373 s32 xC9C; // Total damage taken?
374 s32 xCA0; // Last amount of damage taken?
375 s32 xCA4; // 0xca4
376 s32 xCA8; // 0xca8, hitlag related
377 s32 xCAC_angle; // 0xcac
378 s32 xCB0_source_ply; // 0xcb0, damage source ply number
379 s32 xCB4; // 0xcb4
380 f32 xCB8_outDamageDirection; // 0xcb8, updated @ 80078184
381 f32 xCBC_hitlagFrames; // 0xcbc, hitlag frames remaining
382 f32 xCC0; // 0xcc0
383 s32 xCC4; // 0xcc4, switch statement for this in it_8027CBFC
385 f32 xCCC_incDamageDirection; // Direction from which damage was applied?
386 f32 xCD0; // 0xcd0
387 Vec3 xCD4; // 0xcd4
388 Vec3 xCE0; // 0xce0
390 HSD_GObj* xCF0_itemGObj; // 0xcf0, is a fp GObj, but is the owner of the
391
393
396
398
401
404
409
411
413
415
417
419
422
425
429
430 // 0xd2c, runs after exiting hitlag in hitlag, update proc 8026a200
432
436
439
447
451 f32 xD48_halfLifeTimer; // Not radioactive, just the item's original
452 // lifetime halved
453 int xD4C; // Number of ammo remaining (Checked by shootable items in
454 // it_8026B594)
455 u32 xD50_landNum; // Number of times this item has landed
456 u32 xD54_throwNum; // Number of times this item has been thrown
459
461
463
465
470
473
479 union Struct2070 xD90; // some bit struct/union
484 union Item_xDAA {
485 UnkFlagStruct xDAA_flag; // Develop mode stuff?
500 u8 b0 : 1;
501 u8 b1 : 1;
502 u8 b2 : 1;
503 u8 b3 : 1;
634 u8 _[0xFCC - 0xDD4];
636};
637ASSERT_SIZE(struct Item, 0xFCC);
638
642
647
656
657struct SpawnItem {
660 /* +8 */ ItemKind kind;
661
665
666 /* +10 */ s32 x10;
667 /* +14 */ Vec3 pos;
668 /* +20 */ Vec3 prev_pos;
669 /* +2C */ Vec3 vel;
670 /* +38 */ f32 facing_dir;
671 /* +3C */ s16 x3C_damage;
672 /* +3E */ s16 x3E;
673 /* +40 */ s32 x40;
679};
680
749
758
759// Per-fighter ECB/position record. Populated by ftCo_80098634 (one entry per
760// fighter); read by it_80271B60 to detect item/fighter ECB overlap.
774
777};
778
807
808// Weighted random pick table for item selection. Holds N parallel entries:
809//
810// x4[i] is the ItemKind of entry i.
811// xC[i] is the cumulative weight threshold of entry i (sum of weights of
812// entries 0..i-1; xC[0] == 0).
813// x8 is the total weight (== xC[N], implicit; xC[N] is not stored).
814//
815// To pick an item, draw r in [0, x8) and binary-search xC for the largest i
816// with xC[i] <= r; entry i is the chosen item.
817//
818// Allocated by HSD_MemAlloc with size N*4 (so xC has 2*N u16 slots, but only
819// the first N are populated; the rest are unused over-allocation).
820//
821// Built by it_8026CA4C / it_8026CB9C / it_8026CD50 / it_8026CF04;
822// queried by it_8026C75C
824 u8 size; // entry count N (incremented/decremented as items get
825 // added/picked)
826 u8* x4; // ItemKind values, length N
827 u16 x8; // total weight, used as the upper bound of HSD_Randi
828 u16* xC; // cumulative weight thresholds, length N
829};
830
831// State for the periodic ambient item-spawn system. fn_8026C88C runs each
832// frame: decrements x0; when it reaches 0, picks an item from x4 and tries to
833// spawn it, then resets x0 to a fresh random duration scaled by stage
834// parameters. Initialized in it_8026D018; queried by it_8026D324 to gate
835// individual kinds.
837 s32 x0; // spawn countdown (frames until next spawn attempt)
838 ItemPickTable x4; // weighted pick table, built from x18 + stage weights
839 s32 x14; // unused
840 u64 x18; // stage's allowed-items bitmask, from gm_8016AEA4()
841};
842
850
851// Each entry records a single damage hit; x0 selects which member of x4 is
852// valid (1 = fighter, 2 = item).
859
870
876
877#endif
Annotations describing how archive data is laid out, for the parts a C declaration cannot express: ho...
itRay_ItemVars itLGunRay_ItemVars
Definition itCommonItems.h:362
struct Vec Vec3
signed int s32
Definition types.h:12
unsigned int u32
Definition types.h:13
signed short int s16
Definition types.h:6
float f32
Definition types.h:18
unsigned short int u16
Definition types.h:7
unsigned long long int u64
Definition types.h:16
unsigned char u8
Definition types.h:5
GroundOrAir
Definition forward.h:451
ItemKind
Based on "ID Lists" from the SSBM datasheet, in-game references, and further research by VetriTheRetr...
Definition forward.h:130
Item_HoldKinds
Combine with Item_UnkKinds?
Definition forward.h:107
HSD_GObj Item_GObj
Definition forward.h:64
#define ASSERT_SIZE(expr, size)
Definition platform.h:127
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:29
Definition types.h:187
union ItemSpecialAttributes * x4_specialAttributes
Definition types.h:189
ItemAttr * x0_common_attr
Definition types.h:188
ItemStateArray * xC_itemStates
Definition types.h:191
ItemModelDesc * x10_modelDesc
Definition types.h:192
ItHurtBoneList * x8_hurtbones
Definition types.h:190
ItemDynamics * x14_dynamics
Definition types.h:193
Definition types.h:648
enum_t x14
Definition types.h:652
UnkFlagStruct x1C
Definition types.h:654
HSD_JObj * x4
Definition types.h:650
s32 x18
Definition types.h:653
HSD_GObj * x0
Definition types.h:649
Vec3 x8_vec
Definition types.h:651
A BoneDynamicsDesc as stored in archives.
Definition types.h:518
u8 b5
Definition types.h:37
u8 b01
Definition types.h:33
u8 b2
Definition types.h:34
u8 b4
Definition types.h:36
u8 b6
Definition types.h:38
u8 b3
Definition types.h:35
u8 b7
Definition types.h:39
Definition types.h:31
struct CameraBoxFlags::CameraBoxFlags_x0 x0
A point of interest ("camera box") that the match camera tries to keep in frame.
Definition types.h:24
Definition types.h:205
Definition types.h:360
Definition types.h:1014
Definition types.h:853
s32 x0
Definition types.h:854
HitCapsule * x8
Definition types.h:856
HurtCapsule * xC
Definition types.h:857
void * x4
Definition types.h:855
Definition types.h:76
HSD_JObj * bones[100]
Definition types.h:77
Definition types.h:498
Definition types.h:83
Definition GXStruct.h:27
Definition aobj.h:63
Definition gobj.h:16
Definition jobj.h:106
Definition jobj.h:129
Definition mobj.h:136
Definition types.h:843
u16 x8
Definition types.h:846
u16 xA
Definition types.h:847
u8 x0
Definition types.h:844
u16 xC
Definition types.h:848
u32 x4
Definition types.h:845
Definition types.h:779
s32 x28
Definition types.h:790
s32 x34
Definition types.h:793
s32 x0
Definition types.h:780
s32 x50
Definition types.h:800
s32 x58
Definition types.h:802
s32 x24
Definition types.h:789
s32 x60
Definition types.h:804
s32 x14
Definition types.h:785
s32 x40
Definition types.h:796
s32 x3C
Definition types.h:795
s32 x8
Definition types.h:782
s32 x20
Definition types.h:788
s32 x30
Definition types.h:792
s32 x2C
Definition types.h:791
s32 x5C
Definition types.h:803
s32 x44
Definition types.h:797
s32 x38
Definition types.h:794
s32 x4
Definition types.h:781
s32 x1C
Definition types.h:787
s32 x10
Definition types.h:784
s32 x4C
Definition types.h:799
s32 x48
Definition types.h:798
s32 x54
Definition types.h:801
s32 xC
Definition types.h:783
s32 x64
Definition types.h:805
u32 x18
Definition types.h:786
Definition pobj.h:115
Definition types.h:34
Definition types.h:91
Definition types.h:175
enum_t bone_id
Definition types.h:176
Vec3 a_offset
Definition types.h:177
Vec3 b_offset
Definition types.h:178
f32 scale
Definition types.h:179
Definition types.h:182
s32 count
Definition types.h:183
ItHurtBoneDesc * descs
Definition types.h:184
Definition types.h:88
Vec2 x30_unk
Definition types.h:111
f32 x50
Definition types.h:114
s32 x6C
Definition types.h:124
f32 x8
Definition types.h:103
u8 x1_4
Definition types.h:96
enum_t destroy_sfx
SFX that plays when this item is destroyed.
Definition types.h:129
u8 x3
Definition types.h:100
u8 x1_8
Definition types.h:99
s32 x7C
Definition types.h:131
u8 x1_5
Definition types.h:97
f32 x18
Definition types.h:107
f32 x54
Definition types.h:115
s32 x68
Definition types.h:123
f32 x10_fall_speed
Definition types.h:105
u8 x1_3
Definition types.h:95
u8 x1_1
Definition types.h:94
u8 x0_78
Definition types.h:90
f32 xC_spin_speed
Definition types.h:104
s32 x74
Definition types.h:126
f32 x5c
Definition types.h:117
itECB x40
Definition types.h:113
f32 x58
Definition types.h:116
f32 x14_fall_speed_max
Definition types.h:106
u8 x0_hold_kind
Definition types.h:93
Vec2 x38_grab_range
Definition types.h:112
itECB x20
Definition types.h:110
f32 x1C_damage_mul
Definition types.h:108
u8 x0_is_heavy
Definition types.h:89
s32 x80
Definition types.h:132
u8 x1_67_cam_kind
Definition types.h:98
enum_t destroy_gfx
GFX to play on destroy.
Definition types.h:121
s32 x70
Definition types.h:125
f32 x60_scale
Definition types.h:118
f32 x4_throw_speed_mul
Definition types.h:101
Definition types.h:681
s32 x140
Definition types.h:740
f32 x54_float
Definition types.h:703
u8 filler_1a[0xE8 - 0xE4]
Definition types.h:727
s32 x138
Definition types.h:738
u32 x28
Definition types.h:692
f32 x68_float
Definition types.h:708
f32 xC8
Definition types.h:720
u32 x34
Definition types.h:695
u8 x48_byte
Definition types.h:700
u32 x2C
Definition types.h:693
f32 x80_float[13]
Definition types.h:714
f32 x150
Definition types.h:744
f32 x74_float
Definition types.h:711
u32 x30_lifetime
Definition types.h:694
f32 xBC
Definition types.h:717
s32 x13C
Definition types.h:739
u32 x24
Definition types.h:691
f32 x14C
Definition types.h:743
s32 x0
Definition types.h:682
u32 x10
Definition types.h:686
u32 x1C
Definition types.h:689
u32 x20
Definition types.h:690
f32 x78_float
Definition types.h:712
f32 xD0
Definition types.h:722
u32 x4
Definition types.h:683
u32 xD8
Definition types.h:724
f32 x7C_float
Definition types.h:713
u32 x18
Definition types.h:688
s32 x50_float
Definition types.h:702
f32 x15C
Definition types.h:747
f32 x70_float
Definition types.h:710
f32 x144
Definition types.h:741
f32 xCC
Definition types.h:721
u32 x38_float
Definition types.h:696
s32 x14
Definition types.h:687
f32 xF8
Definition types.h:732
s32 xB4
Definition types.h:715
f32 x154
Definition types.h:745
f32 xB8
Definition types.h:716
s32 x3C_float
Definition types.h:697
u8 filler_1a_2[0xF0 - 0xEC]
Definition types.h:729
s32 xFC[(0x124 - 0xFC)/4]
Definition types.h:733
s32 x128[4]
Definition types.h:735
f32 xD4
Definition types.h:723
f32 unk_degrees
Definition types.h:726
f32 xE8
Definition types.h:728
s32 x64_float
Definition types.h:707
f32 xC4
Definition types.h:719
f32 xC0
Definition types.h:718
s32 x40_float
Definition types.h:698
f32 x4C_float
Definition types.h:701
f32 x60_float
Definition types.h:706
f32 x6C_float
Definition types.h:709
f32 x58_float
Definition types.h:704
s32 xDC
Definition types.h:725
f32 x5C_float
Definition types.h:705
s32 x44_float
Definition types.h:699
s32 x124
Definition types.h:734
u32 x8
Definition types.h:684
s32 x148
Definition types.h:742
f32 xF4
Definition types.h:731
u32 xC
Definition types.h:685
f32 x158
Definition types.h:746
f32 xF0
Definition types.h:730
Definition types.h:135
BoneDynamicsTemplate *dyn_descs DAT_COUNT(count)
int count
Definition types.h:138
Definition types.h:211
u8 x139[3]
Definition types.h:215
HitCapsule hit
Definition types.h:212
u8 x138
Definition types.h:213
u8 x138_b1_7
Definition types.h:214
Definition types.h:20
Definition types.h:207
GXColor x0_unk
Definition types.h:208
Definition types.h:162
s32 x8_bone_attach_id
Definition types.h:167
u8 xC_bit_field
Definition types.h:169
HSD_Joint * x0_joint
Definition types.h:163
u32 x4_bone_count
Definition types.h:165
Definition types.h:823
u8 size
Definition types.h:824
u8 * x4
Definition types.h:826
u16 * xC
Definition types.h:828
u16 x8
Definition types.h:827
Definition types.h:157
struct ItemStateDesc x0_itemStateDesc[8] DAT_EXTENT
Indexed by the anim_id of the item kind's ItemStateTable entries.
Definition types.h:159
Definition types.h:146
union CmdUnion *xC_script DAT_SCRIPT(itCommandLength(_command))
Run by it_802799E4.
HSD_AnimJoint * x0_anim_joint
Definition types.h:147
HSD_MatAnimJoint * x4_matanim_joint
Definition types.h:149
HSD_ShapeAnimJoint * x8_parameters
Definition types.h:151
Definition types.h:10
Definition types.h:499
u8 b0
Definition types.h:500
u8 b1
Definition types.h:501
u8 b3
Definition types.h:503
u8 b2
Definition types.h:502
u8 b4567
Definition types.h:504
Definition types.h:81
DynamicsDesc dyn_desc
Definition types.h:84
int flags
Definition types.h:82
HSD_JObj * skeleton
Definition types.h:83
Definition types.h:761
s32 xB4
Definition types.h:764
s32 xBC
Definition types.h:766
Vec3 ft_pos_arr[11]
Definition types.h:767
u32 x148
Definition types.h:769
u32 x14C
Definition types.h:770
s32 xB8
Definition types.h:765
u32 x144
Definition types.h:768
size_t count
Definition types.h:771
s32 xB0
Definition types.h:763
UnkFlagStruct x154
Definition types.h:772
itECB ecb_offset_arr[11]
Definition types.h:762
Definition types.h:750
s32 x10
Definition types.h:755
s32 x14
Definition types.h:756
void ** pokeball_items
Definition types.h:754
void ** adventure_items
Definition types.h:753
ItemCommonData * item_common
Definition types.h:751
void ** common_items
Definition types.h:752
Definition types.h:232
f32 xC68
Definition types.h:362
u8 xB68
Definition types.h:321
HSD_GObjPredicate collided
Definition types.h:418
itECB xBDC
Definition types.h:342
f32 init_facing_dir
Definition types.h:260
struct Struct207C xC80
Definition types.h:367
f32 xC3C
Definition types.h:352
HSD_GObj * atk_victim
The entity that collided with this item's hitbox?
Definition types.h:403
s32 xD80
Definition types.h:474
S32Vec2 xC78
Definition types.h:366
Vec3 x64_vec_unk2
Definition types.h:274
u32 xDA4_word
Definition types.h:482
s32 x18
Definition types.h:245
Vec3 pos
Definition types.h:270
f32 xD44_lifeTimer
Definition types.h:450
u32 xDC4
Definition types.h:497
HSD_GObj * x51C
Definition types.h:298
u16 xD8C_attack_instance
Definition types.h:477
HSD_GObj * xCF4_fighterGObjUnk
Definition types.h:392
union Item::Item_ItemVars xDD4_itemVar
ItemKind kind
Definition types.h:241
s32 xC30
Definition types.h:348
Article * xC4_article_data
Definition types.h:286
f32 x5D0_animFrameSpeed
Definition types.h:315
enum_t sfx_unk1
Definition types.h:462
enum_t spawn_kind
Definition types.h:239
ItemLogicTable * xB8_itemLogicTable
Definition types.h:283
itECB xBEC
Definition types.h:343
s32 xC94
Definition types.h:371
enum_t sfx_unk2
Definition types.h:464
struct Struct207C xD9C
Definition types.h:481
f32 scl
Definition types.h:264
s32 ecb_lock
Definition types.h:293
enum_t destroy_type
Definition types.h:460
f32 xD10
Definition types.h:412
ItemStateDesc * xD0_itemStateDesc
Definition types.h:289
UnkFlagStruct xDD0_flag
Definition types.h:509
itECB xC0C
Definition types.h:345
f32 xC98
Definition types.h:372
Vec3 xCE0
Definition types.h:388
u32 xD58
Definition types.h:457
u8 x5C8
Definition types.h:310
HSD_GObjEvent exited_hitlag
Definition types.h:431
Vec3 xCD4
Definition types.h:387
HSD_GObj * entity
Definition types.h:235
f32 x5CC_currentAnimFrame
Definition types.h:314
Vec2 xBD4_grabRange
Definition types.h:341
HSD_GObj * xC64_reflectGObj
Definition types.h:361
HSD_GObjEvent on_accessory
Definition types.h:421
Vec3 xC58
Definition types.h:360
s32 xC48
Definition types.h:355
s32 xD84
Definition types.h:475
HSD_Joint * xC8_joint
Definition types.h:287
u32 xDAC_itcmd_var0
Definition types.h:488
void * x0
Definition types.h:233
s32 xD78
Definition types.h:469
s32 xC34_damageDealt
Definition types.h:350
union Item::Item_xDBC xDBC
u32 xDB4_itcmd_var2
Definition types.h:490
int xD4C
Definition types.h:453
s32 x1C
Definition types.h:246
enum_t destroy_sfx
SFX that plays when this item is destroyed.
Definition types.h:472
u8 xB6B
Definition types.h:324
enum_t xD0C
Definition types.h:410
struct lb_80014638_arg1_t xB54
Definition types.h:320
f32 xD48_halfLifeTimer
Definition types.h:451
enum_t msid
Definition types.h:254
itECB xBFC
Definition types.h:344
u8 xD0B
Definition types.h:408
f32 xC40
Definition types.h:353
u16 xDA8_short
Definition types.h:483
f32 xCD0
Definition types.h:386
u8 xB6A
Definition types.h:323
s32 xD70
Definition types.h:467
union Struct2070 xD90
Definition types.h:479
u8 x5CA
Definition types.h:312
u32 xAC4_ignoreItemID
Definition types.h:317
s32 xC50
Definition types.h:358
s32 x8
Definition types.h:237
HSD_GObj * xCF0_itemGObj
Definition types.h:390
u8 xAC8_hurtboxNum
Definition types.h:318
s32 xCA8
Definition types.h:376
s32 xC38
Definition types.h:351
f32 xCC0
Definition types.h:382
itECB xC1C
Definition types.h:346
f32 xC6C
Definition types.h:363
ItemModStruct xBC8
Definition types.h:339
UnkFlagStruct xDCE_flag
Definition types.h:507
Vec3 x58_vec_unk
Definition types.h:272
s32 xCA0
Definition types.h:374
UnkFlagStruct xDD2_flag
Definition types.h:511
s32 xC74
Definition types.h:365
UnkFlagStruct xDCF_flag
Definition types.h:508
HSD_GObj * xCEC_fighterGObj
Definition types.h:389
Vec3 x40_vel
Definition types.h:268
GXColor xBC4
Definition types.h:338
u32 xD50_landNum
Definition types.h:455
s32 xCB4
Definition types.h:379
ItemHitbox x5D4_hitboxes[4]
Definition types.h:316
DynamicBoneTable * xBBC_dynamicBoneTable
Definition types.h:336
u8 xD09
Definition types.h:406
s32 xD88_attackID
Definition types.h:476
union Item::Item_xDAA xDAA
HSD_GObj * toucher
The entity that was detected by this item's inert hitbox.
Definition types.h:395
s32 xCC4
Definition types.h:383
Vec3 xAC_unk
Definition types.h:282
CollData x378_itemColl
Definition types.h:292
f32 xCCC_incDamageDirection
Definition types.h:385
s32 xCB0_source_ply
Definition types.h:378
Vec3 x88
Definition types.h:279
HSD_GObjEvent physics_updated
Definition types.h:416
Vec3 x7C
Definition types.h:278
s32 xD74
Definition types.h:468
s16 xD8E
Definition types.h:478
f32 facing_dir
Definition types.h:258
u8 xD08
Definition types.h:405
s32 xD6C
Definition types.h:466
Vec3 x70_nudge
Definition types.h:276
UnkFlagStruct xDD1_flag
Definition types.h:510
f32 x3C
Definition types.h:266
f32 xCBC_hitlagFrames
Definition types.h:381
u8 x23
Definition types.h:252
ItemStateTable * xBC_itemStateContainer
Definition types.h:284
HSD_GObjPredicate animated
Definition types.h:414
u8 x20_team_id
Definition types.h:248
f32 spin_spd
Definition types.h:262
CmSubject * x520_cameraBox
Definition types.h:299
enum_t anim_id
Definition types.h:256
GroundOrAir ground_or_air
Definition types.h:285
Item_HoldKinds hold_kind
Definition types.h:243
s32 xC2C
Definition types.h:347
s32 xCAC_angle
Definition types.h:377
u32 xD54_throwNum
Definition types.h:456
u32 xDB0_itcmd_var1
Definition types.h:489
f32 xD3C_spinSpeed
Definition types.h:448
HSD_GObjPredicate touched
Runs when an entity is detected by this item's inert hibox.
Definition types.h:424
HurtCapsule xACC_itemHurtbox[2]
Definition types.h:319
s32 xC88
Definition types.h:368
f32 xC70
Definition types.h:364
ColorOverlay x548_colorOverlay
Definition types.h:309
f32 xCC8_knockback
Definition types.h:384
flag32 xDC8_word
Definition types.h:498
HSD_GObjEvent entered_hitlag
Runs after applying hitlag in damage.
Definition types.h:428
EF_QueuedEffect * xBC0
Definition types.h:337
Vec3 x94
Definition types.h:280
Vec3 xA0
Definition types.h:281
HSD_GObj * owner
Item's current owner.
Definition types.h:296
s32 xC4C
Definition types.h:356
HSD_GObjInteraction grabbed_for_victim
When grabbing a fighter, run this function on them.
Definition types.h:446
HSD_GObjEvent grab_dealt
When grabbing a fighter, run this function on self.
Definition types.h:438
f32 xC54
Definition types.h:359
CommandInfo x524_cmd
Definition types.h:300
CameraBoxFlags xDCD_flag
Definition types.h:506
HSD_GObj * xCFC
Definition types.h:397
u32 xD5C
Definition types.h:458
f32 xC44
Definition types.h:354
u32 xDC0
Definition types.h:496
struct Item::Item_xDCC_flag xDCC_flag
f32 xCB8_outDamageDirection
Definition types.h:380
s32 x374_dynamicBonesNum
Definition types.h:291
u8 x5C9
Definition types.h:311
HSD_GObj * xC90_absorbGObj
Definition types.h:370
u32 xDB8_itcmd_var3
Definition types.h:491
UnkFlagStruct xDD3_flag
Definition types.h:512
u8 x5CB
Definition types.h:313
u8 xB69
Definition types.h:322
u8 xD0A
Definition types.h:407
s32 xCA4
Definition types.h:375
Vec2 xBCC_unk
Definition types.h:340
f32 xD40
Definition types.h:449
u8 x21
Definition types.h:250
s32 xC9C
Definition types.h:373
u8 x22
Definition types.h:251
Item_DynamicBones xD4_dynamicBones[24]
Definition types.h:290
S32Vec2 xD94
Definition types.h:480
u16 xC8C
Definition types.h:369
HSD_GObjPredicate jumped_on
Runs when the item is jumped on.
Definition types.h:435
HSD_GObj * grab_victim
The entity that got grabbed by this item.
Definition types.h:400
ItemAttr * xCC_item_attr
Definition types.h:288
struct xB6C_t xB6C_vars[2]
Definition types.h:325
Recent Pokemon selections and the shared Mew/Celebi spawn limit.
Definition types.h:25
ItemKind previous_kind
Definition types.h:27
bool rare_spawned
Definition types.h:28
ItemKind last_kind
Definition types.h:26
Definition types.h:836
s32 x0
Definition types.h:837
ItemPickTable x4
Definition types.h:838
u64 x18
Definition types.h:840
s32 x14
Definition types.h:839
Definition mtx.h:34
Definition types.h:657
UnkFlagStruct x47_flag
Definition types.h:677
Vec3 vel
Definition types.h:669
s32 x40
Definition types.h:673
Vec3 prev_pos
Definition types.h:668
s16 x3C_damage
Definition types.h:671
HSD_GObj * x4_parent_gobj2
Definition types.h:659
s32 x10
Definition types.h:666
UnkFlagStruct x44_flag
Definition types.h:674
HSD_GObj * x0_parent_gobj
Definition types.h:658
f32 facing_dir
Definition types.h:670
UnkFlagStruct x46_flag
Definition types.h:676
Item_HoldKinds hold_kind
Defines the behavior of the item, such as thrown and pickup.
Definition types.h:664
Vec3 pos
Definition types.h:667
UnkFlagStruct x45_flag
Definition types.h:675
GroundOrAir x48_ground_or_air
Definition types.h:678
s16 x3E
Definition types.h:672
ItemKind kind
Definition types.h:660
Definition types.h:1242
Definition mtx.h:10
Definition types.h:44
u32 xC
Definition types.h:57
u32 xB
Definition types.h:56
u32 x17
Definition types.h:65
u32 xA
Definition types.h:55
u32 x1A
Definition types.h:67
u32 x16
Definition types.h:64
u32 x1D
Definition types.h:70
u32 x1C
Definition types.h:69
u32 x5
Definition types.h:50
u32 x2
Definition types.h:47
u32 x1E
Definition types.h:71
u32 x7
Definition types.h:52
u32 x6
Definition types.h:51
u32 x15
Definition types.h:63
u32 x14
Definition types.h:62
u32 x13
Definition types.h:61
u32 xE
Definition types.h:59
u32 x19
Definition types.h:66
u32 xF
Definition types.h:60
u32 x1F
Definition types.h:72
u32 x9
Definition types.h:54
u32 x8
Definition types.h:53
u32 x1B
Definition types.h:68
u32 x1
Definition types.h:46
u32 x4
Definition types.h:49
u32 x0
Definition types.h:45
u32 x3
Definition types.h:48
u32 xD
Definition types.h:58
Definition types.h:43
struct flag32::flag32_flags flags
Definition itCharItems.h:245
Definition itCommonItems.h:107
Definition itCommonItems.h:137
Definition itCharItems.h:21
Definition itCommonItems.h:30
Definition itCommonItems.h:1205
Definition itCharItems.h:25
Definition itCharItems.h:38
Definition itCharItems.h:810
Definition itCommonItems.h:994
Definition itCommonItems.h:276
Definition itCharItems.h:84
Definition types.h:171
Eggs spawned on Yoshi stages / by Chansey.
Definition itCommonItems.h:399
Definition itCommonItems.h:152
Definition itCommonItems.h:1017
Definition itCommonItems.h:1003
Per-instance runtime state of a flipper item (overlaid on Item::xDD4_itemVar).
Definition itCommonItems.h:451
Definition itCommonItems.h:598
Definition itCharItems.h:136
Definition itCharItems.h:280
Definition itCharItems.h:238
Definition itCommonItems.h:628
Definition itCommonItems.h:1734
Definition itCommonItems.h:1739
Definition itCommonItems.h:775
Definition itCommonItems.h:1416
Definition itCharItems.h:841
Definition itCharItems.h:201
Definition itCommonItems.h:1880
Definition itCommonItems.h:1022
Definition itCommonItems.h:287
Definition itCommonItems.h:406
Definition itCharItems.h:866
Definition itCommonItems.h:943
Definition itCommonItems.h:1211
Definition itCommonItems.h:932
Definition itCommonItems.h:1037
Definition itCharItems.h:302
Definition itCharItems.h:295
Definition itCharItems.h:291
Definition itCommonItems.h:1177
Definition itCommonItems.h:1626
Definition itCommonItems.h:1157
Definition itCommonItems.h:218
Definition itCommonItems.h:182
Definition itCommonItems.h:370
Definition itCommonItems.h:345
Definition itCharItems.h:206
Definition itCommonItems.h:682
Definition itCharItems.h:471
Definition itCharItems.h:392
Definition itCharItems.h:420
Definition itCharItems.h:526
Definition itCharItems.h:337
Definition itCommonItems.h:393
Definition itCommonItems.h:1252
Definition itCommonItems.h:1289
Definition itCommonItems.h:1868
Definition itCommonItems.h:703
Definition itCommonItems.h:1616
Definition itCommonItems.h:1232
Definition itCharItems.h:531
Definition itCharItems.h:539
Definition itCommonItems.h:1891
Definition itCommonItems.h:651
Definition itCommonItems.h:1331
Definition itCommonItems.h:845
Definition itCharItems.h:907
Definition itCharItems.h:74
Definition itCharItems.h:78
Definition itCommonItems.h:1044
Definition itCommonItems.h:1549
Definition itCommonItems.h:1802
Definition itCommonItems.h:1653
Definition itPKFlash.h:18
Definition itPKFlash.h:10
Definition itPKThunder.h:18
Definition itCommonItems.h:1661
Definition itCharItems.h:567
Definition itCharItems.h:587
Definition itCharItems.h:576
Definition itCharItems.h:595
Definition itCommonItems.h:1308
Definition itCommonItems.h:919
Definition itCommonItems.h:823
State shared by Fox/Falco's laser and the Ray Gun projectile.
Definition itCommonItems.h:355
Definition itCharItems.h:632
Definition itCharItems.h:637
Definition itCharItems.h:669
Definition itCharItems.h:746
Definition itCommonItems.h:1567
Definition itCharItems.h:770
Definition itCharItems.h:754
Definition itCharItems.h:758
Definition itCommonItems.h:1585
Definition itCommonItems.h:1592
Definition itCommonItems.h:40
Definition itCommonItems.h:74
Definition itCommonItems.h:1112
Definition itCommonItems.h:1121
Definition itCommonItems.h:1788
Definition itCommonItems.h:719
Definition itCommonItems.h:330
Definition itCharItems.h:885
Definition itCommonItems.h:1597
Definition itCommonItems.h:1434
Definition itCharItems.h:834
Definition itCommonItems.h:1811
Definition itCommonItems.h:614
Definition itCommonItems.h:1522
Definition itCommonItems.h:157
Definition itCommonItems.h:1509
Definition itCommonItems.h:1420
Definition itCommonItems.h:1389
Definition itCharItems.h:819
Definition itCommonItems.h:857
Definition types.h:196
u16 x0
Definition types.h:197
struct lbColl_8000A10C_arg0_t x1C
Definition types.h:204
s32 x14
Definition types.h:202
u8 * x4
Definition types.h:198
u8 * xC
Definition types.h:200
s32 x10
Definition types.h:201
UnkFlagStruct x18
Definition types.h:203
u16 x8
Definition types.h:199
Definition itCommonItems.h:1454
Definition types.h:860
s32 unk8
Definition types.h:863
s32 unk10
Definition types.h:865
s32 unk4
Definition types.h:862
s32 unkC
Definition types.h:864
s32 unk18
Definition types.h:867
s32 unk14
Definition types.h:866
s32 unk0
Definition types.h:861
s32 unk1C
Definition types.h:868
Definition types.h:871
Item_GObj * x8
Definition types.h:874
bool x0
Definition types.h:872
ItemKind x4
Definition types.h:873
Definition itCommonItems.h:1752
Definition types.h:537
Definition types.h:430
Definition types.h:643
s32 filler
Definition types.h:644
Article * x0_article[0x9F]
Definition types.h:645
Definition types.h:775
s32 x1C
Definition types.h:776
Definition types.h:218
u32 xB90
Definition types.h:229
f32 xB78
Definition types.h:223
Vec3 xB6C
Definition types.h:219
Vec3 xB84
Definition types.h:226
u32 xB80
Definition types.h:225
HSD_JObj * xB7C
Definition types.h:224
void(* HSD_GObjInteraction)(HSD_GObj *gobj0, HSD_GObj *gobj1)
Definition forward.h:116
void(* HSD_GObjEvent)(HSD_GObj *gobj)
Definition forward.h:113
void(* GObj_RenderFunc)(HSD_GObj *gobj, intptr_t code)
Definition forward.h:110
bool(* HSD_GObjPredicate)(HSD_GObj *gobj)
Definition forward.h:115
Definition types.h:933
Layouts and shared views of Article::x4_specialAttributes.
Definition itemattrs.h:270
Definition types.h:513
itLinkHookshot_ItemVars linkhookshot
Definition types.h:572
itPokemonSpawn_ItemVars pokemon_spawn
Definition types.h:602
itYaku_ItemVars yaku
Definition types.h:629
itUnknown_ItemVars unknown
Definition types.h:625
itDrMarioPill_ItemVars drmariopill
Definition types.h:527
itLeadead_ItemVars leadead
Definition types.h:562
itEvYoshiEgg_ItemVars evyoshiegg
Definition types.h:529
itLucky_ItemVars lucky
Definition types.h:575
itFreezer_ItemVars freezer
Definition types.h:538
itSamusGrapple_ItemVars samusgrapple
Definition types.h:606
itUnk2_ItemVars unk2
Definition types.h:623
itFlipper_ItemVars flipper
Definition types.h:532
itLinkBow_ItemVars linkbow
Definition types.h:571
itTaru_ItemVars taru
Definition types.h:616
itMasterHandLaser_ItemVars masterhandlaser
Definition types.h:579
itRay_ItemVars ray
Definition types.h:566
itStar_ItemVars star
Definition types.h:613
itNessbat_ItemVars nessbat
Definition types.h:586
itkireihana_ItemVars kireihana
Definition types.h:556
itCLinkMilk_ItemVars clinkmilk
Definition types.h:524
itLGunBeam_ItemVars lgunbeam
Definition types.h:564
itScopeBeam_ItemVars scopebeam
Definition types.h:608
itFFlowerFlame_ItemVars fflowerflame
Definition types.h:531
itGShell_ItemVars zgshell
Definition types.h:544
itSeakNeedleHeld_ItemVars seakneedleheld
Definition types.h:610
itWhiteBea_ItemVars whitebea
Definition types.h:627
itNesspkthundertrail_ItemVars nesspkthundertrail
Definition types.h:587
itSamusBomb_ItemVars samusbomb
Definition types.h:604
itArwingLaser_ItemVars arwinglaser
Definition types.h:516
itPikachutJoltGround_ItemVars pikachujoltground
Definition types.h:597
itGShell_ItemVars gshell
Definition types.h:544
itLugia_ItemVars lugia
Definition types.h:576
itLGunRay_ItemVars lgunray
Definition types.h:565
itGamewatch_ItemVars gamewatch
Definition types.h:540
itZeldaDinFireExplode_ItemVars zeldadinfireexplode
Definition types.h:633
itGamewatchchef_ItemVars gamewatchchef
Definition types.h:541
itTosakinto_ItemVars tosakinto
Definition types.h:622
itHassam_ItemVars hassam
Definition types.h:545
itFoods_ItemVars foods
Definition types.h:533
itTincle_ItemVars tincle
Definition types.h:619
itOctarock_ItemVars octarock
Definition types.h:590
itKinoko_ItemVars kinoko
Definition types.h:552
itCoin_ItemVars coin
Definition types.h:525
itClimbersBlizzard_ItemVars climbersblizzard
Definition types.h:521
itKirbyHammer_ItemVars kirbyhammer
Definition types.h:555
itClimbersString_ItemVars climbersstring
Definition types.h:523
itZako_ItemVars zako
Definition types.h:631
itLinkArrow_ItemVars linkarrow
Definition types.h:568
itWhispyApple_ItemVars whispyapple
Definition types.h:626
itZeldaDinFire_ItemVars zeldadinfire
Definition types.h:632
itSeakNeedleThrown_ItemVars seakneedlethrown
Definition types.h:611
itGShell_ItemVars zrshell
Definition types.h:544
itHinoarashi_ItemVars hinoarashi
Definition types.h:548
itPKThunder_ItemVars pkthunder
Definition types.h:600
itTools_ItemVars tools
Definition types.h:621
itPKFlushExplode_ItemVars pkflushexplode
Definition types.h:599
itNokoNoko_ItemVars nokonoko
Definition types.h:589
itMatadogas_ItemVars matadogas
Definition types.h:580
itUnk4_ItemVars unk4
Definition types.h:624
itLipstickSpore_ItemVars lipstickspore
Definition types.h:573
itPatapata_ItemVars patapata
Definition types.h:593
it_266F_ItemVars it_266F
Definition types.h:514
itKyasarinEgg_ItemVars kyasarinEgg
Definition types.h:561
itRShell_ItemVars rshell
Definition types.h:603
itLikelike_ItemVars likelike
Definition types.h:567
itGamewatchrescue_ItemVars gamewatchrescue
Definition types.h:542
itMBall_ItemVars mball
Definition types.h:582
itMaril_ItemVars maril
Definition types.h:577
itMsBomb_ItemVars msbomb
Definition types.h:585
itOldottosea_ItemVars oldottosea
Definition types.h:592
itNessYoyo_ItemVars nessyoyo
Definition types.h:588
itHeiho_ItemVars heiho
Definition types.h:547
itGreatFoxLaser_ItemVars greatfoxlaser
Definition types.h:543
itHeart_ItemVars heart
Definition types.h:546
itFFlower_ItemVars fflower
Definition types.h:530
itChicorita_ItemVars chicorita
Definition types.h:520
itMasterHandBullet_ItemVars masterhandbullet
Definition types.h:578
itKyasarin_ItemVars kyasarin
Definition types.h:560
itFoxLaser_ItemVars foxlaser
Definition types.h:536
itKoopaFlame_ItemVars koopaflame
Definition types.h:558
itMDisable_ItemVars mdisable
Definition types.h:583
itDosei_ItemVars dosei
Definition types.h:526
itWstar_ItemVars wstar
Definition types.h:628
itFoxIllusion_ItemVars foxillusion
Definition types.h:535
itKabigon_ItemVars kabigon
Definition types.h:551
itMewtwoShadowball_ItemVars mewtwoshadowball
Definition types.h:584
itSeakChain_ItemVars seakchain
Definition types.h:609
itSonans_ItemVars sonans
Definition types.h:612
itSamusMissile_ItemVars samusmissile
Definition types.h:607
itEgg_ItemVars egg
Definition types.h:528
itLinkBomb_ItemVars linkbomb
Definition types.h:569
itPeachTurnip_ItemVars peachturnip
Definition types.h:594
itTomato_ItemVars tomato
Definition types.h:620
itCapsule_ItemVars capsule
Definition types.h:519
itLGun_ItemVars lgun
Definition types.h:563
itKirby2F23_ItemVars kirby2f23
Definition types.h:553
itPikachutJoltAir_ItemVars pikachujoltair
Definition types.h:596
itOldkuri_ItemVars oldkuri
Definition types.h:591
itLinkBoomerang_ItemVars linkboomerang
Definition types.h:570
u8 _[0xFCC - 0xDD4]
Definition types.h:634
itClimbersIce_ItemVars climbersice
Definition types.h:522
it_2E5A_ItemVars it_2E5A
Definition types.h:515
itLizardon_ItemVars lizardon
Definition types.h:574
itMato_ItemVars mato
Definition types.h:581
itFreeze_ItemVars freeze
Definition types.h:537
itFoxBlaster_ItemVars foxblaster
Definition types.h:534
itBox_ItemVars box
Definition types.h:518
itKirbyCutterBeam_ItemVars kirbycutterbeam
Definition types.h:554
itKusudama_ItemVars kusudama
Definition types.h:559
itFushigibana_ItemVars fushigibana
Definition types.h:539
itHitodeman_ItemVars hitodeman
Definition types.h:549
itPKFlush_ItemVars pkflush
Definition types.h:598
itSword_ItemVars sword
Definition types.h:615
itTarucann_ItemVars tarucann
Definition types.h:617
itPikachuthunder_ItemVars pikachuthunder
Definition types.h:595
itYoshiEggLay_ItemVars yoshiegglay
Definition types.h:630
itHouou_ItemVars houou
Definition types.h:550
itKlap_ItemVars klap
Definition types.h:557
itPokemon_ItemVars pokemon
Definition types.h:601
itStarRodStar_ItemVars starrodstar
Definition types.h:614
itSamusChargeshot_ItemVars samuschargeshot
Definition types.h:605
itBombHei_ItemVars bombhei
Definition types.h:517
itThunder_ItemVars thunder
Definition types.h:618
Definition types.h:484
UnkFlagStruct xDAA_flag
Definition types.h:485
u8 xDAA_byte
Definition types.h:486
Definition types.h:492
flag32 xDBC_itcmd_var4
Definition types.h:493
u32 xDBC_itcmd_var4_word
Definition types.h:494
Definition types.h:1221
Definition types.h:25