SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_MN_TYPES_H
2#define MELEE_MN_TYPES_H
3
4#include "platform.h"
5
6#include "mn/forward.h" // IWYU pragma: export
7
8#include <baselib/sislib.h>
9
10#ifdef M2C
11struct mnInfo_GObj {
12 /* +0 */ u16 classifier;
13 /* +2 */ u8 p_link;
14 /* +3 */ u8 gx_link;
15 /* +4 */ u8 p_priority;
16 /* +5 */ u8 render_priority;
17 /* +6 */ u8 obj_kind;
18 /* +7 */ u8 user_data_kind;
19 /* +8 */ mnInfo_GObj* next;
20 /* +C */ mnInfo_GObj* prev;
21 /* +10 */ mnInfo_GObj* next_gx;
22 /* +14 */ mnInfo_GObj* prev_gx;
23 /* +18 */ HSD_GObjProc* proc;
24 /* +1C */ void (*rendered)(mnInfo_GObj* gobj, s32 code);
25 /* +20 */ u64 gxlink_prios;
26 /* +28 */ HSD_JObj* hsd_obj;
27 /* +2C */ MnInfoData* user_data;
28 /* +30 */ void (*user_data_remove_func)(mnInfo_GObj* data);
29 /* +34 */ void* x34_unk;
30};
31
32struct mnSoundTest_GObj {
33 /* +0 */ u16 classifier;
34 /* +2 */ u8 p_link;
35 /* +3 */ u8 gx_link;
36 /* +4 */ u8 p_priority;
37 /* +5 */ u8 render_priority;
38 /* +6 */ u8 obj_kind;
39 /* +7 */ u8 user_data_kind;
40 /* +8 */ HSD_GObj* next;
41 /* +C */ HSD_GObj* prev;
42 /* +10 */ HSD_GObj* next_gx;
43 /* +14 */ HSD_GObj* prev_gx;
44 /* +18 */ HSD_GObjProc* proc;
45 /* +1C */ GObj_RenderFunc render_cb;
46 /* +20 */ u64 gxlink_prios;
47 /* +28 */ void* hsd_obj;
48 /* +2C */ soundtest_user_data* user_data;
49 /* +30 */ void (*user_data_remove_func)(void* data);
50 /* +34 */ void* x34_unk;
51};
52#endif
53
61STATIC_ASSERT(sizeof(struct Menu) == 0x8);
62
68
69#ifdef M2C
70typedef struct Menu_GObj Menu_GObj;
71struct Menu_GObj {
72 /* +0 */ u16 classifier;
73 /* +2 */ u8 p_link;
74 /* +3 */ u8 gx_link;
75 /* +4 */ u8 p_priority;
76 /* +5 */ u8 render_priority;
77 /* +6 */ u8 obj_kind;
78 /* +7 */ u8 user_data_kind;
79 /* +8 */ Menu_GObj* next;
80 /* +C */ Menu_GObj* prev;
81 /* +10 */ Menu_GObj* next_gx;
82 /* +14 */ Menu_GObj* prev_gx;
83 /* +18 */ HSD_GObjProc* proc;
84 /* +1C */ void (*rendered)(Menu_GObj* gobj, s32 code);
85 /* +20 */ u64 gxlink_prios;
86 /* +28 */ HSD_JObj* hsd_obj;
87 /* +2C */ Menu* user_data;
88 /* +30 */ void (*user_data_remove_func)(Fighter* data);
89 /* +34 */ void* x34_unk;
90};
91#else
92typedef struct HSD_GObj Menu_GObj;
93#endif
94
96 /*0x00*/ s8 c_kind;
97 /*0x01*/ u8 slot_type;
98 /*0x02*/ s8 stocks; // stocks
99 /*0x03*/ u8 color; // color
100 /*0x04*/ u8 slot; // port
101 /*0x05*/ s8 x5; // spawnpos32
102 /*0x06*/ s8 spawn_dir; // spawn direction
103 /*0x07*/ u8 sub_color; // subcolor
104 /*0x08*/ s8 handicap; // handicap
105 /*0x09*/ u8 team; // team
106 /*0x0A*/ u8 xA; // nametag
107 /*0x0B*/ u8 xB;
108 /*0x0C*/ u8 xC_b0 : 1;
110 u8 xC_b2 : 1;
112 u8 xC_b4 : 1;
116 /*0x0D*/ u8 xD_b0 : 1;
124 /*0x0E*/ u8 xE;
125 /*0x0F*/ u8 cpu_level; // CPU level
126 /*0x10*/ u16 x10;
127 /*0x12*/ u16 x12;
128 /*0x14*/ u16 hp;
129 /*0x18*/ float x18;
130 /*0x1C*/ float x1C;
131 /*0x20*/ float x20;
132};
133
135 /* 0x00 */ s8 arr1[0x1C];
136 /* 0x1C */ s8 arr2[0x1C];
137};
138STATIC_ASSERT(sizeof(struct lbl_8046B668_t) == 0x38);
139
140typedef struct PerfLabelLine {
141 /* 0x00 */ struct PerfLabelLine* next;
142 /* 0x04 */ s32 unk_04;
143 /* 0x08 */ char text[0x80];
144} PerfLabelLine; /* size = 0x88 */
146
147typedef struct lbl_8046B378_t {
148 /* 0x000 */ PerfLabelLine line0;
149 /* 0x088 */ PerfLabelLine line1;
150} lbl_8046B378_t; /* size = 0x110 */
152
154 u32 x0_0 : 3; // match mode? 1 = stock mode, 2 = coin mode?
157 u32 x0_7 : 1;
158
165 u32 timer_shows_hours : 1; // false=65:00.00, true=1:05:00.00
166
167 u32 x1_7 : 1;
168
172 u32 x2_3 : 1;
180
189
190 u32 x4_0 : 1;
198
207
209 u8 x7; // end graphic / SFX type
213 s8 xB; // item frequency
214 s8 xC; // SD penalty
216 u16 xE; // StKind
217
218 u32 x10; // time limit
221 u32 x1C_pad[(0x20 - 0x1C) / 4];
222
223 u64 x20; // item mask
224 int x28;
225 float x2C;
226 float x30; // damage ratio
227 float x34; // game speed
229 int);
234 int);
239 void);
243 void (*x44)(void); // on VS match start callback
244 void (*x48)(void); // ingame pre-frame callback
245 void (*x4C)(void); // ingame post-frame callback
246 void (*x50)(u8); // on VS match end callback. Passed a MatchOutcome
247 struct {
248 u8 pad_x0[0x10];
251 }* x54;
253 u8 pad_x5C[0x60 - 0x5C];
254};
255
260
262 /* +0 */ s8 loser;
264 /* +2 */ s8 winner;
265 /* +3 */ u8 unk_0x3;
266 /* +4 */ u8 unk_0x4;
267 /* +5 */ u8 unk_0x5;
268 /* +6 */ u8 unk_0x6;
269 /* +7 */ u8 unk_0x7;
271};
272
299
307
309 u16 mode_ffa_frame; // 0x00 - Anim frame used for top-left mode texture
310 u16 mode_teams_frame; // 0x02 - Anim frame used for top-left mode texture
311 int enter_sfx; // 0x04 - Announcer sfx when entering CSS
312};
313
319
347
349 /* 00 */ SELKIND_CAPTAIN, // Captain Falcon (Captain)
350 /* 01 */ SELKIND_DONKEY, // Donkey Kong (Donkey)
351 /* 02 */ SELKIND_FOX, // Fox
352 /* 03 */ SELKIND_GAMEWATCH, // Mr. Game & Watch (GameWatch)
353 /* 04 */ SELKIND_KIRBY, // Kirby
354 /* 05 */ SELKIND_KOOPA, // Bowser (Koopa)
355 /* 06 */ SELKIND_LINK, // Link
356 /* 07 */ SELKIND_LUIGI, // Luigi
357 /* 08 */ SELKIND_MARIO, // Mario
358 /* 09 */ SELKIND_MARS, // Marth (Mars)
359 /* 0A */ SELKIND_MEWTWO, // Mewtwo
360 /* 0B */ SELKIND_NESS, // Ness
361 /* 0C */ SELKIND_PEACH, // Peach
362 /* 0D */ SELKIND_PIKACHU, // Pikachu
363 /* 0E */ SELKIND_POPONANA, // Ice Climbers (Popo & Nana)
364 /* 0F */ SELKIND_PURIN, // Jigglypuff (Purin)
365 /* 10 */ SELKIND_SAMUS, // Samus
366 /* 11 */ SELKIND_YOSHI, // Yoshi
367 /* 12 */ SELKIND_ZELDA_SEAK, // Zelda + Sheik
368 /* 13 */ SELKIND_FALCO, // Falco
369 /* 14 */ SELKIND_CLINK, // Young Link (CLink)
370 /* 15 */ SELKIND_DRMARIO, // Dr. Mario
371 /* 16 */ SELKIND_EMBLEM, // Roy (Emblem)
372 /* 17 */ SELKIND_PICHU, // Pichu
373 /* 18 */ SELKIND_GANON, // Ganondorf (Ganon)
376
377struct CSSIcon {
378 u8 ft_hudindex; // 0x00 - used for getting combo count @ 8025C0C4
379 u8 char_kind; // 0x01 - icons external ID
380 u8 state; // 0x02 - 0x0 Not Unlocked, 0x01 Unlocked, 0x02 Unlocked and disp
381 u8 anim_timer; // 0x03 - 0xC when char is chosen
382 u8 joint_id_vs; // 0x04 - Vs Icon Bg Jobj ID
383 u8 joint_id_1p; // 0x05 - Vs Icon Bg Jobj ID
384 int sfx; // 0x08
385 float bound_l; // 0x0C
386 float bound_r; // 0x10
387 float bound_u; // 0x14
388 float bound_d; // 0x18
389};
390
392 u8 gnw_name[0x1C]; // 0x0
394};
395
396struct CSSDoor {
399 u8 team_joint; // 0x02
400 u8 door_joint; // 0x03
401 u8 bg_joint; // 0x04
402 u8 player_indicator_joint; // 0x05 - Nametag window joint id (to scroll and
403 // choose a name)
404 u8 slidername_joint; // 0x06 - Slider name joint
405 u8 cpuslider_joint; // 0x07 - Used when only CPU is showing
406 u8 cpuslider2_joint; // 0x08 - Used when handicap is also showing
407 u8 selected_since_load; // 0x09 - Determines when player selected since the
408 // CSS loaded
409
410 u8 team; // 0x0A
411 u8 p_kind; // 0x0B - PlayerKind, 0x0 = HMN, 0x1 = CPU, 0x3 = Closed
413 u8 costume; // 0x0D
414 u8 sel_icon; // 0x0E - Icon this player has selected
420
421 float togglebtn_left; // 0x14 - HMN button bound
422 float togglebtn_right; // 0x18 - HMN button bound
423 float teambtn_left; // 0x1C - Team button bound
424 float teambtn_right; // 0x20 - Team button bound
425};
426
430 float x8; // 0x08
431 float scroll_amt; // 0x0C
432 float scroll_force; // 0x10
433 int timer; // 0x14
434 u8 next_tag; // 0x18
435 u8 port; // 0x19
436 u8 state; // 0x1A
437 u8 use_tag; // 0x1B
438};
439
440struct CSSTag {
441 CSSTagData* data; // 0x00
442 u8 x4; // 0x04
443 u8 list_joint; // 0x05
445 u8 x7; // 0x07
447 u8 x9; // 0x09
448 u8 xa; // 0x0A
449 u8 xb; // 0x0B
450};
451
452struct CSSKOStar {
453 HSD_Text* text; // 0x00
454 float x4; // 0x04
455 u8 joint; // 0x08
456 u8 joint2; // 0x09
457 int xc; // 0x0C
458 int x10; // 0x10
459 int x14; // 0x14
460 int x18; // 0x18
461 int x1c; // 0x1C
462};
463
492
494 u8 xf0[5];
498 float xf8;
499 float xfc;
500 float x100;
501 float x104;
502 float x108;
503 float x10c;
504 CSSKOStar ko_stars[4]; // 0x110
505};
506
508 char pad_0[0x96000];
509};
510STATIC_ASSERT(sizeof(struct mnSnap_804A0B90_t) == 0x96000);
511
512struct SSSData {
513 /* +00 */ u8 unk_stage;
514 /* +01 */ u8 x1;
515 /* +02 */ u8 no_lras;
517 /* +04 */ u8 start_game;
518 /* +08 */ VsModeData data;
519};
520
522 /* +00 */ f32 start_frame;
523 /* +04 */ f32 end_frame;
524 /* +08 */ f32 loop_frame;
525};
526
528struct Diagram {
529 /* 0x00 */ u8 saved_menu;
530 /* 0x01 */ u8 pad_1;
531 /* 0x02 */ u16 saved_selection;
532 /* 0x04 */ u8 anim_state;
533 /* 0x05 */ u8 pad_5[3];
534 /* 0x08 */ HSD_JObj* jobjs[13];
535 /* 0x3C */ u16
537 /* 0x3E */ u16 name_cursor_pos;
538 /* 0x40 */ HSD_GObj* popup_gobj;
539 /* 0x44 */ u8 is_name_mode;
540 /* 0x45 */ u8 pad_45[3];
543};
544
552
555struct Diagram2 {
556 /* 0x00 */ u8 saved_menu;
557 /* 0x01 */ u8 pad_1;
558 /* 0x02 */ u16 saved_selection;
559 /* 0x04 */ u8 anim_state;
560 /* 0x05 */ u8 pad_5[3];
561 /* 0x08 */ HSD_JObj* x8;
562 /* 0x0C */ HSD_JObj* xC;
563 /* 0x10 */ HSD_JObj* x10;
565 /* 0x18 */ HSD_JObj* x18;
566 /* 0x1C */ HSD_JObj* x1C;
568 /* 0x24 */ HSD_JObj* x24;
569 /* 0x28 */ HSD_JObj* icon_parent;
570 /* 0x2C */ HSD_JObj* row0_ref;
571 /* 0x30 */ HSD_JObj* row1_ref;
572 /* 0x34 */ HSD_JObj* down_arrow;
573 /* 0x38 */ HSD_JObj* up_arrow;
574 /* 0x3C */ HSD_JObj* left_arrow;
575 /* 0x40 */ HSD_JObj* right_arrow;
576 /* 0x44 */ u16 scroll_offset;
579 /* 0x48 */ u8 is_name_mode;
580 /* 0x49 */ u8 pad_49[3];
581 /* 0x4C */ HSD_Text* row_labels[10];
582 /* 0x74 */ HSD_Text* row_values[10];
583 /* 0x9C */ HSD_Text* row_icons[10];
584 /* 0xC4 */ HSD_Text* header_text;
585};
586
589struct Diagram3 {
590 /* 0x00 */ u8 saved_menu;
591 /* 0x01 */ u8 cursor_row;
592 /* 0x02 */ u8 pad_2[2];
593 /* 0x04 */ u8 scroll_offset;
594 /* 0x05 */ u8 anim_state;
595 /* 0x06 */ u8 is_name_mode;
596 /* 0x07 */ u8 pad_7;
597 /* 0x08 */ HSD_JObj* jobjs[10];
598 /* 0x30 */ HSD_Text* row_labels[10];
599 /* 0x58 */ HSD_Text* title_text;
600 /* 0x5C */ HSD_Text* value_text;
601 /* 0x60 */ HSD_Text* row_icons[5];
602 /* 0x74 */ HSD_GObj* popup_gobj;
603};
604
651
652typedef struct GlyphVariantEntry {
653 /* 0x00 */ u8 selection;
654 /* 0x01 */ u8 pad_01[3];
655 /* 0x04 */ HSD_JObj* jobjs[7];
656 /* 0x20 */ HSD_Text* text;
657} GlyphVariantEntry; /* size = 0x24 */
658
659typedef struct NameNewEntry {
660 /* 0x00 */ u8 x0;
661 /* 0x01 */ u8 x1;
662 /* 0x02 */ u8 x2;
663 /* 0x03 */ u8 x3;
664 /* 0x04 */ HSD_JObj* jobjs[19];
665 /* 0x50 */ u8 mode;
666 /* 0x51 */ u8 last_key_sel;
667 /* 0x52 */ u8 pad_52[2];
669 /* 0x58 */ u8 cursor_pos;
670 /* 0x59 */ u8 name_index;
671 /* 0x5A */ u8 auto_history[5];
672 /* 0x5F */ u8 pad_5F;
673 /* 0x60 */ HSD_Text* key_text;
675 /* 0x68 */ HSD_Text* desc_text;
676} NameNewEntry; /* size = 0x6C */
677
680 /* +00 */ u8 scroll_idx;
681 /* +04 */ u32 anim_timer;
683 /* +08 */ HSD_Text*
685 /* +18 */ HSD_Text* right_column[4];
687};
688
702
703#endif
HSD_Pad prev
Definition dbinit.c:24
unsigned long u32
Definition types.h:9
float f32
Definition types.h:13
unsigned short int u16
Definition types.h:7
unsigned long long int u64
Definition types.h:11
HSD_JObj * x54
Definition gm_19EF.c:85
signed char s8
Definition hsd_3B2B.h:3
signed long s32
Definition hsd_3B2B.h:1
unsigned char u8
Definition hsd_3B2B.h:2
#define STATIC_ASSERT(cond)
Definition platform.h:132
static unsigned long int next
Definition rand.c:3
CSSMatchType
Definition types.h:273
@ TRAINING_MODE
Definition types.h:297
@ VS_STAMINA
Definition types.h:276
@ VS_MELEE
Definition types.h:274
@ STADIUM_CRUEL_MELEE
Definition types.h:296
@ STADIUM_15_MIN_MELEE
Definition types.h:294
@ STADIUM_TARGET
Definition types.h:289
@ STADIUM_MULTIMAN_10
Definition types.h:291
@ VS_SLOWMO
Definition types.h:284
@ STADIUM_3_MIN_MELEE
Definition types.h:293
@ STADIUM_MULTIMAN_100
Definition types.h:292
@ VS_TINY
Definition types.h:279
@ VS_INVISIBLE
Definition types.h:280
@ VS_FIXED_CAMERA
Definition types.h:281
@ REG_ADVENTURE
Definition types.h:286
@ STADIUM_HOMERUN
Definition types.h:290
@ VS_CAMERA
Definition types.h:275
@ EVENT_MATCH
Definition types.h:288
@ REG_ALLSTAR
Definition types.h:287
@ VS_LIGHTNING
Definition types.h:283
@ STADIUM_ENDLESS_MELEE
Definition types.h:295
@ VS_GIANT
Definition types.h:278
@ VS_SINGLE_BUTTON
Definition types.h:282
@ VS_SUDDEN_DEATH
Definition types.h:277
@ REG_CLASSIC
Definition types.h:285
CSSIconJointId
Definition types.h:320
@ ICONJOINT_DONKEY
Definition types.h:332
@ ICONJOINT_DRMARIO
Definition types.h:321
@ ICONJOINT_YOSHI
Definition types.h:331
@ ICONJOINT_PIKACHU
Definition types.h:341
@ ICONJOINT_PURIN
Definition types.h:342
@ ICONJOINT_PEACH
Definition types.h:330
@ ICONJOINT_FALCO
Definition types.h:322
@ ICONJOINT_LINK
Definition types.h:340
@ ICONJOINT_KIRBY
Definition types.h:337
@ ICONJOINT_PICHU
Definition types.h:325
@ ICONJOINT_CAPTAIN
Definition types.h:333
@ ICONJOINT_MEWTWO
Definition types.h:343
@ ICONJOINT_KOOPA
Definition types.h:329
@ ICONJOINT_MARIO
Definition types.h:327
@ ICONJOINT_GANON
Definition types.h:323
@ ICONJOINT_NESS
Definition types.h:335
@ ICONJOINT_MARS
Definition types.h:345
@ ICONJOINT_POPONANA
Definition types.h:336
@ ICONJOINT_GAMEWATCH
Definition types.h:344
@ ICONJOINT_ZELDA
Definition types.h:339
@ ICONJOINT_FOX
Definition types.h:334
@ ICONJOINT_CLINK
Definition types.h:324
@ ICONJOINT_SAMUS
Definition types.h:338
@ ICONJOINT_EMBLEM
Definition types.h:326
@ ICONJOINT_LUIGI
Definition types.h:328
VSRecordsStatType
VS Records stat types for mnDiagram2 (page 2 of VS Records menu).
Definition types.h:608
@ VSSTAT_DAMAGE_TAKEN
Total damage received (FD+0x44 / ND+0x100).
Definition types.h:614
@ VSSTAT_SD_COUNT
Self-destructs (FD+0x34 / ND+0xF0).
Definition types.h:611
@ VSSTAT_TOTAL_FALLS
Total falls (deaths).
Definition types.h:610
@ VSSTAT_TOTAL_KOS
Total KOs across all opponents.
Definition types.h:609
@ VSSTAT_LOSSES
Total losses (FD+0x52 / ND+0x10E).
Definition types.h:621
@ VSSTAT_AVG_PLAYERS
Average player count (calculated).
Definition types.h:626
@ VSSTAT_COINS_LOST
Coins lost to opponents (FD+0x74 / ND+0x130).
Definition types.h:639
@ VSSTAT_SECOND_PLAYED
2nd most played fighter (Name mode only, icon)
Definition types.h:643
@ VSSTAT_WALK_DISTANCE
Distance walked in ft (FD+0x5C / ND+0x118).
Definition types.h:627
@ VSSTAT_LEAST_PLAYED
Least played fighter (Name mode only, icon).
Definition types.h:645
@ VSSTAT_DAMAGE_DEALT
Total damage dealt (FD+0x40 / ND+0xFC).
Definition types.h:613
@ VSSTAT_PEAK_HEIGHT
Max height reached in ft (FD+0x68 / ND+0x124).
Definition types.h:633
@ VSSTAT_FALL_DISTANCE
Distance fallen in ft (FD+0x64 / ND+0x120).
Definition types.h:631
@ VSSTAT_MATCH_COUNT
Total matches played (FD+0x4E / ND+0x10A).
Definition types.h:618
@ VSSTAT_RUN_DISTANCE
Distance run in ft (FD+0x60 / ND+0x11C).
Definition types.h:629
@ VSSTAT_PLAY_TIME
Total play time in frames (FD+0x54 / ND+0x110).
Definition types.h:622
@ VSSTAT_DAMAGE_RECOVERED
Damage healed (FD+0x48 / ND+0x104).
Definition types.h:616
@ VSSTAT_COINS_COLLECTED
Coins picked up (FD+0x6C / ND+0x128).
Definition types.h:635
@ VSSTAT_HIT_PERCENTAGE
Attack accuracy % (calculated).
Definition types.h:612
@ VSSTAT_PLAY_PERCENTAGE
% of total VS play time (calculated)
Definition types.h:624
@ VSSTAT_COUNT_NAME
Number of stats in name mode.
Definition types.h:649
@ VSSTAT_COINS_SWIPED
Coins stolen from opponents (FD+0x70 / ND+0x12C).
Definition types.h:637
@ VSSTAT_VICTORIES
Total wins (FD+0x50 / ND+0x10C).
Definition types.h:620
@ VSSTAT_PEAK_DAMAGE
Highest % survived (FD+0x4C / ND+0x108).
Definition types.h:617
@ VSSTAT_COUNT_FIGHTER
Number of stats in fighter mode.
Definition types.h:648
@ VSSTAT_MOST_PLAYED
Most played fighter (Name mode only, icon).
Definition types.h:641
CSSIconState
Definition types.h:314
@ ICONSTATE_LOCKED
Definition types.h:315
@ ICONSTATE_TEMP
Definition types.h:316
@ ICONSTATE_UNLOCKED
Definition types.h:317
SelectableCharacterKind
Definition types.h:348
@ SELKIND_MEWTWO
Definition types.h:359
@ SELKIND_MARS
Definition types.h:358
@ SELKIND_LINK
Definition types.h:355
@ SELKIND_CLINK
Definition types.h:369
@ SELKIND_GAMEWATCH
Definition types.h:352
@ SELKIND_YOSHI
Definition types.h:366
@ SELKIND_EMBLEM
Definition types.h:371
@ SELKIND_COUNT
Definition types.h:374
@ SELKIND_MARIO
Definition types.h:357
@ SELKIND_SAMUS
Definition types.h:365
@ SELKIND_GANON
Definition types.h:373
@ SELKIND_DONKEY
Definition types.h:350
@ SELKIND_PURIN
Definition types.h:364
@ SELKIND_FALCO
Definition types.h:368
@ SELKIND_NESS
Definition types.h:360
@ SELKIND_FOX
Definition types.h:351
@ SELKIND_POPONANA
Definition types.h:363
@ SELKIND_KOOPA
Definition types.h:354
@ SELKIND_DRMARIO
Definition types.h:370
@ SELKIND_PEACH
Definition types.h:361
@ SELKIND_PICHU
Definition types.h:372
@ SELKIND_LUIGI
Definition types.h:356
@ SELKIND_CAPTAIN
Definition types.h:349
@ SELKIND_KIRBY
Definition types.h:353
@ SELKIND_ZELDA_SEAK
Definition types.h:367
@ SELKIND_PIKACHU
Definition types.h:362
Definition types.h:521
f32 end_frame
Definition types.h:523
f32 start_frame
Definition types.h:522
f32 loop_frame
if this is -0.1f, dont loop
Definition types.h:524
Definition types.h:300
u8 pending_scene_change
Definition types.h:303
u8 match_type
Definition types.h:302
u8 * ko_star_counts
Definition types.h:304
VsModeData data
Definition types.h:305
u16 unk_0x0
1p port?
Definition types.h:301
Definition types.h:396
u8 cpuslider_joint
Definition types.h:405
u8 is_hold_cpu_slider
Definition types.h:418
u8 emblem_joint
Definition types.h:397
u8 team
Definition types.h:410
u8 p_kind_prev
Definition types.h:412
u8 team_joint
Definition types.h:399
float togglebtn_left
Definition types.h:421
u8 is_hold_handicap_slider
Definition types.h:419
u8 selected_since_load
Definition types.h:407
u8 costume_joint
Definition types.h:398
u8 door_joint
Definition types.h:400
u8 player_indicator_joint
Definition types.h:402
u8 p_kind
Definition types.h:411
u8 sel_icon
Definition types.h:414
float teambtn_right
Definition types.h:424
u8 slidername_joint
Definition types.h:404
float togglebtn_right
Definition types.h:422
u8 bg_joint
Definition types.h:401
u8 sel_icon_prev
Definition types.h:415
u8 dooranim_timer
Definition types.h:416
u8 cpuslider2_joint
Definition types.h:406
float teambtn_left
Definition types.h:423
u8 costume
Definition types.h:413
u8 slideranim_timer
Definition types.h:417
Definition types.h:493
float xfc
Definition types.h:499
float xf8
Definition types.h:498
float x108
Definition types.h:502
CSSKOStar ko_stars[4]
Definition types.h:504
u8 stocks
Definition types.h:495
u8 xf0[5]
Definition types.h:494
float x104
Definition types.h:501
u8 xf6
Definition types.h:496
float x10c
Definition types.h:503
u8 xf7
Definition types.h:497
float x100
Definition types.h:500
Definition types.h:464
u8 xc8
Definition types.h:475
u8 xce
Definition types.h:481
u8 name_list_joint
Definition types.h:472
CSSTag tags[4]
Definition types.h:466
u8 xc1
Definition types.h:468
float xdb
Definition types.h:486
u8 xc7
Definition types.h:474
float xd7
Definition types.h:485
float xe3
Definition types.h:488
float xcf
Definition types.h:483
float xdf
Definition types.h:487
u8 tag_box_joint
Definition types.h:473
u8 scroll_flag
Definition types.h:482
u8 xc9
Definition types.h:476
u8 xc0
Definition types.h:467
u8 xcb
Definition types.h:478
u8 xc3
Definition types.h:470
u8 xcd
Definition types.h:480
float xe7
Definition types.h:489
u8 xc2
Definition types.h:469
float xeb
Definition types.h:490
u8 xc4
Definition types.h:471
HSD_Text * xd3
Definition types.h:484
u8 xca
Definition types.h:477
u8 xcc
Definition types.h:479
CSSDoor doors[4]
Definition types.h:465
Definition types.h:377
u8 char_kind
Definition types.h:379
int sfx
Definition types.h:384
float bound_u
Definition types.h:387
u8 anim_timer
Definition types.h:381
float bound_l
Definition types.h:385
float bound_r
Definition types.h:386
u8 state
Definition types.h:380
float bound_d
Definition types.h:388
u8 joint_id_vs
Definition types.h:382
u8 ft_hudindex
Definition types.h:378
u8 joint_id_1p
Definition types.h:383
Definition types.h:391
CSSModeInfo mode_info[24]
Definition types.h:393
u8 gnw_name[0x1C]
Definition types.h:392
Definition types.h:452
int x10
Definition types.h:458
int x18
Definition types.h:460
float x4
Definition types.h:454
HSD_Text * text
Definition types.h:453
int x1c
Definition types.h:461
int xc
Definition types.h:457
int x14
Definition types.h:459
u8 joint2
Definition types.h:456
u8 joint
Definition types.h:455
Definition types.h:308
u16 mode_ffa_frame
Definition types.h:309
u16 mode_teams_frame
Definition types.h:310
int enter_sfx
Definition types.h:311
Definition types.h:427
TextGlyphTexture * name_ls
Definition types.h:429
u8 use_tag
Definition types.h:437
float scroll_force
Definition types.h:432
int timer
Definition types.h:433
u8 port
Definition types.h:435
TextGlyphTexture * text
Definition types.h:428
float x8
Definition types.h:430
u8 next_tag
Definition types.h:434
float scroll_amt
Definition types.h:431
u8 state
Definition types.h:436
Definition types.h:440
u8 list_joint
Definition types.h:443
u8 xb
Definition types.h:449
u8 kostar_text_joint
Definition types.h:446
u8 name_jointl
Definition types.h:444
u8 xa
Definition types.h:448
CSSTagData * data
Definition types.h:441
u8 x9
Definition types.h:447
u8 x4
Definition types.h:442
u8 x7
Definition types.h:445
Definition types.h:63
u8 pad[3]
Definition types.h:65
u32 stat_value
Definition types.h:66
u8 selkind
Definition types.h:64
User data for VS Records page 2 (character details screen) Total size: 0xC8 bytes.
Definition types.h:555
u8 pad_5[3]
Definition types.h:560
HSD_JObj * name_mode_header
shown in name mode
Definition types.h:567
HSD_JObj * x1C
Definition types.h:566
HSD_Text * row_icons[10]
optional stat icons
Definition types.h:583
HSD_JObj * x8
Definition types.h:561
HSD_Text * row_labels[10]
stat category label text
Definition types.h:581
u8 saved_menu
Saved menu ID on entry.
Definition types.h:556
u8 selected_name_idx
name mode selection
Definition types.h:578
u8 selected_fighter_idx
fighter mode selection
Definition types.h:577
HSD_JObj * down_arrow
hidden when at bottom
Definition types.h:572
HSD_JObj * x24
Definition types.h:568
HSD_JObj * xC
Definition types.h:562
u8 pad_49[3]
Definition types.h:580
u16 scroll_offset
current scroll position
Definition types.h:576
u8 anim_state
0 = idle, 1 = intro anim playing
Definition types.h:559
u8 pad_1
Definition types.h:557
HSD_Text * row_values[10]
stat value text
Definition types.h:582
u8 is_name_mode
0 = fighter, 1 = name mode
Definition types.h:579
HSD_JObj * row1_ref
row 1 position reference
Definition types.h:571
HSD_JObj * right_arrow
hidden at last selection
Definition types.h:575
HSD_JObj * up_arrow
hidden when scroll_offset == 0
Definition types.h:573
HSD_JObj * row0_ref
row 0 position reference
Definition types.h:570
HSD_JObj * left_arrow
hidden at first selection
Definition types.h:574
HSD_JObj * icon_parent
parent for character icons
Definition types.h:569
HSD_JObj * x18
Definition types.h:565
u16 saved_selection
Saved hovered selection on entry.
Definition types.h:558
HSD_Text * header_text
entity name header
Definition types.h:584
HSD_JObj * fighter_mode_header
shown in fighter mode
Definition types.h:564
HSD_JObj * x10
Definition types.h:563
User data for VS Records page 3 (stat rankings screen) Total size: 0x78 bytes.
Definition types.h:589
u8 cursor_row
Definition types.h:591
u8 scroll_offset
Definition types.h:593
u8 pad_2[2]
Definition types.h:592
u8 anim_state
Definition types.h:594
u8 saved_menu
Definition types.h:590
HSD_GObj * popup_gobj
Definition types.h:602
HSD_Text * row_labels[10]
Definition types.h:598
HSD_Text * row_icons[5]
Definition types.h:601
HSD_JObj * jobjs[10]
Definition types.h:597
HSD_Text * title_text
Definition types.h:599
u8 is_name_mode
Definition types.h:595
HSD_Text * value_text
Definition types.h:600
u8 pad_7
Definition types.h:596
User data for VS Records diagram screen (mnDiagram).
Definition types.h:528
u8 pad_1
Definition types.h:530
u16 name_cursor_pos
Name mode cursor (row << 8 | col).
Definition types.h:537
u8 saved_menu
Saved menu ID on entry.
Definition types.h:529
HSD_GObj * popup_gobj
Popup window GObj (or NULL).
Definition types.h:538
u16 fighter_cursor_pos
Fighter mode cursor (row << 8 | col).
Definition types.h:536
u8 pad_45[3]
Definition types.h:540
HSD_JObj * jobjs[13]
JObj references, filled by lb_80011E24.
Definition types.h:534
HSD_Text * col_header_text
Column header text object.
Definition types.h:541
u8 anim_state
0 = idle, 1 = intro anim playing
Definition types.h:532
u16 saved_selection
Saved hovered selection on entry.
Definition types.h:531
u8 pad_5[3]
Definition types.h:533
u8 is_name_mode
0 = fighter mode, 1 = name mode
Definition types.h:539
HSD_Text * row_header_text
Row header text object.
Definition types.h:542
Definition types.h:1134
Definition types.h:652
u8 pad_01[3]
Definition types.h:654
HSD_JObj * jobjs[7]
Definition types.h:655
u8 selection
Definition types.h:653
HSD_Text * text
Definition types.h:656
Definition gobjproc.h:8
Definition gobj.h:24
Definition jobj.h:107
Definition sislib.h:46
Definition types.h:545
float start_frame
Definition types.h:547
void(* think)(HSD_GObj *)
Definition types.h:550
u16 * description_indices
array of sis idx's for each selection
Definition types.h:548
AnimLoopSettings * anim_loop
Definition types.h:546
u8 selection_count
number of options/cursors in the menu
Definition types.h:549
Definition types.h:54
u8 unk1
Definition types.h:56
u8 unk2
Definition types.h:57
HSD_Text * text
Definition types.h:59
u8 cursor
Definition types.h:55
u8 unk3
Definition types.h:58
seems like each menu probably has its own struct, and isnt just Menu
Definition types.h:679
HSD_Text * left_column[4]
date and time of achievement unlock
Definition types.h:684
HSD_Text * right_column[4]
achievement
Definition types.h:685
u8 scroll_idx
Definition types.h:680
u32 anim_timer
decrements from 10 when transitioning from main menu to special menu
Definition types.h:681
HSD_Text * description
Definition types.h:686
Definition types.h:659
u8 mode
Definition types.h:665
u8 x0
Definition types.h:660
u8 cursor_pos
Definition types.h:669
HSD_JObj * jobjs[19]
Definition types.h:664
u8 x2
Definition types.h:662
u8 last_key_sel
Definition types.h:666
u8 auto_history[5]
Definition types.h:671
u8 name_index
Definition types.h:670
u8 pad_5F
Definition types.h:672
HSD_Text * name_disp_text
Definition types.h:674
HSD_Text * desc_text
Definition types.h:675
u8 pad_52[2]
Definition types.h:667
HSD_GObj * variant_gobj
Definition types.h:668
u8 x1
Definition types.h:661
HSD_Text * key_text
Definition types.h:673
u8 x3
Definition types.h:663
Definition types.h:140
s32 unk_04
Definition types.h:142
struct PerfLabelLine * next
Definition types.h:141
char text[0x80]
Definition types.h:143
Definition types.h:95
s8 spawn_dir
Definition types.h:102
u8 xD_b3
Definition types.h:119
float x20
Definition types.h:131
s8 x5
Definition types.h:101
u8 xC_b1
Definition types.h:109
u8 xD_b1
Definition types.h:117
u16 x12
Definition types.h:127
u8 xB
Definition types.h:107
u16 x10
Definition types.h:126
u8 xD_b2
Definition types.h:118
float x1C
defense ratio
Definition types.h:130
s8 handicap
Definition types.h:104
u8 color
Definition types.h:99
u8 xD_b5
Definition types.h:121
u8 team
Definition types.h:105
u8 xC_b5
Definition types.h:113
u8 xD_b6
Definition types.h:122
u8 xC_b0
rumble enabled
Definition types.h:108
u8 xA
Definition types.h:106
u8 xD_b0
Definition types.h:116
u8 xC_b3
Definition types.h:111
u8 xE
CPU type.
Definition types.h:124
u8 sub_color
Definition types.h:103
u8 xC_b7
Definition types.h:115
u8 cpu_level
Definition types.h:125
u8 xC_b4
invisible
Definition types.h:112
u8 xC_b2
metal
Definition types.h:110
u8 slot
Definition types.h:100
u8 slot_type
uses Gm_PKind values
Definition types.h:97
u8 xC_b6
Definition types.h:114
u8 xD_b4
Definition types.h:120
u16 hp
hit points, for stamina mode
Definition types.h:128
s8 stocks
Definition types.h:98
u8 xD_b7
Definition types.h:123
float x18
offense ratio
Definition types.h:129
s8 c_kind
uses CharacterKind (CKIND_*) values
Definition types.h:96
Definition types.h:512
s8 force_stage_id
Definition types.h:516
u8 start_game
Definition types.h:517
u8 unk_stage
Definition types.h:513
VsModeData data
Definition types.h:518
u8 no_lras
Definition types.h:515
u8 x1
Definition types.h:514
Definition types.h:256
PlayerInitData players[6]
Definition types.h:258
StartMeleeRules rules
Definition types.h:257
Definition types.h:153
u8 x9
Definition types.h:211
u32 x4_4
Definition types.h:194
u8 x10_b1
Definition types.h:250
void(* x44)(void)
Definition types.h:243
u32 x3_4
Definition types.h:185
u8 x7
Definition types.h:209
u32 x5_2
Definition types.h:201
u32 x0_0
Definition types.h:154
u32 x0_7
timer counts up
Definition types.h:157
u32 x1_2
Definition types.h:161
u32 x4_2
Definition types.h:192
u32 x4_3
Definition types.h:193
u32 x0_3
Definition types.h:155
u32 x5_0
Definition types.h:199
float x30
Definition types.h:226
u16 xE
Definition types.h:216
u32 timer_shows_hours
Definition types.h:165
u32 x2_6
Definition types.h:178
u8 pad_x0[0x10]
Definition types.h:248
u32 x1_4
Definition types.h:163
u32 x5_5
Definition types.h:204
u8 x14
Definition types.h:219
u32 x2_5
Definition types.h:177
void(* x4C)(void)
Definition types.h:245
u8 x6
Definition types.h:208
u32 x1C_pad[(0x20 - 0x1C)/4]
Definition types.h:221
u32 x5_6
Definition types.h:205
u8 pad_x5C[0x60 - 0x5C]
Definition types.h:253
u32 x4_5
Definition types.h:195
u32 x5_4
Definition types.h:203
u32 x3_1
Definition types.h:182
int(* check_for_pauser_override)(void)
When set, this method is used for checking if a player/which player has pressed pause while unpaused.
Definition types.h:238
u32 x10
Definition types.h:218
u64 x20
Definition types.h:223
u8 xD
Definition types.h:215
struct lbl_8046B668_t * x58
Definition types.h:252
u32 x1_7
friendly fire on
Definition types.h:167
u32 x5_1
Definition types.h:200
u32 x1_1
Definition types.h:160
u8 x10_b0
Definition types.h:249
void(* x48)(void)
Definition types.h:244
s8 xC
Definition types.h:214
u32 x3_0
Definition types.h:181
float x2C
Definition types.h:225
u32 x3_6
Definition types.h:187
void(* on_pause_override)(int)
on pause callback.
Definition types.h:233
u32 x4_7
Definition types.h:197
u32 x3_2
Definition types.h:183
u32 x3_7
Definition types.h:188
u8 is_teams
Definition types.h:210
u32 x2_3
single-button mode enabled
Definition types.h:172
u32 x0_6
Definition types.h:156
u32 disable_pausing
When set, pausing is disabled for both active gameplay and pause menus.
Definition types.h:173
void(* x50)(u8)
Definition types.h:246
u32 x4_6
Definition types.h:196
int x28
Definition types.h:224
u32 x3_3
Definition types.h:184
u32 x1_5
Definition types.h:164
u32 x5_7
Definition types.h:206
u32 x1_0
Definition types.h:159
u32 x2_2
Definition types.h:171
u32 x2_1
Definition types.h:170
u8 xA
Definition types.h:212
u32 x4_1
Definition types.h:191
u32 x4_0
pause camera enabled?
Definition types.h:190
s8 xB
Definition types.h:213
float x34
Definition types.h:227
u32 x18
Definition types.h:220
u32 x5_3
Definition types.h:202
u32 x1_3
Definition types.h:162
u32 x2_0
Definition types.h:169
u32 x2_7
Definition types.h:179
void(* on_unpause_override)(int)
on unpause callback.
Definition types.h:228
u32 x3_5
Definition types.h:186
Definition sislib.h:16
Definition types.h:261
s8 ordered_stage_index
Definition types.h:263
u8 unk_0x4
Definition types.h:266
s8 winner
Definition types.h:264
u8 unk_0x5
Definition types.h:267
s8 loser
Definition types.h:262
u8 unk_0x3
Definition types.h:265
u8 unk_0x6
Definition types.h:268
u8 unk_0x7
Definition types.h:269
StartMeleeData data
Definition types.h:270
Definition types.h:147
PerfLabelLine line0
Definition types.h:148
PerfLabelLine line1
Definition types.h:149
Definition types.h:134
s8 arr2[0x1C]
Definition types.h:136
s8 arr1[0x1C]
Definition types.h:135
Definition types.h:507
char pad_0[0x96000]
Definition types.h:508
Definition types.h:689
u8 unk0
Definition types.h:690
HSD_Text * unk18
Definition types.h:699
HSD_Text * unk14
Definition types.h:698
u8 unk3
Definition types.h:693
u8 unk1
Definition types.h:691
f32 unkC
Definition types.h:696
HSD_Text * unk10
Definition types.h:697
f32 unk8
Definition types.h:695
u16 unk4
Definition types.h:694
HSD_Text * unk1C
Definition types.h:700
u8 unk2
Definition types.h:692
void(* GObj_RenderFunc)(HSD_GObj *gobj, int code)
Definition forward.h:106