summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@users.noreply.github.com>2019-09-25 13:49:16 -0400
committerGitHub <noreply@github.com>2019-09-25 13:49:16 -0400
commit0e217e22d8fa3e075416cb332435c3756548357e (patch)
tree59ef21892a02c9d266f5cac36872458bdbe0de61 /include
parent2599dac8ac8c12268fca902910bfe1aab40a68ca (diff)
parent6539884c8850aca6c2057017dba9c3d78ca15784 (diff)
Merge branch 'master' into battle
Diffstat (limited to 'include')
-rw-r--r--include/field_weather.h1
-rw-r--r--include/gba/defines.h5
-rw-r--r--include/graphics.h8
-rw-r--r--include/overworld.h23
-rw-r--r--include/strings.h89
-rw-r--r--include/text.h48
-rw-r--r--include/trainer_pokemon_sprites.h1
7 files changed, 148 insertions, 27 deletions
diff --git a/include/field_weather.h b/include/field_weather.h
index 477ca0e76..78d2f2412 100644
--- a/include/field_weather.h
+++ b/include/field_weather.h
@@ -17,5 +17,6 @@ bool8 sub_807AA70(void);
void SetWeatherScreenFadeOut(void);
void sub_807B070(void);
u8 GetCurrentWeather(void);
+void FieldWeather_StartFadingOutCreditsMap(u8, u8, u32);
#endif // GUARD_WEATHER_H
diff --git a/include/gba/defines.h b/include/gba/defines.h
index 3932a8542..c0eec12b1 100644
--- a/include/gba/defines.h
+++ b/include/gba/defines.h
@@ -6,8 +6,13 @@
#define TRUE 1
#define FALSE 0
+#if defined(__APPLE__)
+#define IWRAM_DATA __attribute__((section("__DATA,iwram_data")))
+#define EWRAM_DATA __attribute__((section("__DATA,ewram_data")))
+#else
#define IWRAM_DATA __attribute__((section("iwram_data")))
#define EWRAM_DATA __attribute__((section("ewram_data")))
+#endif
#define ALIGNED(n) __attribute__((aligned(n)))
diff --git a/include/graphics.h b/include/graphics.h
index d8dd5065c..d8858b36f 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -990,4 +990,12 @@ extern const u32 gSubstituteDollGfx[];
extern const u32 gSubstituteDollTilemap[];
extern const u32 gSubstituteDollPal[];
+// credits
+extern const u32 gCreditsPokeballBgGfxTiles[];
+extern const u32 gCreditsPokeballBgGfxMap[];
+extern const u16 gCreditsMonBackdropPals[][16];
+extern const u16 gCreditsAllRightsReservedGfxPal[];
+extern const u8 gCreditsAllRightsReservedGfxTiles[];
+extern const u8 gCreditsAllRightsReservedGfxMap[];
+
#endif //GUARD_GRAPHICS_H
diff --git a/include/overworld.h b/include/overworld.h
index 8f15f5a85..8c5dde2b0 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -1,5 +1,5 @@
-#ifndef GUARD_ROM4_H
-#define GUARD_ROM4_H
+#ifndef GUARD_OVERWORLD_H
+#define GUARD_OVERWORLD_H
#include "global.h"
#include "main.h"
@@ -23,6 +23,18 @@ struct UCoords32
u32 x, y;
};
+struct CreditsOverworldCmd
+{
+ s16 unk_0;
+ u16 unk_2;
+ u16 unk_4;
+};
+
+/* gDisableMapMusicChangeOnMapLoad */
+#define MUSIC_DISABLE_OFF 0
+#define MUSIC_DISABLE_STOP 1
+#define MUSIC_DISABLE_KEEP 2
+
extern struct UCoords32 gDirectionToVectors[];
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4];
@@ -98,7 +110,7 @@ void sub_8055D40(u16 mapDataId);
void CleanupOverworldWindowsAndTilemaps(void);
u32 sub_8054C04(void);
-extern u8 gUnknown_2031DD8;
+extern u8 gDisableMapMusicChangeOnMapLoad;
extern u8 gUnknown_2036E28;
extern void (*gFieldCallback)(void);
@@ -121,4 +133,7 @@ void Overworld_ResetStateAfterDigEscRope(void);
bool32 sub_8058244(void);
u8 GetCurrentMapType(void);
-#endif //GUARD_ROM4_H
+void Overworld_CreditsMainCB(void);
+bool32 Overworld_DoScrollSceneForCredits(u8 *, const struct CreditsOverworldCmd *, u8);
+
+#endif //GUARD_OVERWORLD_H
diff --git a/include/strings.h b/include/strings.h
index 2da65d3e0..dfedb4afa 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -226,4 +226,93 @@ extern const u8 gText_WhatWillPkmnDo[];
// battle_script_commands
extern const u8 gText_BattleYesNoChoice[];
+// credits
+extern const u8 gString_Dummy[];
+extern const u8 gString_PokemonFireRed_Staff[]; // FR
+extern const u8 gString_PokemonLeafGreen_Staff[]; // LG
+extern const u8 gCreditsString_Director[];
+extern const u8 gCreditsString_Junichi_Masuda[];
+extern const u8 gCreditsString_Art_Director_Battle_Director[];
+extern const u8 gCreditsString_Ken_Sugimori_Shigeki_Morimoto[];
+extern const u8 gCreditsString_Program_Leader_Planning_Leader_Graphic_Design_Leader[];
+extern const u8 gCreditsString_Tetsuya_Watanabe_Koji_Nishino_Takao_Unno[];
+extern const u8 gCreditsString_Programmers[];
+extern const u8 gCreditsString_Hiroyuki_Nakamura_Masao_Taya_Satoshi_Nohara_Miyuki_Iwasawa_Daisuke_Goto[];
+extern const u8 gCreditsString_System_Programmers[];
+extern const u8 gCreditsString_Tetsuya_Watanabe_Akito_Mori_Hisashi_Sogabe_Sousuke_Tamada[];
+extern const u8 gCreditsString_Graphic_Designers[];
+extern const u8 gCreditsString_Takao_Unno_Asuka_Iwashita_Kanako_Eo_Hiroki_Fuchino[];
+extern const u8 gCreditsString_Graphic_Designers_2[];
+extern const u8 gCreditsString_Ken_Sugimori_Hironobu_Yoshida[];
+extern const u8 gCreditsString_Music_Composition[];
+extern const u8 gCreditsString_Go_Ichinose_Junichi_Masuda[];
+extern const u8 gCreditsString_Sound_Effects[];
+extern const u8 gCreditsString_Go_Ichinose[];
+extern const u8 gCreditsString_Game_Designers[];
+extern const u8 gCreditsString_Junichi_Masuda_Koji_Nishino_Tetsuji_Ohta[];
+extern const u8 gCreditsString_Game_Designers_2[];
+extern const u8 gCreditsString_Hitomi_Sato_Shigeru_Ohmori_Tadashi_Takahashi[];
+extern const u8 gCreditsString_Game_Scenario[];
+extern const u8 gCreditsString_Hitomi_Sato_Satoshi_Tajiri[];
+extern const u8 gCreditsString_Script_Designer_Map_Designer[];
+extern const u8 gCreditsString_Satoshi_Nohara_Shigeru_Ohmori[];
+extern const u8 gCreditsString_Parametric_Designers[];
+extern const u8 gCreditsString_Koji_Nishino_Tetsuji_Ohta_Shigeki_Morimoto[];
+extern const u8 gCreditsString_POKeDEX_Text[];
+extern const u8 gCreditsString_Kenji_Matsushima[];
+extern const u8 gCreditsString_POKeMON_Designers[];
+extern const u8 gCreditsString_Ken_Sugimori_Motofumi_Fujiwara_Shigeki_Morimoto_Hironobu_Yoshida[];
+extern const u8 gCreditsString_POKeMON_Designers_2[];
+extern const u8 gCreditsString_Satoshi_Ohta_Asuka_Iwashita_Takao_Unno_Kanako_Eo_Aimi_Tomita[];
+extern const u8 gCreditsString_POKeMON_Designers_3[];
+extern const u8 gCreditsString_Atsuko_Nishida_Muneo_Saito_Rena_Yoshikawa_Jun_Okutani[];
+extern const u8 gCreditsString_Supporting_Programmers[];
+extern const u8 gCreditsString_Teruyuki_Yoshioka_Takao_Nakano_Satoshi_Mitsuhara_Daisuke_Hoshino[];
+extern const u8 gCreditsString_NCL_Product_Testing[];
+extern const u8 gCreditsString_NCL_Super_Mario_Club[];
+extern const u8 gCreditsString_Special_Thanks[];
+extern const u8 gCreditsString_Hiro_Nakamura_Hiroyuki_Uesugi_Teruki_Murakawa_Kazuya_Suyama[];
+extern const u8 gCreditsString_Special_Thanks_2[];
+extern const u8 gCreditsString_Kenji_Tominaga_Kenjiro_Ito_Tomotaka_Komura_Michiko_Takizawa[];
+extern const u8 gCreditsString_Special_Thanks_3[];
+extern const u8 gCreditsString_Makiko_Takada_Mikiko_Ohashi_Shusaku_Egami_Takanao_Kondo_Rui_Kawaguchi[];
+extern const u8 gCreditsString_Braille_Code_Check[];
+extern const u8 gCreditsString_Japan_Braille_Library[];
+extern const u8 gCreditsString_Information_Supervisors[];
+extern const u8 gCreditsString_Hiroki_Enomoto_Kazuyuki_Terada_Yuri_Sakurai_Yumi_Funasaka_Naoko_Yanase[];
+extern const u8 gCreditsString_Coordinators[];
+extern const u8 gCreditsString_Azusa_Tajima_Akira_Kinashi_Kazuki_Yoshihara_Retsuji_Nomoto[];
+extern const u8 gCreditsString_Task_Managers[];
+extern const u8 gCreditsString_Hitoshi_Yamagami_Gakuji_Nomoto[];
+extern const u8 gCreditsString_Producers[];
+extern const u8 gCreditsString_Hiroyuki_Jinnai_Takehiro_Izushi_Hiroaki_Tsuru[];
+extern const u8 gCreditsString_Executive_Director[];
+extern const u8 gCreditsString_Satoshi_Tajiri[];
+extern const u8 gCreditsString_Executive_Producer[];
+extern const u8 gCreditsString_Satoru_Iwata[];
+extern const u8 gCreditsString_Executive_Producer_2[];
+extern const u8 gCreditsString_Tsunekaz_Ishihara[];
+extern const u8 gCreditsString_English_Version_Coordinators[];
+extern const u8 gCreditsString_Hiro_Nakamura_Seth_McMahill[];
+extern const u8 gCreditsString_Translator_Text_Editor[];
+extern const u8 gCreditsString_Nob_Ogasawara_Teresa_Lillygren[];
+extern const u8 gCreditsString_Programmers_2[];
+extern const u8 gCreditsString_Teruki_Murakawa_Souichi_Yamamoto_Yuichiro_Ito_Akira_Kinashi[];
+extern const u8 gCreditsString_Environment_Tool_Programmers[];
+extern const u8 gCreditsString_Teruki_Murakawa_Souichi_Yamamoto_Kimiko_Nakamichi[];
+extern const u8 gCreditsString_NOA_Product_Testing[];
+extern const u8 gCreditsString_Thomas_Hertzog_Kathy_Huguenard_Mika_Kurosawa[];
+extern const u8 gCreditsString_Braille_Code_Check_2[];
+extern const u8 gCreditsString_National_Federation_of_the_Blind_Patricia_A_Maurer_Japan_Braille_Library_European_Blind_Union[];
+extern const u8 gCreditsString_Braille_Code_Check_3[];
+extern const u8 gCreditsString_National_Information_Library_Service_Margaret_Campion[];
+extern const u8 gCreditsString_Special_Thanks_4[];
+extern const u8 gCreditsString_Takehiro_Izushi_Motoyasu_Tojima_Hitoshi_Yamagami_Hiroyuki_Uesugi[];
+extern const u8 gCreditsString_Special_Thanks_5[];
+extern const u8 gCreditsString_Nicola_Pratt_Barlow_Shellie_Dow_Anthony_Howitt_Naoko_Saeki_Kyoko_Onishi[];
+extern const u8 gCreditsString_Braille_Code_Check_4[];
+extern const u8 gCreditsString_The_Royal_New_Zealand_Foundation_of_the_Blind_Greg_Moran[];
+extern const u8 gCreditsString_Graphic_Designer[];
+extern const u8 gCreditsString_Akira_Kinashi[];
+
#endif //GUARD_STRINGS_H
diff --git a/include/text.h b/include/text.h
index 0fd586ddd..c4199190f 100644
--- a/include/text.h
+++ b/include/text.h
@@ -83,7 +83,16 @@
#define TEXT_COLOR_DARK_GREY 0x2
// battle placeholders are located in battle_message.h
-
+#define EXT_CTRL_CODE_COLOR 0x1
+#define EXT_CTRL_CODE_HIGHLIGHT 0x2
+#define EXT_CTRL_CODE_SHADOW 0x3
+//
+#define EXT_CTRL_CODE_UNKNOWN_7 0x7
+//
+#define EXT_CTRL_CODE_CLEAR 0x11
+//
+#define EXT_CTRL_CODE_CLEAR_TO 0x13
+#define EXT_CTRL_CODE_MIN_LETTER_SPACING 0x14
#define EXT_CTRL_CODE_JPN 0x15
#define EXT_CTRL_CODE_ENG 0x16
@@ -105,18 +114,13 @@ enum
struct TextPrinterSubStruct
{
- u8 font_type:4; // 0x14
- u8 font_type_upper:1;
+ u8 glyphId:4; // 0x14
+ bool8 hasPrintBeenSpedUp:1;
u8 font_type_5:3;
- u8 field_1:5;
- u8 field_1_upmid:2;
- u8 field_1_top:1;
- u8 frames_visible_counter;
- u8 field_3;
- u8 field_4; // 0x18
- u8 field_5;
- u8 field_6;
- u8 active;
+ u8 downArrowDelay:5;
+ u8 downArrowYPosIdx:2;
+ u8 hasGlyphIdBeenSet:1;
+ u8 autoScrollDelay;
};
struct TextPrinterTemplate // TODO: Better name
@@ -138,18 +142,15 @@ struct TextPrinterTemplate // TODO: Better name
struct TextPrinter
{
- struct TextPrinterTemplate subPrinter;
-
+ struct TextPrinterTemplate printerTemplate;
void (*callback)(struct TextPrinterTemplate *, u16); // 0x10
-
- union {
+ union __attribute__((packed)) {
struct TextPrinterSubStruct sub;
-
- u8 sub_fields[8];
- } sub_union;
-
+ u8 fields[7];
+ } subUnion;
+ u8 active;
u8 state; // 0x1C
- u8 text_speed;
+ u8 textSpeed;
u8 delayCounter;
u8 scrollDistance;
u8 minLetterSpacing; // 0x20
@@ -173,13 +174,13 @@ extern const struct FontInfo *gFonts;
struct GlyphWidthFunc
{
- u32 font_id;
+ u32 fontId;
s32 (*func)(u16 glyphId, bool32 isJapanese);
};
struct KeypadIcon
{
- u16 tile_offset;
+ u16 tileOffset;
u8 width;
u8 height;
};
@@ -262,5 +263,6 @@ s32 GetGlyphWidthFont5(u16 glyphId, bool32 isJapanese);
void sub_80062B0(struct Sprite *sprite);
u8 CreateTextCursorSpriteForOakSpeech(u8 sheetId, u16 x, u16 y, u8 priority, u8 subpriority);
void sub_8006398(u8 spriteId);
+s32 GetGlyphWidthFont6(u16 font_type, bool32 isJapanese);
#endif // GUARD_TEXT_H
diff --git a/include/trainer_pokemon_sprites.h b/include/trainer_pokemon_sprites.h
index 833268d48..a7ad603b4 100644
--- a/include/trainer_pokemon_sprites.h
+++ b/include/trainer_pokemon_sprites.h
@@ -15,5 +15,6 @@ u16 CreateTrainerPicSprite(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 palet
u16 FreeAndDestroyTrainerPicSprite(u16);
u16 PlayerGenderToFrontTrainerPicId_Debug(u8 gender, bool8 getClass);
u16 CreateMonPicSprite_HandleDeoxys(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
+u16 LoadMonPicForCredits(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId);
#endif // GUARD_TRAINER_POKEMON_SPRITES_H