Finish Documenting Naming Screen and Extract namein NARC (#682)

This commit is contained in:
James Petersen
2025-08-17 18:59:56 -03:00
committed by GitHub
parent 8e3c3211e8
commit 7d025bbf57
34 changed files with 5915 additions and 339 deletions

View File

@@ -18,15 +18,20 @@ enum NamingScreenType {
NAMING_SCREEN_TYPE_PAL_PAD,
};
enum NamingScreenReturnCode {
NAMING_SCREEN_CODE_OK,
NAMING_SCREEN_CODE_NO_INPUT,
};
typedef struct NamingScreenArgs {
enum NamingScreenType type;
int playerGenderOrMonSpecies;
int monForm;
int maxChars;
int monGender;
int unk_14;
enum NamingScreenReturnCode returnCode;
Strbuf *textInputStr;
u16 unk_1C[20];
charcode_t nameInputRaw[20];
int battleMsgID;
PCBoxes *pcBoxes;
Options *options;
@@ -37,9 +42,9 @@ extern const ApplicationManagerTemplate gNamingScreenAppTemplate;
NamingScreenArgs *NamingScreenArgs_Init(
enum HeapId heapID,
enum NamingScreenType type,
int param2,
int param3,
int playerGenderOrMonSpecies,
int maxChars,
Options *options);
void NamingScreenArgs_Free(NamingScreenArgs *param0);
void NamingScreenArgs_Free(NamingScreenArgs *args);
#endif // POKEPLATINUM_KEYBOARD_H

View File

@@ -49,7 +49,7 @@ res/prebuilt/data/miniasasea.nsbtx,/data/miniasasea.nsbtx
res/prebuilt/data/minihamabe.nsbtx,/data/minihamabe.nsbtx
res/prebuilt/data/minimum.nsbtx,/data/minimum.nsbtx
res/prebuilt/data/minirhana.nsbtx,/data/minirhana.nsbtx
res/prebuilt/data/namein.narc,/data/namein.narc
res/graphics/naming_screen/namein.narc,/data/namein.narc
res/prebuilt/data/nfont.NCGR,/data/nfont.NCGR
res/prebuilt/data/nfont.NCLR,/data/nfont.NCLR
res/prebuilt/data/pc.nsbca,/data/pc.nsbca
1 Source File Target File
49 res/prebuilt/data/minihamabe.nsbtx /data/minihamabe.nsbtx
50 res/prebuilt/data/minimum.nsbtx /data/minimum.nsbtx
51 res/prebuilt/data/minirhana.nsbtx /data/minirhana.nsbtx
52 res/prebuilt/data/namein.narc res/graphics/naming_screen/namein.narc /data/namein.narc
53 res/prebuilt/data/nfont.NCGR /data/nfont.NCGR
54 res/prebuilt/data/nfont.NCLR /data/nfont.NCLR
55 res/prebuilt/data/pc.nsbca /data/pc.nsbca

View File

@@ -48,7 +48,7 @@ b6c7a3b01146ef7a8e5cd0c583a6185a62fce803 *res/prebuilt/data/miniasasea.nsbtx
0634ba96cde00f4ae9417aa3b503925272480752 *res/prebuilt/data/minihamabe.nsbtx
71f4cedade64a030172afc432049106ad198e0e6 *res/prebuilt/data/minimum.nsbtx
4bd3072a3c2e0d833feb9ce6c4b8264c73cf3c29 *res/prebuilt/data/minirhana.nsbtx
8138e762591a993179132f20550ca3c94aba6b9d *res/prebuilt/data/namein.narc
8138e762591a993179132f20550ca3c94aba6b9d *res/graphics/naming_screen/namein.narc
5d5c14fcfa0f8534c2eec79ffa945d01f4c547b4 *res/prebuilt/data/nfont.NCGR
9eae4f97e9e97b6cd427c95def1c166ea868da43 *res/prebuilt/data/nfont.NCLR
bbec5b2143b48f7439efa8eb285b69635f3720fa *res/prebuilt/data/pc.nsbca

View File

@@ -1,3 +1,4 @@
subdir('naming_screen')
subdir('options_menu')
subdir('pokemon_summary_screen')
subdir('scroll_prompts')

View File

@@ -0,0 +1,105 @@
naming_screen_pngs = files(
'naming_screen_main_tiles.png',
'naming_screen_dummy_0.png',
'naming_screen_unk_tiles.png',
)
naming_screen_sprites_pngs = files(
'naming_screen_sprites.png',
'naming_screen_unk_sprite.png',
)
naming_screen_pals = files(
'naming_screen.pal',
'naming_screen_sprites.pal',
)
naming_screen_cell_jsons = files(
'naming_screen_sprites_cell.json',
'naming_screen_unk_sprite_cell.json',
)
naming_screen_anim_jsons = files(
'naming_screen_sprites_anim.json',
'naming_screen_unk_sprite_anim.json',
)
naming_screen_nscrs = files(
'naming_screen_bg.NSCR',
'naming_screen_dummy_1.NSCR',
'naming_screen_chars_bg_0.NSCR',
'naming_screen_chars_bg_1.NSCR',
'naming_screen_chars_bg_2.NSCR',
'naming_screen_chars_bg_3.NSCR',
'naming_screen_dummy_2.NSCR',
'naming_screen_dummy_3.NSCR',
)
naming_screen_sprites_ncgr_lzs = ncgr_lz_gen.process(naming_screen_sprites_pngs,
extra_args: [
'-clobbersize',
'-version101',
'-mappingtype', '0',
'-nopad',
]
)
naming_screen_ncgr_lzs = ncgr_lz_gen.process(naming_screen_pngs,
extra_args: [
'-sopc',
'-version101',
'-nopad',
]
)
naming_screen_nclrs = nclr_gen.process(naming_screen_pals,
extra_args: [
'-bitdepth', '4',
]
)
naming_screen_ncer_lzs = ncer_lz_gen.process(naming_screen_cell_jsons,
extra_args: [
'-nopad',
]
)
naming_screen_nanr_lzs = nanr_lz_gen.process(naming_screen_anim_jsons,
extra_args: [
'-nopad',
]
)
naming_screen_nscr_lzs = lz_gen.process(naming_screen_nscrs,
extra_args: [
'-nopad',
]
)
naming_screen_order = files('naming_screen.order')
naming_screen_narc = custom_target('namein.narc',
output: [
'namein.narc',
'namein.naix.h',
],
input: [
naming_screen_ncgr_lzs,
naming_screen_sprites_ncgr_lzs,
naming_screen_nclrs,
naming_screen_ncer_lzs,
naming_screen_nanr_lzs,
naming_screen_nscr_lzs,
naming_screen_order,
],
command: [
narc_exe, 'create',
'--naix',
'--order', naming_screen_order,
'--output', '@OUTPUT0@',
'@PRIVATE_DIR@',
]
)
nitrofs_files += naming_screen_narc
naix_headers += naming_screen_narc[1]

View File

@@ -0,0 +1,19 @@
naming_screen.NCLR
naming_screen_sprites.NCLR
naming_screen_main_tiles.NCGR.lz
naming_screen_dummy_0.NCGR.lz
naming_screen_bg.NSCR.lz
naming_screen_dummy_1.NSCR.lz
naming_screen_chars_bg_0.NSCR.lz
naming_screen_chars_bg_1.NSCR.lz
naming_screen_chars_bg_2.NSCR.lz
naming_screen_chars_bg_3.NSCR.lz
naming_screen_sprites.NCGR.lz
naming_screen_unk_sprite.NCGR.lz
naming_screen_sprites_cell.NCER.lz
naming_screen_unk_sprite_cell.NCER.lz
naming_screen_sprites_anim.NANR.lz
naming_screen_unk_sprite_anim.NANR.lz
naming_screen_unk_tiles.NCGR.lz
naming_screen_dummy_2.NSCR.lz
naming_screen_dummy_3.NSCR.lz

View File

@@ -0,0 +1,259 @@
JASC-PAL
0100
256
238 189 255
246 246 230
172 180 213
82 82 189
123 139 189
213 213 222
98 98 197
0 0 0
0 0 0
0 0 0
222 246 131
222 238 115
213 238 98
213 230 74
16 24 32
172 189 189
189 189 255
139 139 139
246 131 115
255 205 189
255 222 205
238 180 49
255 222 164
255 238 189
74 238 123
180 255 213
213 255 238
32 205 238
189 230 255
213 238 255
16 24 32
164 164 164
205 106 255
197 238 106
189 238 74
148 230 131
156 222 82
106 189 106
197 246 164
205 246 172
106 205 139
82 180 115
115 213 123
0 0 0
0 0 0
164 189 106
205 246 156
90 123 98
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 548 B

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,259 @@
JASC-PAL
0100
256
197 197 255
246 246 172
238 205 115
222 213 106
213 230 106
197 238 98
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
238 255 197
230 255 131
98 148 115
189 230 205
57 82 98
172 139 156
189 148 41
205 172 65
123 123 123
255 222 16
230 230 230
180 131 213
238 131 213
205 148 255
172 131 24
123 106 164
238 32 16
246 189 238
230 189 255
255 230 189
246 246 230
172 180 213
123 164 197
123 139 189
106 123 156
82 180 205
131 172 205
115 90 197
189 148 230
238 230 156
213 139 197
0 0 0
0 0 0
16 24 32
172 189 189
139 238 205
0 131 255
255 24 24
164 164 131
98 98 98
139 222 246
90 205 238
41 189 205
65 131 205
222 213 197
246 246 230
172 139 156
197 172 180
8 255 0
16 24 32
172 189 189
197 189 156
98 115 189
189 57 74
222 106 123
57 65 82
57 98 139
156 189 255
90 131 230
205 205 222
205 156 57
123 65 65
222 164 123
255 213 189
0 0 0
172 164 205
238 238 255
156 197 156
197 106 156
197 57 65
238 106 106
57 65 82
57 98 139
255 222 90
238 148 197
205 205 222
205 156 57
123 65 65
222 164 123
255 213 189
0 0 0
172 164 205
238 238 255
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
131 189 156
90 148 115
197 106 57
246 131 74
57 65 82
82 106 139
255 222 131
131 213 139
205 205 222
205 180 123
139 106 65
222 164 123
255 213 189
0 0 0
172 164 205
238 246 255
139 238 205
205 205 189
197 205 213
164 164 131
98 98 98
205 222 230
164 189 189
156 172 172
115 115 115
255 255 255
246 246 230
172 205 172
205 205 230
139 131 189
238 246 246
139 164 164
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B

View File

@@ -0,0 +1,76 @@
{
"labelEnabled": true,
"sequenceCount": 3,
"frameCount": 9,
"sequences": [{
"frameCount": 3,
"loopStartFrame": 0,
"animationElement": 0,
"animationType": 1,
"playbackMode": 1,
"frameData": [{
"frameDelay": 4,
"resultId": 0
}, {
"frameDelay": 4,
"resultId": 1
}, {
"frameDelay": 20,
"resultId": 2
}]
}, {
"frameCount": 1,
"loopStartFrame": 0,
"animationElement": 0,
"animationType": 1,
"playbackMode": 1,
"frameData": [{
"frameDelay": 4,
"resultId": 3
}]
}, {
"frameCount": 5,
"loopStartFrame": 0,
"animationElement": 0,
"animationType": 1,
"playbackMode": 1,
"frameData": [{
"frameDelay": 2,
"resultId": 3
}, {
"frameDelay": 2,
"resultId": 4
}, {
"frameDelay": 4,
"resultId": 5
}, {
"frameDelay": 4,
"resultId": 4
}, {
"frameDelay": 4,
"resultId": 3
}]
}],
"animationResults": [{
"resultType": 0,
"index": 0
}, {
"resultType": 0,
"index": 1
}, {
"resultType": 0,
"index": 2
}, {
"resultType": 0,
"index": 3
}, {
"resultType": 0,
"index": 4
}, {
"resultType": 0,
"index": 5
}],
"resultCount": 6,
"labels": ["CellAnime1", "CellAnime0", "CellAnime2"],
"labelCount": 3
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

View File

@@ -51,7 +51,6 @@ prebuilt_files = [
'minihamabe.nsbtx',
'minimum.nsbtx',
'minirhana.nsbtx',
'namein.narc',
'nfont.NCGR',
'nfont.NCLR',
'pc.nsbca',

Binary file not shown.

View File

@@ -1,147 +1,147 @@
<?xml version="1.0"?>
<body language="English">
<key value="59361" />
<row id="pl_msg_00000427_00000" index="0">
<row id="GenericNames_PlayerMale_First" index="0">
<attribute name="window_context_name">used</attribute>
<language name="English">Plato</language>
</row>
<row id="pl_msg_00000427_00001" index="1">
<row id="GenericNames_PlayerMale_1" index="1">
<attribute name="window_context_name">used</attribute>
<language name="English">Ash</language>
</row>
<row id="pl_msg_00000427_00002" index="2">
<row id="GenericNames_PlayerMale_2" index="2">
<attribute name="window_context_name">used</attribute>
<language name="English">Nic</language>
</row>
<row id="pl_msg_00000427_00003" index="3">
<row id="GenericNames_PlayerMale_3" index="3">
<attribute name="window_context_name">used</attribute>
<language name="English">Jimmy</language>
</row>
<row id="pl_msg_00000427_00004" index="4">
<row id="GenericNames_PlayerMale_4" index="4">
<attribute name="window_context_name">used</attribute>
<language name="English">Duncan</language>
</row>
<row id="pl_msg_00000427_00005" index="5">
<row id="GenericNames_PlayerMale_5" index="5">
<attribute name="window_context_name">used</attribute>
<language name="English">Todd</language>
</row>
<row id="pl_msg_00000427_00006" index="6">
<row id="GenericNames_PlayerMale_6" index="6">
<attribute name="window_context_name">used</attribute>
<language name="English">Ross</language>
</row>
<row id="pl_msg_00000427_00007" index="7">
<row id="GenericNames_PlayerMale_7" index="7">
<attribute name="window_context_name">used</attribute>
<language name="English">Steven</language>
</row>
<row id="pl_msg_00000427_00008" index="8">
<row id="GenericNames_PlayerMale_8" index="8">
<attribute name="window_context_name">used</attribute>
<language name="English">Darrell</language>
</row>
<row id="pl_msg_00000427_00009" index="9">
<row id="GenericNames_PlayerMale_9" index="9">
<attribute name="window_context_name">used</attribute>
<language name="English">Reed</language>
</row>
<row id="pl_msg_00000427_00010" index="10">
<row id="GenericNames_PlayerMale_10" index="10">
<attribute name="window_context_name">used</attribute>
<language name="English">Chris</language>
</row>
<row id="pl_msg_00000427_00011" index="11">
<row id="GenericNames_PlayerMale_11" index="11">
<attribute name="window_context_name">used</attribute>
<language name="English">Brad</language>
</row>
<row id="pl_msg_00000427_00012" index="12">
<row id="GenericNames_PlayerMale_12" index="12">
<attribute name="window_context_name">used</attribute>
<language name="English">Dwight</language>
</row>
<row id="pl_msg_00000427_00013" index="13">
<row id="GenericNames_PlayerMale_13" index="13">
<attribute name="window_context_name">used</attribute>
<language name="English">Randy</language>
</row>
<row id="pl_msg_00000427_00014" index="14">
<row id="GenericNames_PlayerMale_14" index="14">
<attribute name="window_context_name">used</attribute>
<language name="English">Andy</language>
</row>
<row id="pl_msg_00000427_00015" index="15">
<row id="GenericNames_PlayerMale_15" index="15">
<attribute name="window_context_name">used</attribute>
<language name="English">Joey</language>
</row>
<row id="pl_msg_00000427_00016" index="16">
<row id="GenericNames_PlayerMale_16" index="16">
<attribute name="window_context_name">used</attribute>
<language name="English">Eric</language>
</row>
<row id="pl_msg_00000427_00017" index="17">
<row id="GenericNames_PlayerMale_Last" index="17">
<attribute name="window_context_name">used</attribute>
<language name="English">Mark</language>
</row>
<row id="pl_msg_00000427_00018" index="18">
<row id="GenericNames_PlayerFemale_First" index="18">
<attribute name="window_context_name">used</attribute>
<language name="English">Plato</language>
</row>
<row id="pl_msg_00000427_00019" index="19">
<row id="GenericNames_PlayerFemale_1" index="19">
<attribute name="window_context_name">used</attribute>
<language name="English">Joelle</language>
</row>
<row id="pl_msg_00000427_00020" index="20">
<row id="GenericNames_PlayerFemale_2" index="20">
<attribute name="window_context_name">used</attribute>
<language name="English">Britney</language>
</row>
<row id="pl_msg_00000427_00021" index="21">
<row id="GenericNames_PlayerFemale_3" index="21">
<attribute name="window_context_name">used</attribute>
<language name="English">Kelli</language>
</row>
<row id="pl_msg_00000427_00022" index="22">
<row id="GenericNames_PlayerFemale_4" index="22">
<attribute name="window_context_name">used</attribute>
<language name="English">Nina</language>
</row>
<row id="pl_msg_00000427_00023" index="23">
<row id="GenericNames_PlayerFemale_5" index="23">
<attribute name="window_context_name">used</attribute>
<language name="English">Heidi</language>
</row>
<row id="pl_msg_00000427_00024" index="24">
<row id="GenericNames_PlayerFemale_6" index="24">
<attribute name="window_context_name">used</attribute>
<language name="English">Miriam</language>
</row>
<row id="pl_msg_00000427_00025" index="25">
<row id="GenericNames_PlayerFemale_7" index="25">
<attribute name="window_context_name">used</attribute>
<language name="English">Teresa</language>
</row>
<row id="pl_msg_00000427_00026" index="26">
<row id="GenericNames_PlayerFemale_8" index="26">
<attribute name="window_context_name">used</attribute>
<language name="English">Aubrey</language>
</row>
<row id="pl_msg_00000427_00027" index="27">
<row id="GenericNames_PlayerFemale_9" index="27">
<attribute name="window_context_name">used</attribute>
<language name="English">Kelly</language>
</row>
<row id="pl_msg_00000427_00028" index="28">
<row id="GenericNames_PlayerFemale_10" index="28">
<attribute name="window_context_name">used</attribute>
<language name="English">Naomi</language>
</row>
<row id="pl_msg_00000427_00029" index="29">
<row id="GenericNames_PlayerFemale_11" index="29">
<attribute name="window_context_name">used</attribute>
<language name="English">Abby</language>
</row>
<row id="pl_msg_00000427_00030" index="30">
<row id="GenericNames_PlayerFemale_12" index="30">
<attribute name="window_context_name">used</attribute>
<language name="English">Denise</language>
</row>
<row id="pl_msg_00000427_00031" index="31">
<row id="GenericNames_PlayerFemale_13" index="31">
<attribute name="window_context_name">used</attribute>
<language name="English">Tamara</language>
</row>
<row id="pl_msg_00000427_00032" index="32">
<row id="GenericNames_PlayerFemale_14" index="32">
<attribute name="window_context_name">used</attribute>
<language name="English">Linda</language>
</row>
<row id="pl_msg_00000427_00033" index="33">
<row id="GenericNames_PlayerFemale_15" index="33">
<attribute name="window_context_name">used</attribute>
<language name="English">Faith</language>
</row>
<row id="pl_msg_00000427_00034" index="34">
<row id="GenericNames_PlayerFemale_16" index="34">
<attribute name="window_context_name">used</attribute>
<language name="English">Mari</language>
</row>
<row id="pl_msg_00000427_00035" index="35">
<row id="GenericNames_PlayerFemale_Last" index="35">
<attribute name="window_context_name">used</attribute>
<language name="English">Maggie</language>
</row>
@@ -353,11 +353,11 @@
<attribute name="window_context_name">used</attribute>
<language name="English">Dawn</language>
</row>
<row id="pl_msg_00000427_00088" index="88">
<row id="GenericNames_Rival_First" index="88">
<attribute name="window_context_name">used</attribute>
<language name="English">Pearl</language>
</row>
<row id="pl_msg_00000427_00089" index="89">
<row id="GenericNames_Rival_Last" index="89">
<attribute name="window_context_name">used</attribute>
<language name="English">Diamond</language>
</row>

File diff suppressed because it is too large Load Diff

View File

@@ -245,8 +245,8 @@ typedef struct RowanIntro {
StringTemplate *strFormatter;
UnkStruct_02015920 *unk_68;
SysTask *unused;
NamingScreenArgs *unk_70;
NamingScreenArgs *unk_74;
NamingScreenArgs *playerNamingScreenArgs;
NamingScreenArgs *rivalNamingScreenArgs;
enum FadeBgLayerState fadeBgLayerState;
int fadeBgLayerCurAlpha;
int fadeBgLayerCurAlphaInv;
@@ -325,8 +325,8 @@ BOOL RowanIntro_Init(ApplicationManager *appMan, int *unusedState)
manager->state = RI_STATE_FIRST_FADE_BLACK_START;
manager->bufferedState = RI_STATE_FIRST_FADE_BLACK_START;
manager->appMan = NULL;
manager->unk_70 = NamingScreenArgs_Init(heapID, NAMING_SCREEN_TYPE_PLAYER, 0, TRAINER_NAME_LEN, manager->options);
manager->unk_74 = NamingScreenArgs_Init(heapID, NAMING_SCREEN_TYPE_RIVAL, 0, TRAINER_NAME_LEN, manager->options);
manager->playerNamingScreenArgs = NamingScreenArgs_Init(heapID, NAMING_SCREEN_TYPE_PLAYER, 0, TRAINER_NAME_LEN, manager->options);
manager->rivalNamingScreenArgs = NamingScreenArgs_Init(heapID, NAMING_SCREEN_TYPE_RIVAL, 0, TRAINER_NAME_LEN, manager->options);
manager->bgLayer3TilemapIndex = 0;
manager->bgLayer1TilemapIndex = 0;
manager->bgLayer2TilemapIndex = 0;
@@ -436,19 +436,19 @@ BOOL RowanIntro_Exit(ApplicationManager *appMan, int *unusedState)
TrainerInfo_SetNameFromStrbuf(
SaveData_GetTrainerInfo(manager->saveData),
manager->unk_70->textInputStr);
manager->playerNamingScreenArgs->textInputStr);
TrainerInfo_SetGender(
SaveData_GetTrainerInfo(manager->saveData),
manager->unk_70->playerGenderOrMonSpecies);
manager->playerNamingScreenArgs->playerGenderOrMonSpecies);
{
MiscSaveBlock *miscSaveBlock = SaveData_MiscSaveBlock(manager->saveData);
MiscSaveBlock_SetRivalName(miscSaveBlock, manager->unk_74->textInputStr);
MiscSaveBlock_SetRivalName(miscSaveBlock, manager->rivalNamingScreenArgs->textInputStr);
}
NamingScreenArgs_Free(manager->unk_70);
NamingScreenArgs_Free(manager->unk_74);
NamingScreenArgs_Free(manager->playerNamingScreenArgs);
NamingScreenArgs_Free(manager->rivalNamingScreenArgs);
ApplicationManager_FreeData(appMan);
Heap_Destroy(heapID);
EnqueueApplication(FS_OVERLAY_ID(game_start), &gGameStartNewSaveAppTemplate);
@@ -1001,14 +1001,14 @@ static BOOL RowanIntro_DisplayMessage(RowanIntro *manager, u32 textID, BOOL endE
StringTemplate_SetStrbuf(
manager->strFormatter,
0,
manager->unk_70->textInputStr,
manager->playerNamingScreenArgs->textInputStr,
manager->playerGender,
1,
GAME_LANGUAGE);
StringTemplate_SetStrbuf(
manager->strFormatter,
1,
manager->unk_74->textInputStr,
manager->rivalNamingScreenArgs->textInputStr,
0,
1,
GAME_LANGUAGE);
@@ -2704,10 +2704,10 @@ static BOOL RowanIntro_Run(RowanIntro *manager)
}
break;
case RI_STATE_NAME_APP_KEYBOARD:
manager->unk_70->playerGenderOrMonSpecies = manager->playerGender;
manager->playerNamingScreenArgs->playerGenderOrMonSpecies = manager->playerGender;
manager->appMan = ApplicationManager_New(
&gNamingScreenAppTemplate,
manager->unk_70,
manager->playerNamingScreenArgs,
manager->heapID);
manager->state = RI_STATE_NAME_KEYBOARD;
break;
@@ -2773,7 +2773,7 @@ static BOOL RowanIntro_Run(RowanIntro *manager)
break;
case 2:
case LIST_CANCEL:
Strbuf_Clear(manager->unk_70->textInputStr);
Strbuf_Clear(manager->playerNamingScreenArgs->textInputStr);
manager->bufferedState = RI_STATE_GENDR_FADE_IN_AVATAR_PREP;
manager->state = RI_STATE_NAME_FADE_OUT_AVATAR;
break;
@@ -2858,7 +2858,7 @@ static BOOL RowanIntro_Run(RowanIntro *manager)
{
Strbuf *tmpStrbuf = MessageLoader_GetNewStrbuf(manager->msgLoader, rivalNameTextID);
Strbuf_Copy(manager->unk_74->textInputStr, tmpStrbuf);
Strbuf_Copy(manager->rivalNamingScreenArgs->textInputStr, tmpStrbuf);
Strbuf_Free(tmpStrbuf);
}
}
@@ -2875,7 +2875,7 @@ static BOOL RowanIntro_Run(RowanIntro *manager)
case RI_STATE_RIVAL_NAME_APP_KEYBOARD:
manager->appMan = ApplicationManager_New(
&gNamingScreenAppTemplate,
manager->unk_74,
manager->rivalNamingScreenArgs,
manager->heapID);
manager->state = RI_STATE_RIVAL_NAME_KEYBOARD;
break;
@@ -2919,7 +2919,7 @@ static BOOL RowanIntro_Run(RowanIntro *manager)
break;
case 2:
case LIST_CANCEL:
Strbuf_Clear(manager->unk_74->textInputStr);
Strbuf_Clear(manager->rivalNamingScreenArgs->textInputStr);
manager->state = RI_STATE_RIVAL_NAME_DIALOGUE;
break;
}

View File

@@ -10908,7 +10908,7 @@ static void BattleScript_CatchMonTask(SysTask *param0, void *param1)
v19 = v2->tmpPtr[1];
v3 = BattleSystem_PartyPokemon(v2->battleSys, v1, v2->battleCtx->selectedPartySlot[v1]);
if (v19->unk_14 == 0) {
if (v19->returnCode == NAMING_SCREEN_CODE_OK) {
Pokemon_SetValue(v3, MON_DATA_NICKNAME_STRBUF_AND_FLAG, v19->textInputStr);
ov16_0223F24C(v2->battleSys, (1 + 48));
}

View File

@@ -2482,7 +2482,7 @@ static int ov64_0223044C(UnkStruct_ov64_02230444 *param0, UnkStruct_ov64_0222DFD
ApplicationManager_Free(param0->appMan);
if (param0->unk_04->unk_14 == 0) {
if (param0->unk_04->returnCode == NAMING_SCREEN_CODE_OK) {
param0->appMan = ApplicationManager_New(&Unk_020F2DBC, param0->unk_08, heapID);
param2->unk_04 = 2;
} else {
@@ -2518,7 +2518,7 @@ static int ov64_0223044C(UnkStruct_ov64_02230444 *param0, UnkStruct_ov64_0222DFD
ApplicationManager_Free(param0->appMan);
if (param0->unk_04->unk_14 == 0) {
if (param0->unk_04->returnCode == NAMING_SCREEN_CODE_OK) {
ov64_0222E074(param2, 1, 12);
ov64_0222E07C(param2, param0->unk_04->textInputStr, NULL);
param2->unk_04 = 6;

View File

@@ -1169,23 +1169,25 @@ static BOOL sub_0203DE98(FieldTask *param0)
case 3:
if (v2->unk_0C->type == NAMING_SCREEN_TYPE_POKEMON) {
if (Strbuf_Compare(v2->unk_0C->textInputStr, v2->unk_10) == 0) {
v2->unk_0C->unk_14 = 1;
v2->unk_0C->returnCode = 1;
}
} else if (v2->unk_0C->type == NAMING_SCREEN_TYPE_GROUP) {
const u16 *v3 = Strbuf_GetData(v2->unk_0C->textInputStr);
RecordMixedRNG *v4 = SaveData_GetRecordMixedRNG(fieldSystem->saveData);
if (RecordMixedRNG_DoesCollectionContainGroup(v4, v3)) {
v2->unk_0C->unk_14 = 2;
// this re-uses the returnCode field with values not associated with the naming
// screen. these should probably have their own enum.
v2->unk_0C->returnCode = 2;
}
}
if (v2->unk_0C->unk_14 == 0) {
if (v2->unk_0C->returnCode == 0) {
sub_0203DF68(param0);
}
if (v2->unk_08 != NULL) {
*v2->unk_08 = v2->unk_0C->unk_14;
*v2->unk_08 = v2->unk_0C->returnCode;
}
NamingScreenArgs_Free(v2->unk_0C);
@@ -1206,14 +1208,14 @@ static void sub_0203DF68(FieldTask *param0)
switch (v1->unk_0C->type) {
case NAMING_SCREEN_TYPE_PLAYER: {
TrainerInfo *v2 = SaveData_GetTrainerInfo(fieldSystem->saveData);
TrainerInfo_SetName(v2, v1->unk_0C->unk_1C);
TrainerInfo_SetName(v2, v1->unk_0C->nameInputRaw);
} break;
case NAMING_SCREEN_TYPE_POKEMON: {
Pokemon *v3;
int v4;
v3 = Party_GetPokemonBySlotIndex(SaveData_GetParty(fieldSystem->saveData), v1->unk_04);
Pokemon_SetValue(v3, MON_DATA_NICKNAME_AND_FLAG, (u8 *)&v1->unk_0C->unk_1C);
Pokemon_SetValue(v3, MON_DATA_NICKNAME_AND_FLAG, (u8 *)&v1->unk_0C->nameInputRaw);
} break;
case NAMING_SCREEN_TYPE_GROUP: {
RecordMixedRNG *v5 = SaveData_GetRecordMixedRNG(fieldSystem->saveData);

View File

@@ -242,7 +242,7 @@ static BOOL sub_0209843C(FieldTask *param0)
v0->unk_00++;
} break;
case 4:
if (v0->unk_08->unk_14 == 0) {
if (v0->unk_08->returnCode == NAMING_SCREEN_CODE_OK) {
Pokemon_SetValue(v0->unk_0C.unk_00, MON_DATA_NICKNAME_STRBUF_AND_FLAG, v0->unk_08->textInputStr);
{