SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_LB_TYPES_H
2#define MELEE_LB_TYPES_H
3
4#include <placeholder.h>
5#include <platform.h>
6
7#include "lb/forward.h" // IWYU pragma: export
8#include <baselib/forward.h>
9
10#include <dolphin/card.h>
11#include <dolphin/gx.h>
12#include <dolphin/mtx.h>
13
14struct HitResult {
16
19
20 Vec3 pos;
21 Vec3 offset;
22 float size;
23};
24
25struct HitVictim {
27 u32 x4;
28};
29
30struct HitCapsule {
32 /* +4 */ u32 x4;
33 /* +8 */ u32 unk_count;
34 /* +C */ float damage;
35 /* +10 */ Vec3 b_offset;
36 /* +1C */ float scale;
37 /* +20 */ int kb_angle;
38 /* +24 */ u32 x24;
39 /* +28 */ u32 x28;
40 /* +2C */ u32 x2C;
41 /* +30 */ u32 element;
42 /* +34 */ int x34;
43 /* +38 */ int sfx_severity;
44 /* +3C */ enum_t sfx_kind;
45 /* +40 */ u16 x40_b0 : 1;
46 /* +40 */ u16 x40_b1 : 1;
47 /* +40 */ u16 x40_b2 : 1;
48 /* +40 */ u16 x40_b3 : 1;
49 /* +40 */ u16 x40_b4 : 8;
50 /* +41:4 */ u16 x41_b4 : 1;
51 /* +41:5 */ u16 x41_b5 : 1;
52 /* +41:6 */ u16 x41_b6 : 1;
53 /* +41:7 */ u16 x41_b7 : 1;
54 /* +42:0 */ u8 x42_b0 : 1;
55 /* +42:1 */ u8 x42_b1 : 1;
56 /* +42:2 */ u8 x42_b2 : 1;
57 /* +42:3 */ u8 x42_b3 : 1;
58 /* +42:4 */ u8 x42_b4 : 1;
59 /* +42:5 */ u8 x42_b5 : 1;
60 /* +42:6 */ u8 x42_b6 : 1;
61 /* +42:7 */ u8 x42_b7 : 1;
62 /* +43:0 */ u8 x43_b0 : 1;
63 /* +43:1 */ u8 x43_b1 : 1;
64 /* +43:2 */ u8 x43_b2 : 1;
65 /* +43:3 */ u8 x43_b3 : 1;
66 /* +43:4 */ u8 x43_b4 : 1;
67 /* +43:5 */ u8 x43_b5 : 1;
68 /* +43:6 */ u8 x43_b6 : 1;
69 /* +43:7 */ u8 x43_b7 : 1;
70 /* +44 */ u8 x44; // victims_1 count
71 /* +45 */ u8 x45; // victims_2 count
72 /* +46 */ u8 x46[0x48 - 0x46];
73 /* +48 */ HSD_JObj* jobj;
74 /* +4C */ Vec3 x4C;
75 /* +58 */ Vec3 x58;
76 /* +64 */ Vec3 hurt_coll_pos;
77 /* +70 */ float coll_distance;
78 /* +74 */ HitVictim victims_1[12];
79 /* +D4 */ HitVictim victims_2[12];
80 /* +134 */ union {
83 };
84};
85STATIC_ASSERT(sizeof(HitCapsule) == 0x138);
86
91 float scale;
92 HSD_JObj* bone; // 0x20
94 u8 x24_b1 : 1; // 0x24 0x40
95 u8 x24_b2 : 1; // 0x24 0x20
96 u8 x24_b3 : 1; // 0x24 0x10
97 u8 x24_b4 : 1; // 0x24 0x08
98 u8 x24_b5 : 1; // 0x24 0x04
99 u8 x24_b6 : 1; // 0x24 0x02
100 u8 x24_b7 : 1; // 0x24 0x01
101 Vec3 a_pos;
102 Vec3 b_pos;
103 int bone_idx; // 0x40
104};
105
108 HurtHeight height; // 0x44. 0 = low, 1 = mid, 2 = high
109 bool is_grabbable; // 0x48
110};
111
113
126
128 /* +0 */ int x0_bone_id;
129 /* +4 */ Vec3 x4_offset;
130 /* +10 */ float x10_size;
131};
132
134 int bone;
135 Vec3 pos;
136 float radius;
137 float dmg_mul;
138 float vel_mul;
139 u8 flags : 8;
140};
141
143 s32 unk0; // x00
144 s32 unk1; // x04
145 s32 unk2; // x08
146 s32 unk3; // x08
147 s32 unk4; // x10
148 s32 unk5; // x14
149 void* callback0; // x1C
150 void* callback1; // x20
151};
152
153typedef struct _ECBFlagStruct {
154 u8 b0 : 1;
155 u8 b1234 : 4;
156 u8 b5 : 1;
157 u8 b6 : 1;
158 u8 b7 : 1;
160
161typedef struct SurfaceData {
162 int index;
163 u32 unk;
164 Vec3 normal;
166
167typedef struct _itECB {
168 f32 top;
170 f32 right;
171 f32 left;
172} itECB;
173
174typedef struct _ftECB {
175 Vec2 top;
176 Vec2 bottom;
177 Vec2 right;
178 Vec2 left;
179} ftECB;
180
181struct CollData {
182 /* fp+6F0 */ HSD_GObj* x0_gobj;
183 /* fp+6F4 */ Vec3 cur_topn;
184 /* fp+700 */ Vec3 cur_topn_correct;
185 /* fp+70C */ Vec3 prev_topn;
186 /* fp+718 */ Vec3 x28_vec;
189 /* fp+726 */ s16 x36;
190 /* fp+728 */ s32 x38;
191 /* fp+72C */ s32 x3C;
192 /* fp+730 */ int ledge_id_unk0;
193 /* fp+734 */ int ledge_id_unk1;
194 /* fp+738 */ u32 x48;
195 /* fp+73C */ u32 x4C;
196 /* fp+740 */ float x50;
197 /* fp+744 */ float x54;
198 /* fp+748 */ float x58;
199 /* fp+74C */ float x5C;
200 /* fp+750 */ float x60;
201 /* fp+754 */ ftECB x64_ecb;
202 /* fp+774 */ ftECB x84_ecb;
204 /* fp+7B4 */ ftECB xC4_ecb;
205 /* fp+7D4 */ ftECB xE4_ecb;
207 /* fp+7F4 */ s32 x104;
208 /* fp+7F8 */ union {
209 /* fp+7F8 */ struct {
210 /* fp+7F8 */ HSD_JObj* x108_joint;
211 /* fp+7FC */ HSD_JObj* x10C_joint[6];
212 };
213 /* fp+7F8 */ struct {
214 /* fp+7F8 */ float x108_f32;
215 /* fp+7FC */ float x10C_f32;
216 /* fp+800 */ float x110_f32;
217 /* fp+804 */ float x114_f32;
218 /* fp+808 */ float x118_f32;
219 };
220 };
221 /* fp+814 */ float x124;
222 /* fp+818 */ float x128;
223 /* fp+81C */ float x12C;
224 /* fp+820 */ u32 x130_flags;
225 /* fp+824 */ s32 env_flags;
226 /* fp+828 */ s32 prev_env_flags;
227 /* fp+82C */ s32 x13C;
228 /* fp+830 */ Vec3 x140;
229 /* fp+83C */ SurfaceData floor;
231 /* fp+864 */ SurfaceData left_wall;
232 /* fp+878 */ SurfaceData ceiling;
233};
234
237 u32* addr;
238 size_t size;
239};
240
246
263
264// TODO: this struct might need to be smaller,
265// based on the number of iters in the struct-copy code
266// emitted by e.g. lbDvd_80018CF4
279
289
291 /* +0 */ char pad_0[0x11];
292 /* +11 */ s8 x11;
293 /* +12 */ s8 x12;
294 /* +13 */ char pad_13[0x18 - 0x13];
295 /* +18 */ int x18;
296};
297
299 /* 0x0 */ s32 unk_0;
300 /* 0x4 */ s32 unk_4;
301};
302STATIC_ASSERT(sizeof(struct lb_80432A68_38_t) == 0x8);
303
305 /* 0x000 */ UNK_T work_area;
306 /* 0x004 */ UNK_T lib_area;
307 /* 0x008 */ int chan;
308 /* 0x00C */ UNK_T unk_C;
309 /* 0x010 */ const char* unk_10;
310 /* 0x014 */ const char* unk_14;
311 /* 0x018 */ s32 unk_18;
312 /* 0x01C */ s32 unk_1C;
313 /* 0x020 */ UNK_T unk_20;
314 /* 0x024 */ int* unk_24;
315 /* 0x028 */ int* unk_28;
316 /* 0x02C */ char x2C[2];
317 /* 0x02C */ char x2E;
318 /* 0x02C */ char x2F[4];
319 /* 0x034 */ s32 unk_34;
320 /* 0x038 */ struct lb_80432A68_38_t unk_38[9];
321 /* 0x080 */ s32 unk_80;
322 /* 0x084 */ s32 memsize;
323 /* 0x088 */ s32 sectorsize;
324 /* 0x08C */ s32 unused_bytes;
325 /* 0x090 */ s32 unused_files;
326 /* 0x094 */ CARDFileInfo file_info;
327 /* 0x0A8 */ s32 unk_A8;
328 /* 0x098 */ u8 pad_AC[0xD0 - 0xAC]; /* maybe part of unk_80[0x123]? */
329 /* 0x0A8 */ int xD0[9];
330 /* 0x0A8 */ volatile int xF4[9];
331 /* 0x098 */ u8
332 pad_500[0x50C - 0xF4 - 9 * 4]; /* maybe part of unk_80[0x123]? */
333 /* 0x50C */ void (*x50C)(int);
334 /* 0x510 */ struct CardTask {
335 int x0;
336 int x4;
338 char* xC;
339 char x10[0x20];
340 u8 x18;
341 char x19[7];
342 u8 unk20[0x1C];
344 /* 0x8AC */ int x8AC;
345}; /* size = 0x8B0 */
346STATIC_ASSERT(sizeof(struct lb_80432A68_t) == 0x8B0);
347
349 /* +0 */ int x0;
350 /* +0 */ u8 x4[0x7B - 0x4];
351 /* +7B */ u8 x7B;
352};
353
356 struct {
357 s32 unk : 6;
358 s32 x : 13;
359 s32 yz : 13;
361 struct {
370 s32 x : 12;
371 s32 yz : 12;
373 struct {
374 u32 unk : 6;
375 u32 timer : 26;
377};
378STATIC_ASSERT(sizeof(union ColorOverlay_x8_t) == 0x4);
379
381 s32 x0_timer; // 0x0
382 s32 x4_pri; // 0x4 this colanims priority, lower = will persist
384 s32 xC_loop; // 0xc
385 s32* x10_ptr2; // 0x10
386 s32 x14; // 0x14
387 s32* x18_alloc; // 0x18
388 s32 x1c; // 0x1c
389 s32 x20; // 0x20
390 s32 x24; // 0x24
391 union {
394 } x28_colanim; // 0x28, id for the color animation in effect
395 GXColor x2C_hex; // 0x2C
396 f32 x30_color_red; // 0x30
397 f32 x34_color_green; // 0x34
398 f32 x38_color_blue; // 0x38
399 f32 x3C_color_alpha; // 0x3C
404 GXColor x50_light_color; // 0x50
405 f32 x54_light_red; // 0x54
406 f32 x58_light_green; // 0x58
407 f32 x5C_light_blue; // 0x5C
408 f32 x60_light_alpha; // 0x60
413 f32 x74_light_rot_x; // 0x74
414 f32 x78_light_rot_yz; // 0x78
415 u8 x7C_color_enable : 1; // 0x7c, 0x80
416 u8 x7C_flag2 : 1; // 0x7c, 0x40
417 u8 x7C_light_enable : 1; // 0x7c, 0x20
418 u8 x7C_flag4 : 1; // 0x7c, 0x10
419 u8 x7C_flag5 : 1; // 0x7c, 0x08
420 u8 x7C_flag6 : 1; // 0x7c, 0x04
421 u8 x7C_flag7 : 1; // 0x7c, 0x02
422 u8 x7C_flag8 : 1; // 0x7c, 0x01
423};
424STATIC_ASSERT(sizeof(struct ColorOverlay) == 0x80);
425
427 /* +0 */ u8 x0;
428 /* +1 */ u8 x1;
429 /* +2 */ s8 x2;
430 /* +3 */ s8 x3;
431 /* +4 */ Vec3 x4;
432 /* +10 */ f32 x10;
433 /* +14 */ f32 x14;
434 /* +18 */ f32 x18;
435 /* +1C */ f32 x1C;
436 /* +20 */ f32 unk_scale;
437 /* +24 */ f32 x24;
438 /* +28 */ int unk_count0;
439 /* +2C */ f32 unk_angle_float;
440 /* +30 */ int unk_angle_int;
441 /* +34 */ struct lb_80011A50_t* next;
442};
443
445 /* +0 */ Vec3 x0;
446 /* +C */ Vec3 xC;
447};
448STATIC_ASSERT(sizeof(struct lb_80014638_arg0_t) == 0x18);
449
451 /* +0 */ float unk_x;
452 /* +4 */ float unk_y;
453 /* +8 */ Vec3 x8;
454};
455STATIC_ASSERT(sizeof(struct lb_80014638_arg1_t) == 0x14);
456
458 void* unk;
461};
463
465 /* 0x00 */ f32 unk_0;
466 /* 0x04 */ f32 unk_4; /* inferred */
467 /* 0x08 */ s32 unk_8; /* inferred */
468 /* 0x0C */ s32 unk_C; /* inferred */
469 /* 0x10 */ s32 unk_10; /* inferred */
470 /* 0x14 */ s32 unk_14; /* inferred */
471 /* 0x18 */ f32 unk_18; /* inferred */
472 /* 0x1C */ s32 unk_1C; /* inferred */
473 /* 0x20 */ s32 unk_20; /* inferred */
474 /* 0x24 */ f32 unk_24; /* inferred */
475 /* 0x28 */ s32 unk_28; /* inferred */
476 /* 0x2C */ s32 unk_2C; /* inferred */
477 /* 0x30 */ s32 unk_30; /* inferred */
478 /* 0x34 */ f32 unk_34; /* inferred */
479 /* 0x38 */ f32 unk_38; /* inferred */
480};
481STATIC_ASSERT(sizeof(struct lb_00F9_UnkDesc1Inner) == 0x3C);
482
486
488 /* 0x00 */ f32 unk_0;
489 /* 0x04 */ f32 unk_4;
490 /* 0x08 */ s32 unk_8;
491 /* 0x0C */ f32 unk_C;
492 /* 0x10 */ f32 unk_10;
493 /* 0x14 */ f32 unk_14;
494 /* 0x18 */ f32 unk_18;
495 /* 0x1C */ s32 unk_1C;
496 /* 0x20 */ s32 unk_20;
497 /* 0x24 */ s32 unk_24;
498 /* 0x28 */ s32 unk_28;
499 /* 0x2C */ f32 unk_2C;
500 /* 0x30 */ s32 unk_30;
501 /* 0x34 */ s32 unk_34;
502 /* 0x38 */ f32 unk_38;
503 char pad_3C[0x78 - 0x3C];
510};
511
515
524STATIC_ASSERT(sizeof(union PolymorphicDesc) == 0x90);
525
528 /* 0x90 */ struct DynamicsData* next;
529}; /* size = 0x94 */
530STATIC_ASSERT(sizeof(struct DynamicsData) == 0x94);
531
532struct DynamicsDesc {
533 /* +0 */ struct DynamicsData* data;
534 /* +4 */ unsigned int count;
535 /* +8 */ Vec3 pos;
536};
537
542
544 char pad_0[0x94];
545};
546
548 /* +0 */ char pad_0[0xBE00];
549};
550STATIC_ASSERT(sizeof(struct lb_804D63A0_t) == 0xBE00);
551
553 /* +0 */ char pad_0[0x1C0];
554};
555STATIC_ASSERT(sizeof(struct lb_804D63A8_t) == 0x1C0);
556
558 float x0;
559 float x4;
560 Vec3 x8;
561 Vec3 x14;
562};
563
565 f32 timer; // 0x00
567 union {
568 u32* ptr[1];
569 union CmdUnion {
570 struct {
571 u32 code : 6;
572 u32 value : 26;
574 struct {
575 u32 code : 6;
576 u32 value : 26;
578 struct {
579 u32 code : 6;
580 u32 value : 26;
582 struct {
583 u32 x;
584 } Command_04_2;
585 struct {
586 union CmdUnion* ptr;
588 struct {
589 union CmdUnion* ptr;
591 struct {
592 u32 id : 6;
593 u32 param_1 : 8;
594 u32 param_2 : 18;
596 struct {
597 u32 code : 6;
598 u32 unk1 : 8;
599 u32 unk2 : 18;
601 struct {
602 u32 code : 6;
603 u32 unk0 : 2;
604 u32 unk1 : 4;
605 u32 unk2 : 1;
606 } unk1;
607 struct {
608 u32 code : 6;
609 u32 hit_idx : 26;
610 } unk2;
611 struct {
612 s32 unk0 : 7;
613 s32 unk1 : 25;
614 } unk3;
615 struct {
616 u16 unk0 : 6;
617 u16 unk1 : 8;
619 struct {
620 s32 unk0 : 14;
621 s32 unk1 : 18;
622 } unk5;
623 struct {
624 u8 unk0 : 6;
625 u8 unk1 : 1;
626 } unk6;
627 struct {
628 u32 unk0 : 6;
629 u32 unk1 : 26;
630 } unk7;
631 struct {
632 int unk0;
634 struct {
635 s32 unk0 : 6;
636 s32 unk1 : 7;
637 s32 unk2 : 7;
638 u32 unk3 : 12;
639 } part_anim;
640 struct {
641 s32 unk0 : 6;
642 u32 unk1 : 13;
643 u32 unk2 : 13;
644 } unk9;
645 struct {
646 s32 unk0 : 6;
647 u32 unk1 : 1;
648 u32 unk2 : 12;
649 u32 unk3 : 13;
651 struct {
652 s32 unk0 : 6;
653 u32 unk1 : 26;
654 } unk11;
655 struct {
656 u32 unk0 : 6;
657 u32 unk1 : 2;
658 u32 unk2 : 10;
659 u32 unk3 : 14;
660 } unk12;
661 struct {
662 u32 unk0 : 6;
663 u32 unk1 : 8;
664 u32 unk2 : 18;
665 } unk13;
666 struct {
667 u32 unk0 : 6;
668 u32 unk1 : 8;
670 struct {
671 u32 unk0 : 6;
672 u32 unk1 : 26;
673 } unk15;
674 struct {
675 u32 unk0 : 6;
676 s32 unk3 : 1;
677 s32 unk4 : 25;
678 } unk16;
679 struct {
680 u32 unk0 : 6;
681 s32 unk1 : 26;
682 } unk17;
683 struct {
684 u32 unk0 : 6;
687 struct {
688 u32 unk0 : 6;
689 u32 unk1 : 26;
690 } unk19;
691 struct {
692 u32 unk0 : 6;
693 u32 unk1 : 26;
695 struct {
696 u32 unk0 : 6;
697 u32 unk1 : 1;
698 u32 unk2 : 8;
699 } unk21;
700 struct {
701 u32 code : 6;
702 u32 idx : 3;
703 u32 value : 23;
704 } set_hitbox_damage;
705 struct {
706 u32 code : 6;
707 u32 idx : 3;
708 u32 value : 23;
709 } set_hitbox_scale;
710 struct {
711 u32 code : 6;
712 u32 idx : 24;
713 u32 type : 1;
714 u32 value : 1;
715 } unk22;
716 struct {
717 u32 code : 6;
718 u32 idx : 2;
719 u32 value : 24;
720 } set_cmd_var;
721 struct {
722 u32 code : 6;
723 u32 bone_idx : 8;
724 u32 state : 18;
725 } set_hurt_state;
726 struct {
727 u32 code : 6;
728 u32 disabled : 26;
729 } unk23;
730 struct {
731 u32 code : 6;
732 u32 unk0 : 26;
734 struct {
735 u32 code : 6;
736 s32 unk0 : 7;
737 s32 unk1 : 19;
738 } unk25;
739 struct {
740 u32 code : 6;
741 u32 idx : 3;
742 u32 unk0 : 23;
743 } unk26_0;
744 struct {
745 u32 unk0 : 9;
746 u32 hit_x24 : 9;
747 u32 hit_x28 : 9;
748 } unk26_1;
749 struct {
750 u32 hit_x2C : 9;
751 u32 element : 4;
753 u32 sfx_kind : 4;
754 } unk26_2;
755 struct {
756 u32 code : 6;
757 u32 value : 26;
758 } unk27;
759 struct {
760 u32 code : 6;
761 u32 value : 26;
763 struct {
764 u32 code : 6;
765 u32 value : 26;
766 } unk29;
767 struct {
768 u32 code : 6;
769 u32 b : 1;
770 s32 i0 : 7;
771 s32 i1 : 7;
772 s32 f : 11;
774 struct {
775 u32 code : 6;
776 u32 unk0 : 10;
777 u32 unk1 : 16;
778 } unk31;
779 struct {
780 u32 code : 6;
781 u32 unk0 : 13;
782 u32 unk1 : 13;
783 } unk32;
784 struct {
785 u32 code : 6;
786 u32 unk0 : 13;
787 u32 unk1 : 13;
788 } unk33;
789 struct {
790 u32 opcode : 6;
791 u32 boneId : 8;
794 u32 useUnkBone : 1;
795 u32 unk1 : 15;
796 } test1;
797 struct {
798 u32 gfxID : 16;
799 u32 unkFloat : 16;
800 } test2;
801 struct {
802 s16 offsetZ : 16;
803 s16 offsetY : 16;
804 } test3;
805 struct {
806 s16 offsetX : 16;
807 u16 rangeZ : 16;
808 } test4;
809 struct {
810 u16 rangeY : 16;
811 u16 rangeX : 16;
812 } test5;
813 }* u;
814 };
816 union CmdUnion*
817 event_return[3]; // 0x10 - Array Size is purely made-up for now
819 u32 unk_x18; // 0x18
820};
821
822struct LbShadow {
823 u8 x0_b0 : 1;
824 u8 x0_b1 : 1;
825 u8 x0_b2 : 1;
826 u8 x0_b3 : 1;
827 u8 x0_b4 : 1;
828 u8 x0_b5 : 1;
829 u8 x0_b6 : 1;
830 u8 x0_b7 : 1;
832};
833
834#endif
int unk0
Definition grbattle.c:67
int unk4
Definition grbattle.c:68
s32 unk30
Definition grflatzone.c:76
s32 unk10
Definition grflatzone.c:68
s32 unk24
Definition grflatzone.c:73
s32 unk8
Definition grflatzone.c:66
s32 unk14
Definition grflatzone.c:69
s32 unk20
Definition grflatzone.c:72
f32 unk28
Definition grflatzone.c:74
s32 unk18
Definition grflatzone.c:70
void Command_05(CommandInfo *info)
Definition lbcommand.c:57
void Command_03(CommandInfo *info)
SetLoop.
Definition lbcommand.c:34
void Command_00(CommandInfo *info)
Reset.
Definition lbcommand.c:14
void Command_02(CommandInfo *info)
AsynchronousTimer.
Definition lbcommand.c:27
void Command_07(CommandInfo *info)
Goto.
Definition lbcommand.c:71
void Command_09(CommandInfo *info)
Definition lbcommand.c:84
HurtHeight
Definition forward.h:79
HurtCapsuleState
Definition forward.h:33
HitCapsuleState
Definition forward.h:70
#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:127
int x0_bone_id
Definition types.h:128
float x10_size
Definition types.h:130
Vec3 x4_offset
Definition types.h:129
Definition types.h:538
DynamicsDesc dyn_desc
Definition types.h:540
enum_t bone_id
Definition types.h:539
Definition types.h:181
u32 x48
Definition types.h:194
s32 x38
Definition types.h:190
float x10C_f32
Definition types.h:215
float x124
Definition types.h:221
ftECB x64_ecb
Definition types.h:201
Vec3 cur_topn
Definition types.h:183
Vec3 prev_topn
Definition types.h:185
SurfaceData right_wall
Definition types.h:230
HSD_JObj * x10C_joint[6]
Definition types.h:211
float x5C
Definition types.h:199
Vec3 cur_topn_correct
Definition types.h:184
float x128
Definition types.h:222
HSD_JObj * x108_joint
Definition types.h:210
float x60
Definition types.h:200
ftECB xA4_ecbCurrCorrect
Definition types.h:203
HSD_GObj * x0_gobj
Definition types.h:182
ftECB xE4_ecb
Definition types.h:205
int ledge_id_unk0
Definition types.h:192
ftECB x84_ecb
Definition types.h:202
float x108_f32
Definition types.h:214
s32 x3C
Definition types.h:191
int ledge_id_unk1
Definition types.h:193
Vec3 x140
Definition types.h:228
float x58
Definition types.h:198
u32 x130_flags
Definition types.h:224
SurfaceData ceiling
Definition types.h:232
float x12C
Definition types.h:223
SurfaceData left_wall
Definition types.h:231
float x118_f32
Definition types.h:218
s32 x104
Definition types.h:207
s32 prev_env_flags
Definition types.h:226
Vec3 x28_vec
Definition types.h:186
s32 env_flags
Definition types.h:225
s16 x36
Definition types.h:189
u32 x4C
Definition types.h:195
float x114_f32
Definition types.h:217
float x110_f32
Definition types.h:216
float x54
Definition types.h:197
ECBFlagStruct x35_flags
Definition types.h:188
SurfaceData floor
Definition types.h:229
s32 x13C
Definition types.h:227
float x50
Definition types.h:196
ECBFlagStruct x34_flags
Definition types.h:187
ftECB xC4_ecb
Definition types.h:204
Definition types.h:348
int x0
Definition types.h:349
u8 x4[0x7B - 0x4]
Definition types.h:350
u8 x7B
Definition types.h:351
Definition types.h:380
f32 x6C_lightblend_blue
Definition types.h:411
union ColorOverlay_x8_t * x8_ptr1
Definition types.h:383
s32 x24
Definition types.h:390
s32 * x10_ptr2
Definition types.h:385
f32 x60_light_alpha
Definition types.h:408
u8 x7C_flag7
Definition types.h:421
f32 x48_colorblend_blue
Definition types.h:402
f32 x5C_light_blue
Definition types.h:407
u8 x7C_flag8
Definition types.h:422
s32 x0_timer
Definition types.h:381
f32 x58_light_green
Definition types.h:406
GXColor x2C_hex
Definition types.h:395
s32 x20
Definition types.h:389
f32 x78_light_rot_yz
Definition types.h:414
f32 x70_lightblend_alpha
Definition types.h:412
f32 x68_lightblend_green
Definition types.h:410
f32 x38_color_blue
Definition types.h:398
f32 x74_light_rot_x
Definition types.h:413
u8 x7C_flag5
Definition types.h:419
f32 x54_light_red
Definition types.h:405
GXColor x50_light_color
Definition types.h:404
u8 x7C_flag2
Definition types.h:416
u8 x7C_color_enable
Definition types.h:415
u8 x7C_light_enable
Definition types.h:417
f32 x34_color_green
Definition types.h:397
f32 x64_lightblend_red
Definition types.h:409
f32 x4C_colorblend_alpha
Definition types.h:403
s32 * x18_alloc
Definition types.h:387
s32 x4_pri
Definition types.h:382
s32 x14
Definition types.h:386
enum_t i
Definition types.h:392
union ColorOverlay::@253 x28_colanim
s32 xC_loop
Definition types.h:384
f32 x3C_color_alpha
Definition types.h:399
struct ColorOverlay_UnkInner * ptr
Definition types.h:393
u8 x7C_flag6
Definition types.h:420
f32 x30_color_red
Definition types.h:396
u8 x7C_flag4
Definition types.h:418
s32 x1c
Definition types.h:388
f32 x44_colorblend_green
Definition types.h:401
f32 x40_colorblend_red
Definition types.h:400
Definition types.h:564
u32 opcode
Definition types.h:790
u32 loop_count_dup
Definition types.h:818
u32 value
Definition types.h:572
s32 i0
Definition types.h:770
u16 rangeX
Definition types.h:811
u32 loop_count
Definition types.h:815
u8 unk0
Bits 0~5.
Definition types.h:624
u8 unk1
Bit 6.
Definition types.h:625
u32 useUnkBone
Definition types.h:794
u32 * ptr[1]
Definition types.h:568
u32 boneId
Definition types.h:791
s16 offsetX
Definition types.h:806
s32 unk1
Bits 7~31.
Definition types.h:613
u32 b
Definition types.h:769
u16 rangeY
Definition types.h:810
u32 unk2
Bits 14~31.
Definition types.h:599
s16 offsetY
Definition types.h:803
u32 id
Definition types.h:592
u32 code
Bits 0~5.
Definition types.h:571
u32 disabled
Definition types.h:728
s32 i1
Definition types.h:771
u32 element
Definition types.h:751
f32 timer
Definition types.h:565
s32 damage_amount
Definition types.h:685
u16 rangeZ
Definition types.h:807
u32 sfx_kind
Definition types.h:753
u32 hit_x28
Definition types.h:747
u32 unk0
Bits 6~7.
Definition types.h:603
s32 unk4
Definition types.h:677
union CmdUnion * ptr
Definition types.h:586
u32 destroyOnStateChange
Definition types.h:793
u32 hit_idx
Bits 6~31.
Definition types.h:609
s32 unk0
Bits 0~6.
Definition types.h:612
u16 unk0
Bits 0~5.
Definition types.h:616
u32 sfx_severity
Definition types.h:752
u32 param_2
Definition types.h:594
u32 unk1
Bits 6~13.
Definition types.h:598
u32 state
Definition types.h:724
union CmdUnion * event_return[3]
Definition types.h:816
f32 frame_count
Definition types.h:566
u32 x
Definition types.h:583
s32 unk2
Definition types.h:637
u32 bone_idx
Definition types.h:723
u32 hit_x2C
Definition types.h:750
u32 hit_x24
Definition types.h:746
int unk0
Definition types.h:632
s32 f
Definition types.h:772
u32 param_1
Definition types.h:593
u32 gfxID
Definition types.h:798
u32 unkFloat
Definition types.h:799
s32 unk3
Definition types.h:676
union CommandInfo::@254::CmdUnion * u
u32 idx
Definition types.h:702
u16 unk1
Bits 6~13.
Definition types.h:617
u32 unk_x18
Definition types.h:819
u32 useCommonBoneIDs
Definition types.h:792
s16 offsetZ
Definition types.h:802
u32 unk3
Definition types.h:638
u32 type
Definition types.h:713
Definition types.h:526
struct DynamicsData * next
Definition types.h:528
union PolymorphicDesc desc
Definition types.h:527
Definition types.dox:1
Vec3 pos
Definition types.dox:5
struct DynamicsData * data
Definition types.h:533
unsigned int count
Definition types.h:534
Definition types.h:153
u8 b7
Definition types.h:158
u8 b6
Definition types.h:157
u8 b5
Definition types.h:156
u8 b0
Definition types.h:154
u8 b1234
Definition types.h:155
Definition types.h:106
HurtCapsule capsule
Definition types.h:107
HurtHeight height
Definition types.h:108
bool is_grabbable
Definition types.h:109
Definition types.h:457
void * unk
Definition types.h:458
u8 unk5
Definition types.h:460
u8 unk4
Definition types.h:459
Definition types.h:235
size_t size
Definition types.h:238
struct HSD_AllocEntry * next
Definition types.h:236
u32 * addr
Definition types.h:237
was using this to try and fix some matches, unsuccessfully
Definition gobj.h:26
Definition jobj.h:107
Definition shadow.h:16
Definition types.h:30
float coll_distance
Definition types.h:77
u8 x42_b7
Definition types.h:61
u16 x41_b5
Definition types.h:51
u16 x40_b1
Definition types.h:46
int sfx_severity
Definition types.h:43
u8 x42_b5
Definition types.h:59
u8 x44
Definition types.h:70
u8 x43_b3
Definition types.h:65
u8 x42_b4
Definition types.h:58
HitVictim victims_1[12]
Definition types.h:78
u8 x45
Definition types.h:71
u16 x40_b2
Definition types.h:47
u8 x42_b6
Definition types.h:60
u32 unk_count
Definition types.h:33
u8 x42_b0
Definition types.h:54
u16 x40_b0
Definition types.h:45
u8 x43_b0
Definition types.h:62
float damage
Definition types.h:34
u16 x40_b4
Definition types.h:49
u32 x24
Definition types.h:38
u32 x28
Definition types.h:39
u32 x4
Definition types.h:32
enum_t sfx_kind
Definition types.h:44
u16 x41_b4
Definition types.h:50
u8 x42_b2
Definition types.h:56
Vec3 x4C
Definition types.h:74
int kb_angle
Definition types.h:37
u8 x43_b2
Definition types.h:64
u32 element
Definition types.h:41
u32 x2C
Definition types.h:40
int x34
Definition types.h:42
u8 hit_grabbed_victim_only
Definition types.h:82
u16 x41_b6
Definition types.h:52
u8 x42_b3
Definition types.h:57
u8 x43_b7
Definition types.h:69
Vec3 x58
Definition types.h:75
Vec3 hurt_coll_pos
Definition types.h:76
Vec3 b_offset
Definition types.h:35
u16 x41_b7
Definition types.h:53
u8 x43_b6
Definition types.h:68
u8 x43_b1
Definition types.h:63
u16 x40_b3
Definition types.h:48
HitCapsuleState state
Definition types.h:31
u8 x46[0x48 - 0x46]
Definition types.h:72
HSD_GObj * owner
Definition types.h:81
float scale
Definition types.h:36
u8 x43_b5
Definition types.h:67
u8 x42_b1
Definition types.h:55
u8 x43_b4
Definition types.h:66
HSD_JObj * jobj
Definition types.h:73
HitVictim victims_2[12]
Definition types.h:79
Definition types.h:14
Vec3 offset
Definition types.h:21
Vec3 pos
Definition types.h:20
u8 skip_update_pos
Follows attach bone position if toggled OFF.
Definition types.h:18
float size
Definition types.h:22
HSD_JObj * bone
Definition types.h:15
Definition types.h:25
UNK_T victim
Definition types.h:26
u32 x4
Definition types.h:27
Definition types.h:87
Vec3 b_offset
Definition types.h:90
Vec3 b_pos
Definition types.h:102
u8 x24_b6
Definition types.h:99
Vec3 a_offset
Definition types.h:89
int bone_idx
Definition types.h:103
u8 x24_b4
Definition types.h:97
u8 x24_b1
Definition types.h:94
float scale
Definition types.h:91
HurtCapsuleState state
Definition types.h:88
HSD_JObj * bone
Definition types.h:92
Vec3 a_pos
Definition types.h:101
u8 x24_b5
Definition types.h:98
u8 x24_b3
Definition types.h:96
u8 skip_update_pos
Definition types.h:93
u8 x24_b7
Definition types.h:100
u8 x24_b2
Definition types.h:95
Definition types.h:822
u8 x0_b2
Definition types.h:825
HSD_Shadow * shadow
Definition types.h:831
u8 x0_b4
Definition types.h:827
u8 x0_b6
Definition types.h:829
u8 x0_b0
Definition types.h:823
u8 x0_b3
Definition types.h:826
u8 x0_b1
Definition types.h:824
u8 x0_b5
Definition types.h:828
u8 x0_b7
Definition types.h:830
Definition types.h:241
u32 char_id
Definition types.h:242
u8 color
Definition types.h:243
u8 x5
Definition types.h:244
Definition types.h:269
u8 major_id
Definition types.h:270
u32 stage_id
Definition types.h:274
PreloadCacheSceneEntry entries[8]
Definition types.h:275
u8 field2_0x9
Definition types.h:271
u8 field3_0xa
Definition types.h:272
u8 field4_0xb
Definition types.h:273
Definition types.h:267
struct PreloadCacheScene::GameCache game_cache
u32 is_heap_persistent[2]
Definition types.h:268
s32 major_scene_changes
Definition types.h:277
Definition types.h:280
PreloadCacheScene scene
Definition types.h:282
PreloadCacheScene new_scene
Definition types.h:283
UNK_T x974
Definition types.h:287
PreloadEntry entries[80]
Definition types.h:284
int preloaded
Definition types.h:286
s32 persistent_heaps
Definition types.h:281
s32 persistent_heap
Definition types.h:285
Definition types.h:247
s8 load_state
Definition types.h:251
s32 effect_index
Definition types.h:261
HSD_AllocEntry * archive
Definition types.h:260
u8 field9_0xb
Definition types.h:257
s16 load_score
Definition types.h:255
u8 unknown004
Definition types.h:252
s16 entry_num
Definition types.h:254
u8 field5_0x5
Definition types.h:253
u32 size
Definition types.h:258
s8 state
Definition types.h:248
HSD_AllocEntry * raw_data
Definition types.h:259
s8 type
Definition types.h:249
s8 heap
Definition types.h:250
u8 field8_0xa
Definition types.h:256
Definition types.h:114
u8 x20_behavior
Definition types.h:124
u32 x0_bone_id
Definition types.h:115
Vec3 x8_offset
Definition types.h:117
float x14_size
Definition types.h:118
float x1C_speed_mul
Definition types.h:120
float x18_damage_mul
Definition types.h:119
s32 x4_max_damage
Definition types.h:116
Definition types.h:133
Vec3 pos
Definition types.h:135
u8 flags
Definition types.h:139
int bone
Definition types.h:134
float dmg_mul
Definition types.h:137
float vel_mul
Definition types.h:138
float radius
Definition types.h:136
Definition types.h:161
Vec3 normal
Definition types.h:164
u32 unk
Definition types.h:163
int index
Definition types.h:162
Definition types.h:512
HSD_JObj * jobj
Definition types.h:513
Definition types.h:174
Vec2 top
Definition types.h:175
Vec2 right
Definition types.h:177
Vec2 left
Definition types.h:178
Vec2 bottom
Definition types.h:176
Definition types.h:167
f32 top
Definition types.h:168
f32 bottom
Definition types.h:169
f32 right
Definition types.h:170
f32 left
Definition types.h:171
Definition types.h:557
Vec3 x8
Definition types.h:560
float x0
Definition types.h:558
Vec3 x14
Definition types.h:561
float x4
Definition types.h:559
Definition types.h:142
s32 unk5
Definition types.h:148
void * callback1
Definition types.h:150
s32 unk4
Definition types.h:147
s32 unk1
Definition types.h:144
s32 unk3
Definition types.h:146
s32 unk2
Definition types.h:145
void * callback0
Definition types.h:149
s32 unk0
Definition types.h:143
Definition types.h:487
f32 unk_0
Definition types.h:488
int unk_80
Definition types.h:506
f32 unk_8C
Definition types.h:509
f32 unk_2C
Definition types.h:499
f32 unk_18
Definition types.h:494
int unk_7C
Definition types.h:505
s32 unk_30
Definition types.h:500
s32 unk_34
Definition types.h:501
f32 unk_C
Definition types.h:491
f32 unk_4
Definition types.h:489
s32 unk_24
Definition types.h:497
f32 unk_10
Definition types.h:492
f32 unk_88
Definition types.h:508
int unk_78
Definition types.h:504
f32 unk_38
Definition types.h:502
char pad_3C[0x78 - 0x3C]
Definition types.h:503
s32 unk_1C
Definition types.h:495
s32 unk_28
Definition types.h:498
s32 unk_8
Definition types.h:490
f32 unk_84
Definition types.h:507
s32 unk_20
Definition types.h:496
f32 unk_14
Definition types.h:493
Definition types.h:464
s32 unk_C
Definition types.h:468
s32 unk_14
Definition types.h:470
f32 unk_24
Definition types.h:474
s32 unk_28
Definition types.h:475
f32 unk_38
Definition types.h:479
s32 unk_8
Definition types.h:467
f32 unk_4
Definition types.h:466
s32 unk_20
Definition types.h:473
f32 unk_18
Definition types.h:471
f32 unk_34
Definition types.h:478
s32 unk_2C
Definition types.h:476
s32 unk_1C
Definition types.h:472
s32 unk_30
Definition types.h:477
s32 unk_10
Definition types.h:469
f32 unk_0
Definition types.h:465
Definition types.h:483
struct lb_00F9_UnkDesc1Inner array[2]
Definition types.h:484
Definition types.h:543
char pad_0[0x94]
Definition types.h:544
Definition types.h:426
struct lb_80011A50_t * next
Definition types.h:441
u8 x1
Definition types.h:428
s8 x3
Definition types.h:430
f32 x24
Definition types.h:437
f32 x10
Definition types.h:432
f32 x18
Definition types.h:434
int unk_angle_int
Definition types.h:440
int unk_count0
Definition types.h:438
u8 x0
Definition types.h:427
f32 unk_scale
Definition types.h:436
f32 x1C
Definition types.h:435
s8 x2
Definition types.h:429
f32 x14
Definition types.h:433
f32 unk_angle_float
Definition types.h:439
Vec3 x4
Definition types.h:431
Definition types.h:290
char pad_0[0x11]
Definition types.h:291
int x18
Definition types.h:295
s8 x11
Definition types.h:292
s8 x12
Definition types.h:293
char pad_13[0x18 - 0x13]
Definition types.h:294
Definition types.h:444
Vec3 xC
Definition types.h:446
Vec3 x0
Definition types.h:445
Definition types.h:450
float unk_y
Definition types.h:452
float unk_x
Definition types.h:451
Vec3 x8
Definition types.h:453
Definition types.h:298
s32 unk_0
Definition types.h:299
s32 unk_4
Definition types.h:300
Definition types.h:334
char x19[7]
Definition types.h:341
char * xC
Definition types.h:338
char x10[0x20]
Definition types.h:339
u8 unk20[0x1C]
Definition types.h:342
int x0
Definition types.h:335
int x4
Definition types.h:336
u8 x18
Definition types.h:340
UNK_T x8
Definition types.h:337
Definition types.h:304
UNK_T work_area
Definition types.h:305
s32 memsize
Definition types.h:322
const char * unk_14
Definition types.h:310
int * unk_24
Definition types.h:314
s32 unk_34
Definition types.h:319
UNK_T lib_area
Definition types.h:306
s32 unk_18
Definition types.h:311
char x2F[4]
Definition types.h:318
int chan
Definition types.h:307
s32 unk_80
Definition types.h:321
struct lb_80432A68_t::CardTask task_array[11]
s32 unk_1C
Definition types.h:312
volatile int xF4[9]
Definition types.h:330
struct lb_80432A68_38_t unk_38[9]
Definition types.h:320
u8 pad_AC[0xD0 - 0xAC]
Definition types.h:328
UNK_T unk_C
Definition types.h:308
char x2E
Definition types.h:317
s32 unused_files
Definition types.h:325
int x8AC
Definition types.h:344
int * unk_28
Definition types.h:315
void(* x50C)(int)
Definition types.h:333
const char * unk_10
Definition types.h:309
u8 pad_500[0x50C - 0xF4 - 9 *4]
Definition types.h:332
s32 unused_bytes
Definition types.h:324
s32 sectorsize
Definition types.h:323
s32 unk_A8
Definition types.h:327
char x2C[2]
Definition types.h:316
UNK_T unk_20
Definition types.h:313
CARDFileInfo file_info
Definition types.h:326
int xD0[9]
Definition types.h:329
Definition types.h:547
char pad_0[0xBE00]
Definition types.h:548
Definition types.h:552
char pad_0[0x1C0]
Definition types.h:553
Definition types.h:354
u32 unk
Definition types.h:374
u32 light_enable
Definition types.h:368
GXColor light_color
Definition types.h:355
struct ColorOverlay_x8_t::@251 light_rot2
u32 x0_0
Definition types.h:362
u32 x0_7
Definition types.h:369
s32 unk
Definition types.h:357
u32 timer
Definition types.h:375
u32 x0_2
Definition types.h:364
u32 x0_1
Definition types.h:363
struct ColorOverlay_x8_t::@250 light_rot1
s32 x
Definition types.h:358
u32 x0_4
Definition types.h:366
s32 yz
Definition types.h:359
u32 x0_5
Definition types.h:367
u32 x0_3
Definition types.h:365
Definition types.h:516
struct ftDynamics_UnkDesc ft_unk
Definition types.h:520
struct HurtCapsule hurt
Definition types.h:522
struct lb_00F9_UnkDesc1 lb_unk1
Definition types.h:519
u8 _[0x90]
Definition types.h:517
struct AbsorbDesc absorb
Definition types.h:521
struct lb_00F9_UnkDesc0 lb_unk0
Definition types.h:518