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