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