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