1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
#ifndef SELECT_H
#define SELECT_H
#include "ultra64.h"
#include "game.h"
#include "unk.h"
#include "m_view.h"
#include "m_private_internals.h"
typedef enum SelectCheck {
/* 0 */ SELECT_CHECK_A_BUTTON_RTC,
/* 1 */ SELECT_CHECK_A_BUTTON_TIME,
/* 2 */ SELECT_CHECK_A_BUTTON_STEP,
/* 3 */ SELECT_CHECK_A_BUTTON_WEATHER,
/* 4 */ SELECT_CHECK_A_BUTTON_SEX,
/* 5 */ SELECT_CHECK_A_BUTTON_FACE_TYPE,
/* 6 */ SELECT_CHECK_A_BUTTON_SWELL,
/* 7 */ SELECT_CHECK_A_BUTTON_DECOY,
/* 8 */ SELECT_CHECK_A_BUTTON_CLOTH,
/* 9 */ SELECT_CHECK_A_BUTTON_EVENT,
/* 10 */ SELECT_CHECK_A_BUTTON_NUM
} SelectCheck;
struct OSRTCTime;
struct gfxprint;
typedef struct Game_Select {
/* 0x000 */ Game state;
/* 0x0E0 */ View view;
/* 0x208 */ s32 status;
/* 0x20C */ s32 cursorX;
/* 0x210 */ s32 cursorY;
/* 0x214 */ s32 step;
/* 0x218 */ s32 stepAdd;
/* 0x21C */ s32 selectedScene;
/* 0x220 */ s32 topScene;
/* 0x224 */ s32 unk224;
/* 0x228 */ s32 buttonStep;
/* 0x22C */ char name[PLAYER_NAME_LEN];
/* 0x234 */ UNK_TYPE unk_234;
/* 0x238 */ UNK_TYPE unk_238;
/* 0x23C */ UNK_TYPE unk_23C;
} Game_Select; // size = 0x240
typedef void (*GameProc)(Game*, s32);
typedef struct NameFunction {
/* 0x0 */ const char* name;
/* 0x4 */ GameProc nextProc;
/* 0x8 */ s32 sceneNo;
} NameFunction; // size = 0xC
void game_next_play(Game* game, s32 scene);
char data2fcode(char data);
char fcode2data(char fcode);
void select_pass(Game_Select* select);
s32 select_start_proc(Game_Select* select);
s32 select_check_start(Game_Select* select);
s32 select_check_A_button_rtc(Game_Select* select);
s32 select_check_A_button_time(Game_Select* select);
s32 select_check_A_buttonStep(Game_Select* select);
s32 select_check_A_button_weather(Game_Select* select);
s32 select_check_A_button_sex(Game_Select* select);
s32 select_check_A_button_face_type(Game_Select* select);
s32 select_check_A_button_swell(Game_Select* select);
s32 select_check_A_button_decoy(Game_Select* select);
s32 select_check_A_button_cloth(Game_Select* select);
s32 select_check_A_button_event(Game_Select* select);
s32 select_check_A_button(Game_Select* select);
s32 select_move_cursol(Game_Select* select);
s32 select_course_step_sub(s32 course);
void select_adjust_top_no(Game_Select* select, s32 course, s32 adjust);
void select_course_step(Game_Select* select, s32 addend);
void select_course(Game_Select* select);
void select_move_main(Game_Select* select);
void select_move_setup(Game_Select* select);
void select_move_time_year_set(s32 adjust);
void select_move_time_month_set(s32 adjust);
void select_move_time_day_set(s32 adjust);
void select_move_time_hour_set(s32 adjust);
void select_move_time_min_set(s32 adjust);
void select_move_time_week_set(s32 adjust);
void select_move_time_set(Game_Select* select);
void select_move_cloth_sel(Game_Select* select);
void select_move(Game_Select* select);
void select_print_wait(struct gfxprint* gfxprint);
void select_print_course_name(Game_Select* select, struct gfxprint* gfxprint);
void select_print_rtc(struct gfxprint* gfxprint, Game_Select* select);
void select_print_time_sub(struct gfxprint* gfxprint, Game_Select* select, struct OSRTCTime* time);
void select_print_time(struct gfxprint* gfxprint, Game_Select* select);
void select_print_step_sub2(struct gfxprint* gfxprint);
void select_print_step(struct gfxprint* gfxprint, Game_Select* select);
void select_print_weather(struct gfxprint* gfxprint, Game_Select* select);
void select_print_sex(struct gfxprint* gfxprint, Game_Select* select);
void select_print_cloth(struct gfxprint* gfxprint, Game_Select* select);
void select_print_swell(struct gfxprint* gfxprint, Game_Select* select);
void select_print_decoy(struct gfxprint* gfxprint, Game_Select* select);
void select_print_face_type(struct gfxprint* gfxprint, Game_Select* select);
void select_print_event(struct gfxprint* gfxprint, Game_Select* select);
void select_draw_main(Game_Select* select);
void select_draw_wait(Game_Select* select);
void select_draw(Game_Select* select);
void select_main(Game* game);
void select_cleanup(Game* game);
void select_init(Game* game);
#endif
|