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 <placeholder.h>
5#include <platform.h>
6
7#include "cm/forward.h"
8
9#include "ft/types.h"
10#include "gm/types.h"
11
12#include "it/forward.h" // IWYU pragma: export
13
14#include "it/itCharItems.h"
15#include "it/itCommonItems.h"
16
17#include "it/items/forward.h"
18
19#include "it/itPKFlash.h"
20#include "it/itPKThunder.h"
21#include "lb/types.h"
22
23#include <baselib/forward.h>
24
25#include <common_structs.h>
26#include <dolphin/gx.h>
27#include <dolphin/mtx.h>
28
30 struct {
31 u8 b01 : 2;
32 u8 b2 : 1;
33 u8 b3 : 1;
34 u8 b4 : 1;
35 u8 b5 : 1;
36 u8 b6 : 1;
37 u8 b7 : 1;
38 };
39};
40
41struct flag32 {
42 struct {
43 u32 x0 : 1;
44 u32 x1 : 1;
45 u32 x2 : 1;
46 u32 x3 : 1;
47 u32 x4 : 1;
48 u32 x5 : 1;
49 u32 x6 : 1;
50 u32 x7 : 1;
51 u32 x8 : 1;
52 u32 x9 : 1;
53 u32 xA : 1;
54 u32 xB : 1;
55 u32 xC : 1;
56 u32 xD : 1;
57 u32 xE : 1;
58 u32 xF : 4;
59 u32 x13 : 1;
60 u32 x14 : 1;
61 u32 x15 : 1;
62 u32 x16 : 1;
63 u32 x17 : 2;
64 u32 x19 : 1;
65 u32 x1A : 1;
66 u32 x1B : 1;
67 u32 x1C : 1;
68 u32 x1D : 1;
69 u32 x1E : 1;
70 u32 x1F : 1;
72};
73
77};
78STATIC_ASSERT(sizeof(struct DynamicBoneTable) == 0x190);
79
85STATIC_ASSERT(sizeof(struct Item_DynamicBones) == 0x1C);
86
87struct ItemAttr {
88 u8 x0_is_heavy : 1; // 0x0, bit 0x80, is heavy item (crate)
89 u8 x0_78 : 4; // Should be enum (Item_UnkKinds?) for type of action char
90 // takes when using - 0: throwable, 2: Swingable, 3:
91 // Shootable (Relation to Samus Missile lock-on behavior?)
92 u8 x0_hold_kind : 3; // defines hand hold behavior (Item_HoldKinds?)
93 u8 x1_1 : 2; // 0x1 0xB0
94 u8 x1_3 : 1; // 0x1 0x20
95 u8 x1_4 : 1; // 0x1 0x10
96 u8 x1_5 : 1; // 0x1 0x08
97 u8 x1_67_cam_kind : 2; // 0x1 0x06, is stored to 0xdcd
98 u8 x1_8 : 1; // 0x1 0x01 char flags3; //0x2
99 u8 x3; // 0x3
100 f32 x4_throw_speed_mul; // 0x4, speed multiplier at which this item is
101 // thrown at
104 f32 x10_fall_speed; // 0x10
106 f32 x18;
107 f32 x1C_damage_mul; // collision related? referenced on taking damage @
108 // 80270f90
110 Vec2 x30_unk; // 0x34
111 Vec2 x38_grab_range; // 0x38
113 f32 x50; // 0x50
114 f32 x54; // 0x54
115 f32 x58; // 0x58
116 f32 x5c; // 0x5c
117 f32 x60_scale; // 0x60, does not affect hitboxes
118
122
123 s32 x68; // 0x68
124 s32 x6C; // 0x6c
125 s32 x70; // 0x70
126 s32 x74; // 0x74
127
131
132 s32 x7C; // 0x7c
133 s32 x80; // 0x80
134};
135
146
161
165
180
189
200
201struct Item {
202 void* x0;
203
206
208
211
214
217
220
223
227
230
233
236
239
242
244 f32 scl;
245
247 f32 x3C;
248
251
253 Vec3 pos;
254
257
260
263
264 Vec3 x7C;
265 Vec3 x88; // From it_80277040
266 Vec3 x94; // From it_80277040
267 Vec3 xA0; // From it_802734B4
268 Vec3 xAC_unk; // From it_80276CEC
269 ItemLogicTable* xB8_itemLogicTable; // Global item callbacks
280
284
285 HSD_GObj* x51C; // Related to the owner gobj
287 CommandInfo x524_cmd; // should this be CommandInfo* instead?
288 // f32 x528;
289 // void* x52C_item_script; // Script parse?
290 // u32 x530;
291 // u32 x534;
292 // u32 x538;
293 // u32 x53C;
294 // u32 x540;
295 // u32 x544;
298 u8 x5C9; // used heavily in it_80278108
303 struct {
304 HitCapsule hit; // x5D4, x710, x84C, x988
305 s32 x138; // x70C, x848, x984, xAC0
307 u32 xAC4_ignoreItemID; // Cannot hit items with this index?
308 u8 xAC8_hurtboxNum; // Number of hurtboxes this item has
311 u8 xB68; // int for ItemDynamics->count?
315 struct xB6C_t {
316 Vec3 xB6C;
317 // u32 xB6C; // struct DynamicsData* for DynamicsDesc->data?
318 // u32 xB70; // int for DynamicsDesc->count?
319 // u32 xB74; // pos.x?
320 f32 xB78; // pos.y? scale?
321 HSD_JObj* xB7C; // HSD_JObj* for bone?
322 u32 xB80;
323 Vec3 xB84;
324 // u32 xB88;
325 // u32 xB8C;
326 u32 xB90; // enum_t for BoneDynamicsDesc->bone_id?
328 // u32 xB94;
329 // u32 xB98;
330 // u32 xB9C;
331 // u32 xBA0;
332 // u32 xBA4;
333 // u32 xBA8;
334 // u32 xBAC;
335 // u32 xBB0;
336 // u32 xBB4;
337 // u32 xBB8;
344 u32 xBC8;
354
355 s32 xC34_damageDealt; // Rounded down
356 s32 xC38; // 0xc38 - ItemKind?
357 f32 xC3C; // 0xc3c
358 f32 xC40; // 0xc40
359 f32 xC44; // 0xc44
360 s32 xC48; // 0xc48
361 s32 xC4C; // Something to do with damage. 0x80077464 checks this against
362 // reflectors' maximum damage threshold
363 s32 xC50; // 0xc50
364 f32 xC54; // 0xc54
365 Vec3 xC58; // 0xc58
366 HSD_GObj* xC64_reflectGObj; // GObj that reflected this item?
367 f32 xC68; // 0xc68
368 f32 xC6C; // 0xc6c
369 f32 xC70; // 0xc70
371 Vec2 xC78; // 0xc78
372 S32Vec2 xC80; // 0xc80
373 s32 xC88; // 0xc88
374 u16 xC8C; // 0xc8c
376 s32 xC94; // 0xc94
377 f32 xC98; // 0xc98
378 s32 xC9C; // Total damage taken?
379 s32 xCA0; // Last amount of damage taken?
380 s32 xCA4; // 0xca4
381 s32 xCA8; // 0xca8, hitlag related
382 s32 xCAC_angle; // 0xcac
383 s32 xCB0_source_ply; // 0xcb0, damage source ply number
384 s32 xCB4; // 0xcb4
385 f32 xCB8_outDamageDirection; // 0xcb8, updated @ 80078184
386 f32 xCBC_hitlagFrames; // 0xcbc, hitlag frames remaining
387 f32 xCC0; // 0xcc0
388 s32 xCC4; // 0xcc4, switch statement for this in it_8027CBFC
389 f32 xCC8_knockback; // 0xcc8
390 f32 xCCC_incDamageDirection; // Direction from which damage was applied?
391 f32 xCD0; // 0xcd0
392 Vec3 xCD4; // 0xcd4
393 Vec3 xCE0; // 0xce0
395 HSD_GObj* xCF0_itemGObj; // 0xcf0, is a fp GObj, but is the owner of the
396
398
402
404
408
412
417
420
421 f32 xD10;
422
425
428
431
435
439
444
445 // 0xd2c, runs after exiting hitlag in hitlag, update proc 8026a200
447
452
456
464
466 f32 xD40;
468 f32 xD48_halfLifeTimer; // Not radioactive, just the item's original
469 // lifetime halved
470 int xD4C; // Number of ammo remaining (Checked by shootable items in
471 // it_8026B594)
472 u32 xD50_landNum; // Number of times this item has landed
473 u32 xD54_throwNum; // Number of times this item has been thrown
474 u32 xD58;
475 u32 xD5C;
476
479
482
485
490
494
499 s16 xD8E;
500 union Struct2070 xD90; // some bit struct/union
501 Vec2 xD94;
502 S32Vec2 xD9C;
505 union {
506 UnkFlagStruct xDAA_flag; // Develop mode stuff?
508 };
514 u32 xDC0;
515 u32 xDC4;
517 struct {
518 u8 b0 : 1;
519 u8 b1 : 1;
520 u8 b2 : 1;
521 u8 b3 : 1;
609 u8 _[0xFCC - 0xDD4];
611};
612STATIC_ASSERT(sizeof(struct Item) == 0xFCC);
613
617
622
631
632struct SpawnItem {
633 /* +0 */ HSD_GObj* x0_parent_gobj;
634 /* +4 */ HSD_GObj* x4_parent_gobj2;
635 /* +8 */ ItemKind kind;
636 /* +C */ enum_t hold_kind;
637 /* +10 */ s32 x10;
638 /* +14 */ Vec3 pos;
639 /* +20 */ Vec3 prev_pos;
640 /* +2C */ Vec3 vel;
641 /* +38 */ f32 facing_dir;
642 /* +3C */ s16 x3C_damage;
643 /* +3E */ s16 x3E;
644 /* +40 */ s32 x40;
645 /* +44 */ UnkFlagStruct x44_flag;
646 /* +45 */ UnkFlagStruct x45_flag;
647 /* +46 */ UnkFlagStruct x46_flag;
648 /* +47 */ UnkFlagStruct x47_flag;
650};
651
653 GXColor x0_unk;
654};
655
658 u32 x4;
659 u32 x8;
660 u32 xC;
661 u32 x10;
663 u32 x18;
664 u32 x1C;
665 u32 x20;
666 u32 x24;
667 u32 x28;
668 u32 x2C;
669 u32 x30; // lifetime?
670 u32 x34;
689 f32 x80_float[13];
691 f32 xB8;
692 f32 xBC;
693 f32 xC0;
694 f32 xC4;
695 f32 xC8;
696 f32 xCC;
697 f32 xD0;
698 f32 xD4;
699 u32 xD8;
702 u8 filler_1a[0xE8 - 0xE4];
703 u8 xE8; // struct that has a float (scale?) as the first member? See
704 // it_80275BC8
705 u8 filler_1a_2[0xF0 - 0xEC];
706 f32 xF0;
707 f32 xF4;
708 f32 xF8;
709 u8 filler_1b[0x124 - 0xFC];
710 s32 x124; // max value for a random integer generation in it_8026F6BC
711 s32 x128; // used in it_8026CF04
712 s32 x12C; // used in it_8026CF04
713 s32 x130; // used in it_8026CF04
714 s32 x134; // used in it_8026CF04
715 // u8 filler_2[0x148 - 0x138]; - replaced with vars that are used for
716 // calc's in it_8026F8B4
720 f32 x144;
722 f32 x14C;
723 f32 x150;
724 f32 x154;
725 f32 x158;
726 f32 x15C;
727};
728
737
739 // float x0;
740 // float x4;
741 // float x8;
742 // float xC;
743 // u8 pad_10[0xB0 - 0x10];
745 int xB0;
746 int xB4;
747 int xB8;
749 // Vec3 xC0;
750 // u8 pad_CC[0x148 - 0xCC];
751 Vec3 xC0_vec3_arr[11];
752 u32 x144;
753 u32 x148;
754 u32 x14C;
755 u32 x150; // num of itECB/Vec3's with data?
757};
758
761};
762
791
793 u8 x0; // Gets incremented and decremented by 1 for various checks. Gets
794 // indexed into x4's struct
795 u8* x4; // Points to struct of ItemKinds (or array?)
796 u16 x8; // Max value for random integers
797 u16 xA;
798 u16* xC; // Points to struct of ???
799};
800
802 u32 x0;
805 u64 x18; // Gets set equal to gm_8016AEA4(), aka lbl_8046B6A0.unk_24D3
806 // (which is an s8?)
807};
808
811 u32 x4;
812 u16 x8;
813 u16 xA;
814 u16 xC;
815};
816
823
834
840
842 u8 x0[32]; // This array length was a guess
843};
844
845#endif
GroundOrAir
Definition common_structs.h:89
signed long s32
Definition hsd_3B2B.h:1
unsigned char u8
Definition hsd_3B2B.h:2
s32 M2C_UNK
Definition m2c_macros.h:14
ItemKind
Definition forward.h:109
#define UNK_T
Definition placeholder.h:31
#define STATIC_ASSERT(cond)
Definition platform.h:110
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:9
Definition types.h:181
void * x4_specialAttributes
Definition types.h:183
ItemAttr * x0_common_attr
Definition types.h:182
ItemStateArray * xC_itemStates
Definition types.h:185
ItemModelDesc * x10_modelDesc
Definition types.h:186
UNK_T x8_hurtbox
Definition types.h:184
ItemDynamics * x14_dynamics
Definition types.h:187
Definition types.h:623
enum_t x14
Definition types.h:627
UnkFlagStruct x1C
Definition types.h:629
HSD_JObj * x4
Definition types.h:625
s32 x18
Definition types.h:628
HSD_GObj * x0
Definition types.h:624
Vec3 x8_vec
Definition types.h:626
Definition types.h:542
Definition types.h:29
u8 b2
Definition types.h:32
u8 b7
Definition types.h:37
u8 b01
Definition types.h:31
u8 b4
Definition types.h:34
u8 b6
Definition types.h:36
u8 b5
Definition types.h:35
u8 b3
Definition types.h:33
Definition types.h:12
Definition types.h:202
Definition types.h:384
Definition types.h:949
Definition types.h:74
HSD_JObj * bones[100]
Definition types.h:76
Definition types.dox:1
Definition aobj.h:58
was using this to try and fix some matches, unsuccessfully
Definition gobj.h:26
Definition jobj.h:107
Definition jobj.h:130
Definition mobj.h:138
Definition types.h:738
M2C_UNK xBC
Definition types.h:748
u32 x148
Definition types.h:753
int xB8
Definition types.h:747
u32 x14C
Definition types.h:754
itECB ecb_arr[11]
Definition types.h:744
int xB4
Definition types.h:746
UnkFlagStruct x154
Definition types.h:756
u32 x144
Definition types.h:752
Vec3 xC0_vec3_arr[11]
Definition types.h:751
int xB0
Definition types.h:745
u32 x150
Definition types.h:755
Definition types.h:801
HSD_ObjAllocUnk6 x4
Definition types.h:803
u32 x0
Definition types.h:802
u64 x18
Definition types.h:805
s32 x14
Definition types.h:804
Definition types.h:809
u16 x8
Definition types.h:812
u16 xA
Definition types.h:813
u8 x0
Definition types.h:810
u16 xC
Definition types.h:814
u32 x4
Definition types.h:811
Definition types.h:792
u16 x8
Definition types.h:796
u8 * x4
Definition types.h:795
u16 xA
Definition types.h:797
u8 x0
Definition types.h:793
u16 * xC
Definition types.h:798
Definition types.h:817
void * x4
Definition types.h:819
void * xC
Definition types.h:821
s32 x0
Definition types.h:818
HitCapsule * x8
Definition types.h:820
Definition types.h:763
s32 x28
Definition types.h:774
s32 x34
Definition types.h:777
s32 x0
Definition types.h:764
s32 x50
Definition types.h:784
s32 x58
Definition types.h:786
s32 x24
Definition types.h:773
s32 x60
Definition types.h:788
s32 x14
Definition types.h:769
s32 x40
Definition types.h:780
s32 x3C
Definition types.h:779
s32 x8
Definition types.h:766
s32 x20
Definition types.h:772
s32 x30
Definition types.h:776
s32 x2C
Definition types.h:775
s32 x5C
Definition types.h:787
s32 x44
Definition types.h:781
s32 x38
Definition types.h:778
s32 x4
Definition types.h:765
s32 x1C
Definition types.h:771
s32 x10
Definition types.h:768
s32 x4C
Definition types.h:783
s32 x48
Definition types.h:782
s32 x54
Definition types.h:785
s32 xC
Definition types.h:767
s32 x64
Definition types.h:789
u32 x18
Definition types.h:770
Definition pobj.h:107
Definition types.h:31
Definition types.h:88
Definition types.h:87
Vec2 x30_unk
Definition types.h:110
f32 x50
Definition types.h:113
s32 x6C
Definition types.h:124
s32 x8
Definition types.h:102
u8 x1_4
Definition types.h:95
enum_t destroy_sfx
SFX that plays when this item is destroyed.
Definition types.h:130
u8 x3
Definition types.h:99
u8 x1_8
Definition types.h:98
s32 x7C
Definition types.h:132
u8 x1_5
Definition types.h:96
f32 x18
Definition types.h:106
f32 x54
Definition types.h:114
s32 x68
Definition types.h:123
f32 x10_fall_speed
Definition types.h:104
u8 x1_3
Definition types.h:94
u8 x1_1
Definition types.h:93
u8 x0_78
Definition types.h:89
f32 xC_spin_speed
Definition types.h:103
s32 x74
Definition types.h:126
f32 x5c
Definition types.h:116
itECB x40
Definition types.h:112
f32 x58
Definition types.h:115
f32 x14_fall_speed_max
Definition types.h:105
u8 x0_hold_kind
Definition types.h:92
Vec2 x38_grab_range
Definition types.h:111
itECB x20
Definition types.h:109
f32 x1C_damage_mul
Definition types.h:107
u8 x0_is_heavy
Definition types.h:88
s32 x80
Definition types.h:133
u8 x1_67_cam_kind
Definition types.h:97
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:117
f32 x4_throw_speed_mul
Definition types.h:100
Definition types.h:656
s32 x140
Definition types.h:719
f32 x54_float
Definition types.h:678
u8 filler_1a[0xE8 - 0xE4]
Definition types.h:702
s32 x138
Definition types.h:717
u32 x28
Definition types.h:667
f32 x68_float
Definition types.h:683
f32 xC8
Definition types.h:695
u32 x34
Definition types.h:670
u8 x48_byte
Definition types.h:675
u32 x2C
Definition types.h:668
f32 x80_float[13]
Definition types.h:689
f32 x150
Definition types.h:723
f32 x74_float
Definition types.h:686
f32 xBC
Definition types.h:692
s32 x13C
Definition types.h:718
u32 x24
Definition types.h:666
s32 x134
Definition types.h:714
f32 x14C
Definition types.h:722
s32 x0
Definition types.h:657
u32 x10
Definition types.h:661
u32 x1C
Definition types.h:664
u32 x20
Definition types.h:665
f32 x78_float
Definition types.h:687
f32 xD0
Definition types.h:697
u32 x4
Definition types.h:658
u32 xD8
Definition types.h:699
f32 x7C_float
Definition types.h:688
u32 x18
Definition types.h:663
s32 x50_float
Definition types.h:677
f32 x15C
Definition types.h:726
f32 x70_float
Definition types.h:685
f32 x144
Definition types.h:720
f32 xCC
Definition types.h:696
s32 x128
Definition types.h:711
u32 x38_float
Definition types.h:671
s32 x14
Definition types.h:662
f32 xF8
Definition types.h:708
s32 xB4
Definition types.h:690
f32 x154
Definition types.h:724
f32 xB8
Definition types.h:691
s32 x3C_float
Definition types.h:672
u8 filler_1a_2[0xF0 - 0xEC]
Definition types.h:705
f32 xD4
Definition types.h:698
f32 unk_degrees
Definition types.h:701
s32 x64_float
Definition types.h:682
f32 xC4
Definition types.h:694
f32 xC0
Definition types.h:693
s32 x40_float
Definition types.h:673
s32 x130
Definition types.h:713
f32 x4C_float
Definition types.h:676
f32 x60_float
Definition types.h:681
u8 filler_1b[0x124 - 0xFC]
Definition types.h:709
f32 x6C_float
Definition types.h:684
f32 x58_float
Definition types.h:679
s32 xDC
Definition types.h:700
f32 x5C_float
Definition types.h:680
s32 x44_float
Definition types.h:674
s32 x124
Definition types.h:710
u32 x8
Definition types.h:659
s32 x148
Definition types.h:721
f32 xF4
Definition types.h:707
u32 xC
Definition types.h:660
s32 x12C
Definition types.h:712
u32 x30
Definition types.h:669
f32 x158
Definition types.h:725
u8 xE8
Definition types.h:703
f32 xF0
Definition types.h:706
Definition types.h:137
BoneDynamicsDesc * dyn_descs
Definition types.h:144
int count
Definition types.h:141
Definition types.h:25
Definition types.h:652
GXColor x0_unk
Definition types.h:653
Definition types.h:167
s32 x8_bone_attach_id
Definition types.h:175
u8 xC_bit_field
Definition types.h:178
HSD_Joint * x0_joint
Definition types.h:169
u32 x4_bone_count
Definition types.h:172
Definition types.h:162
struct ItemStateDesc x0_itemStateDesc[8]
Definition types.h:163
Definition types.h:148
HSD_AnimJoint * x0_anim_joint
Definition types.h:150
UNK_T xC_script
Definition types.h:159
HSD_MatAnimJoint * x4_matanim_joint
Definition types.h:153
HSD_ShapeAnimJoint * x8_parameters
Definition types.h:156
Definition types.h:11
Definition types.h:315
u32 xB80
Definition types.h:322
f32 xB78
Definition types.h:320
Vec3 xB6C
Definition types.h:316
u32 xB90
Definition types.h:326
Vec3 xB84
Definition types.h:323
HSD_JObj * xB7C
Definition types.h:321
Definition types.h:80
DynamicsDesc dyn_desc
Definition types.h:83
int flags
Definition types.h:81
HSD_JObj * skeleton
Definition types.h:82
Definition types.h:729
s32 x10
Definition types.h:734
s32 x14
Definition types.h:735
void ** pokeball_items
Definition types.h:733
void ** adventure_items
Definition types.h:732
ItemCommonData * item_common
Definition types.h:730
void ** common_items
Definition types.h:731
Definition types.h:201
f32 xC68
Definition types.h:367
u8 xB68
Definition types.h:311
HSD_GObjPredicate collided
Definition types.h:430
itECB xBDC
Definition types.h:347
f32 init_facing_dir
Definition types.h:238
f32 xC3C
Definition types.h:357
HSD_GObj * atk_victim
The entity that collided with this item's hitbox?
Definition types.h:411
s32 xD80
Definition types.h:495
Vec3 x64_vec_unk2
Definition types.h:259
u32 xBC8
Definition types.h:344
u32 xDA4_word
Definition types.h:503
s32 x18
Definition types.h:218
Vec3 pos
Definition types.h:253
f32 xD44_lifeTimer
Definition types.h:467
u32 xDC4
Definition types.h:515
HSD_GObj * x51C
Definition types.h:285
HitCapsule hit
Definition types.h:304
u16 xD8C_attack_instance
Definition types.h:498
HSD_GObj * xCF4_fighterGObjUnk
Definition types.h:397
union Item::Item_ItemVars xDD4_itemVar
ItemKind kind
Definition types.h:213
u8 xBC7
Definition types.h:343
s32 xC30
Definition types.h:353
Article * xC4_article_data
Definition types.h:272
f32 x5D0_animFrameSpeed
Definition types.h:302
enum_t sfx_unk1
Definition types.h:481
enum_t spawn_kind
Definition types.h:210
ItemLogicTable * xB8_itemLogicTable
Definition types.h:269
itECB xBEC
Definition types.h:348
s32 xC94
Definition types.h:376
enum_t sfx_unk2
Definition types.h:484
u8 b1
Definition types.h:519
f32 scl
Definition types.h:244
s32 ecb_lock
Definition types.h:279
enum_t destroy_type
Definition types.h:478
f32 xD10
Definition types.h:421
ItemStateDesc * xD0_itemStateDesc
Definition types.h:275
UnkFlagStruct xDD0_flag
Definition types.h:527
itECB xC0C
Definition types.h:350
f32 xC98
Definition types.h:377
Vec3 xCE0
Definition types.h:393
u32 xD58
Definition types.h:474
u8 x5C8
Definition types.h:297
UnkFlagStruct xDAA_flag
Definition types.h:506
HSD_GObjEvent exited_hitlag
Definition types.h:446
Vec3 xCD4
Definition types.h:392
HSD_GObj * entity
Definition types.h:205
f32 x5CC_currentAnimFrame
Definition types.h:301
Vec2 xBD4_grabRange
Definition types.h:346
HSD_GObj * xC64_reflectGObj
Definition types.h:366
HSD_GObjEvent on_accessory
Definition types.h:434
Vec2 xD94
Definition types.h:501
u8 xBC6
Definition types.h:342
Vec3 xC58
Definition types.h:365
s32 xC48
Definition types.h:360
s32 xD84
Definition types.h:496
HSD_Joint * xC8_joint
Definition types.h:273
u32 xDAC_itcmd_var0
Definition types.h:509
void * x0
Definition types.h:202
s32 xD78
Definition types.h:489
s32 xC34_damageDealt
Definition types.h:355
u32 xDB4_itcmd_var2
Definition types.h:511
int xD4C
Definition types.h:470
s32 x1C
Definition types.h:219
enum_t destroy_sfx
SFX that plays when this item is destroyed.
Definition types.h:493
u8 xB6B
Definition types.h:314
enum_t xD0C
Definition types.h:419
struct lb_80014638_arg1_t xB54
Definition types.h:310
u8 xBC5
Definition types.h:341
f32 xD48_halfLifeTimer
Definition types.h:468
u8 b0
Definition types.h:518
enum_t msid
Definition types.h:229
itECB xBFC
Definition types.h:349
u8 xD0B
Definition types.h:416
f32 xC40
Definition types.h:358
u8 b4567
Definition types.h:522
u16 xDA8_short
Definition types.h:504
f32 xCD0
Definition types.h:391
u8 xB6A
Definition types.h:313
s32 xD70
Definition types.h:487
union Struct2070 xD90
Definition types.h:500
u8 x5CA
Definition types.h:299
u32 xAC4_ignoreItemID
Definition types.h:307
s32 xC50
Definition types.h:363
s32 x8
Definition types.h:207
HSD_GObj * xCF0_itemGObj
Definition types.h:395
u8 xDAA_byte
Definition types.h:507
u8 xAC8_hurtboxNum
Definition types.h:308
s32 xCA8
Definition types.h:381
Vec2 xC78
Definition types.h:371
s32 xC38
Definition types.h:356
f32 xCC0
Definition types.h:387
itECB xC1C
Definition types.h:351
u8 b2
Definition types.h:520
f32 xC6C
Definition types.h:368
UnkFlagStruct xDCE_flag
Definition types.h:525
Vec3 x58_vec_unk
Definition types.h:256
s32 xCA0
Definition types.h:379
struct Item::xB6C_t xB6C_vars[2]
UnkFlagStruct xDD2_flag
Definition types.h:529
s32 xC74
Definition types.h:370
UnkFlagStruct xDCF_flag
Definition types.h:526
HSD_GObj * xCEC_fighterGObj
Definition types.h:394
Vec3 x40_vel
Definition types.h:250
u32 xD50_landNum
Definition types.h:472
s32 xCB4
Definition types.h:384
DynamicBoneTable * xBBC_dynamicBoneTable
Definition types.h:338
struct Item::@257 x5D4_hitboxes[4]
u8 xD09
Definition types.h:414
s32 xD88_attackID
Definition types.h:497
HSD_GObj * toucher
The entity that was detected by this item's inert hitbox.
Definition types.h:401
s32 xCC4
Definition types.h:388
Vec3 xAC_unk
Definition types.h:268
CollData x378_itemColl
Definition types.h:278
f32 xCCC_incDamageDirection
Definition types.h:390
s32 xCB0_source_ply
Definition types.h:383
Vec3 x88
Definition types.h:265
HSD_GObjEvent physics_updated
Definition types.h:427
Vec3 x7C
Definition types.h:264
s32 xD74
Definition types.h:488
s16 xD8E
Definition types.h:499
f32 facing_dir
Definition types.h:235
u8 xD08
Definition types.h:413
s32 xD6C
Definition types.h:486
Vec3 x70_nudge
Definition types.h:262
UnkFlagStruct xDD1_flag
Definition types.h:528
f32 x3C
Definition types.h:247
f32 xCBC_hitlagFrames
Definition types.h:386
u8 x23
Definition types.h:226
ItemStateTable * xBC_itemStateContainer
Definition types.h:270
HSD_GObjPredicate animated
Definition types.h:424
u8 x20_team_id
Definition types.h:222
f32 spin_spd
Definition types.h:241
CmSubject * x520_cameraBox
Definition types.h:286
enum_t anim_id
Definition types.h:232
GroundOrAir ground_or_air
Definition types.h:271
s32 xC2C
Definition types.h:352
s32 xCAC_angle
Definition types.h:382
u32 xD54_throwNum
Definition types.h:473
u32 xDB0_itcmd_var1
Definition types.h:510
S32Vec2 xD9C
Definition types.h:502
f32 xD3C_spinSpeed
Definition types.h:465
HSD_GObjPredicate touched
Runs when an entity is detected by this item's inert hibox.
Definition types.h:438
HurtCapsule xACC_itemHurtbox[2]
Definition types.h:309
s32 xC88
Definition types.h:373
f32 xC70
Definition types.h:369
s32 x138
Definition types.h:305
ColorOverlay x548_colorOverlay
Definition types.h:296
f32 xCC8_knockback
Definition types.h:389
u8 xBC4
Definition types.h:340
flag32 xDC8_word
Definition types.h:516
HSD_GObjEvent entered_hitlag
Runs after applying hitlag in damage.
Definition types.h:443
Vec3 x94
Definition types.h:266
Vec3 xA0
Definition types.h:267
HSD_GObj * owner
Item's current owner.
Definition types.h:283
s32 xC4C
Definition types.h:361
HSD_GObjInteraction grabbed_for_victim
When grabbing a fighter, run this function on them.
Definition types.h:463
HSD_GObjEvent grab_dealt
When grabbing a fighter, run this function on self.
Definition types.h:455
f32 xC54
Definition types.h:364
CommandInfo x524_cmd
Definition types.h:287
CameraBoxFlags xDCD_flag
Definition types.h:524
HSD_GObj * xCFC
Definition types.h:403
u32 xD5C
Definition types.h:475
f32 xC44
Definition types.h:359
u32 xDC0
Definition types.h:514
enum_t hold_kind
Definition types.h:216
f32 xCB8_outDamageDirection
Definition types.h:385
s32 x374_dynamicBonesNum
Definition types.h:277
u8 x5C9
Definition types.h:298
HSD_GObj * xC90_absorbGObj
Definition types.h:375
u32 xDBC_itcmd_var4
Definition types.h:513
u32 xDB8_itcmd_var3
Definition types.h:512
UnkFlagStruct xDD3_flag
Definition types.h:530
u8 x5CB
Definition types.h:300
u8 xB69
Definition types.h:312
u8 xD0A
Definition types.h:415
s32 xCA4
Definition types.h:380
Vec2 xBCC_unk
Definition types.h:345
f32 xD40
Definition types.h:466
u8 x21
Definition types.h:224
UNK_T xBC0
Definition types.h:339
s32 xC9C
Definition types.h:378
u8 x22
Definition types.h:225
Item_DynamicBones xD4_dynamicBones[24]
Definition types.h:276
u16 xC8C
Definition types.h:374
HSD_GObjPredicate jumped_on
Runs when the item is jumped on.
Definition types.h:451
HSD_GObj * grab_victim
The entity that got grabbed by this item.
Definition types.h:407
ItemAttr * xCC_item_attr
Definition types.h:274
S32Vec2 xC80
Definition types.h:372
u8 b3
Definition types.h:521
struct Item::@260 xDCC_flag
Definition types.dox:41
UnkFlagStruct x47_flag
Definition types.dox:75
Vec3 vel
Definition types.dox:66
s32 x40
Definition types.dox:71
Vec3 prev_pos
Definition types.dox:63
s16 x3C_damage
Definition types.dox:69
s32 x10
Definition types.dox:57
HSD_GObj * x0_parent_gobj
Definition types.dox:43
UnkFlagStruct x44_flag
Definition types.dox:72
f32 facing_dir
Definition types.dox:67
UnkFlagStruct x46_flag
Definition types.dox:74
HSD_GObj * x4_parent_gobj2
Definition types.dox:47
Vec3 pos
Definition types.dox:60
UnkFlagStruct x45_flag
Definition types.dox:73
GroundOrAir x48_ground_or_air
Definition types.dox:76
enum_t hold_kind
Defines the behavior of the item, such as thrown and pickup.
Definition types.dox:55
s16 x3E
Definition types.dox:70
ItemKind kind
Definition types.dox:50
Definition types.h:41
u32 x1D
Definition types.h:68
u32 x14
Definition types.h:60
u32 xB
Definition types.h:54
u32 xF
Definition types.h:58
u32 x3
Definition types.h:46
u32 x2
Definition types.h:45
u32 x1C
Definition types.h:67
u32 x16
Definition types.h:62
u32 x1
Definition types.h:44
u32 xE
Definition types.h:57
u32 x15
Definition types.h:61
u32 x7
Definition types.h:50
u32 x9
Definition types.h:52
u32 x1E
Definition types.h:69
u32 x5
Definition types.h:48
u32 x0
Definition types.h:43
u32 xC
Definition types.h:55
u32 x13
Definition types.h:59
u32 xD
Definition types.h:56
struct flag32::@256 flags
u32 x1A
Definition types.h:65
u32 x19
Definition types.h:64
u32 x6
Definition types.h:49
u32 x17
Definition types.h:63
u32 x1F
Definition types.h:70
u32 x1B
Definition types.h:66
u32 xA
Definition types.h:53
u32 x4
Definition types.h:47
u32 x8
Definition types.h:51
Definition itCommonItems.h:73
Definition itCommonItems.h:102
Definition itCommonItems.h:21
Definition itCommonItems.h:639
Definition itCharItems.h:16
Definition itCommonItems.h:475
Definition itCommonItems.h:107
Definition itCharItems.h:29
Definition types.h:168
Eggs spawned on Yoshi stages / by Chansey.
Definition itCommonItems.h:234
Definition itCommonItems.h:498
Definition itCommonItems.h:484
Definition itCommonItems.h:277
Definition itCommonItems.h:286
Definition itCharItems.h:51
Definition itCharItems.h:189
Definition itCharItems.h:169
Definition itCommonItems.h:312
Definition itCommonItems.h:371
Definition itCommonItems.h:503
Definition itCommonItems.h:118
Definition itCommonItems.h:241
Definition itCommonItems.h:518
Definition itCharItems.h:200
Definition itCommonItems.h:607
Definition itCommonItems.h:1003
Definition itCommonItems.h:587
Definition itCommonItems.h:210
Definition itCommonItems.h:197
Definition itCommonItems.h:188
Definition itCharItems.h:137
Definition itCharItems.h:352
Definition itCharItems.h:281
Definition itCharItems.h:309
Definition itCharItems.h:407
Definition itCharItems.h:226
Definition itCommonItems.h:679
Definition itCommonItems.h:711
Definition itCommonItems.h:350
Definition itCommonItems.h:993
Definition itCommonItems.h:659
Definition itCharItems.h:412
Definition itCharItems.h:420
Definition itCommonItems.h:327
Definition itCommonItems.h:399
Definition itCommonItems.h:525
Definition itCommonItems.h:946
Definition itPKFlash.h:16
Definition itPKFlash.h:8
Definition itPKThunder.h:18
Definition itCharItems.h:448
Definition itCharItems.h:462
Definition itCharItems.h:457
Definition itCommonItems.h:434
Definition itCharItems.h:467
Definition itCharItems.h:472
Definition itCharItems.h:477
Definition itCommonItems.h:964
Definition itCommonItems.h:969
Definition itCommonItems.h:31
Definition itCommonItems.h:40
Definition itCommonItems.h:576
Definition itCommonItems.h:366
Definition itCommonItems.h:161
Definition itCommonItems.h:974
Definition itCharItems.h:499
Definition itCommonItems.h:298
Definition itCommonItems.h:941
Definition itCharItems.h:484
Definition itCommonItems.h:411
Definition types.h:190
u16 x0
Definition types.h:191
struct lbColl_8000A10C_arg0_t x1C
Definition types.h:198
s32 x14
Definition types.h:196
u8 * x4
Definition types.h:192
u8 * xC
Definition types.h:194
s32 x10
Definition types.h:195
UnkFlagStruct x18
Definition types.h:197
u16 x8
Definition types.h:193
Definition itCommonItems.h:730
Definition itCommonItems.h:784
Definition itCommonItems.h:811
Definition itCommonItems.h:816
Definition itCommonItems.h:848
Definition itCommonItems.h:928
Definition itCommonItems.h:830
Definition types.h:824
s32 unk8
Definition types.h:827
s32 unk10
Definition types.h:829
s32 unk4
Definition types.h:826
s32 unkC
Definition types.h:828
s32 unk18
Definition types.h:831
s32 unk14
Definition types.h:830
s32 unk0
Definition types.h:825
s32 unk1C
Definition types.h:832
Definition types.h:835
Item_GObj * x8
Definition types.h:838
bool x0
Definition types.h:836
ItemKind x4
Definition types.h:837
Definition types.h:841
u8 x0[32]
Definition types.h:842
Definition types.h:561
Definition types.h:454
Definition types.h:618
s32 filler
Definition types.h:619
Article * x0_article[0x9F]
Definition types.h:620
Definition types.h:759
s32 x1C
Definition types.h:760
void(* HSD_GObjInteraction)(HSD_GObj *gobj0, HSD_GObj *gobj1)
Definition forward.h:112
void(* HSD_GObjEvent)(HSD_GObj *gobj)
Definition forward.h:109
bool(* HSD_GObjPredicate)(HSD_GObj *gobj)
Definition forward.h:111
void(* GObj_RenderFunc)(HSD_GObj *gobj, int code)
Definition forward.h:106
Definition types.h:531
it_2E6A_ItemVars_1 it_2E6A_1
Definition types.h:562
itLinkHookshot_ItemVars linkhookshot
Definition types.h:576
itDrMarioPill_ItemVars drmariopill
Definition types.h:542
itLeadead_ItemVars leadead
Definition types.h:568
itLucky_ItemVars lucky
Definition types.h:539
itSamusGrapple_ItemVars samusgrapple
Definition types.h:590
itFlipper_ItemVars flipper
Definition types.h:546
itLinkBow_ItemVars linkbow
Definition types.h:575
itTaru_ItemVars taru
Definition types.h:595
itMasterHandLaser_ItemVars masterhandlaser
Definition types.h:602
itStar_ItemVars star
Definition types.h:593
itLGunBeam_ItemVars lgunbeam
Definition types.h:570
itFFlowerFlame_ItemVars fflowerflame
Definition types.h:545
itGShell_ItemVars zgshell
Definition types.h:552
itWhiteBea_ItemVars whitebea
Definition types.h:599
it_27B5_ItemVars it_27B5
Definition types.h:558
itSamusBomb_ItemVars samusbomb
Definition types.h:589
itPikachutJoltGround_ItemVars pikachujoltground
Definition types.h:583
itGShell_ItemVars gshell
Definition types.h:552
itLGunRay_ItemVars lgunray
Definition types.h:571
itZeldaDinFireExplode_ItemVars zeldadinfireexplode
Definition types.h:600
itTosakinto_ItemVars tosakinto
Definition types.h:606
itHassam_ItemVars hassam
Definition types.h:553
itFoods_ItemVars foods
Definition types.h:547
itTincle_ItemVars tincle
Definition types.h:596
itOctarock_ItemVars octarock
Definition types.h:581
itKinoko_ItemVars kinoko
Definition types.h:564
itCoin_ItemVars coin
Definition types.h:541
itClimbersBlizzard_ItemVars climbersblizzard
Definition types.h:540
itKirbyHammer_ItemVars kirbyhammer
Definition types.h:565
itLinkArrow_ItemVars linkarrow
Definition types.h:572
itWhispyApple_ItemVars whispyapple
Definition types.h:598
itZeldaDinFire_ItemVars zeldadinfire
Definition types.h:605
itSeakNeedleThrown_ItemVars seakneedlethrown
Definition types.h:591
itGShell_ItemVars zrshell
Definition types.h:552
itPKThunder_ItemVars pkthunder
Definition types.h:587
itPKFlushExplode_ItemVars pkflushexplode
Definition types.h:586
itNokoNoko_ItemVars nokonoko
Definition types.h:580
itUnk4_ItemVars unk4
Definition types.h:603
it_266F_ItemVars it_266F
Definition types.h:556
itGShell_ItemVars rshell
Definition types.h:552
itMBall_ItemVars mball
Definition types.h:577
itMaril_ItemVars maril
Definition types.h:537
itMsBomb_ItemVars msbomb
Definition types.h:579
itHeiho_ItemVars heiho
Definition types.h:555
itHeart_ItemVars heart
Definition types.h:554
it_2F28_ItemVars it_2F28
Definition types.h:563
itFFlower_ItemVars fflower
Definition types.h:544
itChicorita_ItemVars chicorita
Definition types.h:536
itMasterHandBullet_ItemVars masterhandbullet
Definition types.h:601
itFoxLaser_ItemVars foxlaser
Definition types.h:550
itKoopaFlame_ItemVars koopaflame
Definition types.h:608
itMDisable_ItemVars mdisable
Definition types.h:607
itDosei_ItemVars dosei
Definition types.h:535
itFoxIllusion_ItemVars foxillusion
Definition types.h:549
itSonans_ItemVars sonans
Definition types.h:592
itEgg_ItemVars egg
Definition types.h:543
itLinkBomb_ItemVars linkbomb
Definition types.h:573
itPeachTurnip_ItemVars peachturnip
Definition types.h:582
it_279D_ItemVars it_279D
Definition types.h:557
itTomato_ItemVars tomato
Definition types.h:597
itCapsule_ItemVars capsule
Definition types.h:534
itLGun_ItemVars lgun
Definition types.h:569
itPikachutJoltAir_ItemVars pikachujoltair
Definition types.h:584
itLinkBoomerang_ItemVars linkboomerang
Definition types.h:574
u8 _[0xFCC - 0xDD4]
Definition types.h:609
it_2E5A_ItemVars it_2E5A
Definition types.h:561
itLizardon_ItemVars lizardon
Definition types.h:538
itMato_ItemVars mato
Definition types.h:578
itFreeze_ItemVars freeze
Definition types.h:551
itFoxBlaster_ItemVars foxblaster
Definition types.h:548
itBox_ItemVars box
Definition types.h:533
itKusudama_ItemVars kusudama
Definition types.h:566
itPKFlush_ItemVars pkflush
Definition types.h:585
it_27CE_ItemVars it_27CE
Definition types.h:559
itSword_ItemVars sword
Definition types.h:594
itKlap_ItemVars klap
Definition types.h:567
itPokemon_ItemVars pokemon
Definition types.h:588
itStarRodStar_ItemVars starrodstar
Definition types.h:604
it_27CF_ItemVars it_27CF
Definition types.h:560
itBombHei_ItemVars bombhei
Definition types.h:532
Definition types.h:913
Definition common_structs.h:75