Merge pull request #466 from Kermalis/fix-portraits
Some checks failed
GithubCI / build (push) Has been cancelled

Fix portrait data + names + deduplicate
This commit is contained in:
AnonymousRandomPerson 2025-11-29 22:17:45 -06:00 committed by GitHub
commit 64dd2ae1ef
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
65 changed files with 1044 additions and 1035 deletions

View File

@ -3,6 +3,7 @@
#include "portrait_placement.h"
const struct PortraitPlacementInfo *GetPortraitPlacementInfo(u8 id);
// See enum "PortraitPlacementID"
const PortraitPlacementInfo *GetPortraitPlacementInfo(u8 id);
#endif
#endif // GUARD_DUNGEON_PORTRAIT_PLACEMENT_H

View File

@ -1,41 +1,41 @@
#ifndef GUARD_PORTRAIT_PLACEMENT_H
#define GUARD_PORTRAIT_PLACEMENT_H
// Note: There are two the same, duplicated tables for dungeon and scripts.
#include "structs/str_position.h"
struct PortraitPlacementInfo
// Size: R=0x8 | B=0x5
typedef struct PortraitPlacementInfo
{
DungeonPos pos;
bool8 flip;
};
/* 0x0 */ DungeonPos pos;
/* 0x4 */ bool8 flip;
} PortraitPlacementInfo;
// Sets of x, y pos and flips. Instead of passing positions for each portrait, a set id is passed and positions are taken from the table.
enum PortraitPlacements
// These are named like `PLACEMENT_X_Y` and `PLACEMENT_X_Y_FLIP`
enum PortraitPlacementID
{
PLACEMENT_LEFT,
PLACEMENT_MIDDLE_TOP,
PLACEMENT_LEFT_, // Same as PLACEMENT_LEFT
PLACEMENT_RIGHT,
PLACEMENT_MIDDLE_LEFT,
PLACEMENT_MIDDLE_RIGHT,
PLACEMENT_MIDDLE_TOP_FLIP,
PLACEMENT_LEFT_FLIP,
PLACEMENT_RIGHT_FLIP,
PLACEMENT_MIDDLE_LEFT_FLIP,
PLACEMENT_MIDDLE_RIGHT_FLIP,
PLACEMENT_TOP,
PLACEMENT_TOP_LEFT,
PLACEMENT_TOP_RIGHT,
PLACEMENT_MIDDLE_TOP_LEFT,
PLACEMENT_MIDDLE_TOP_RIGHT,
PLACEMENT_TOP_FLIP,
PLACEMENT_TOP_LEFT_FLIP,
PLACEMENT_TOP_RIGHT_FLIP,
PLACEMENT_MIDDLE_TOP_LEFT_FLIP,
PLACEMENT_MIDDLE_TOP_RIGHT_FLIP,
PLACEMENT_LEFT_BOTTOM_1,
PLACEMENT_CENTERLEFT_CENTER,
PLACEMENT_LEFT_BOTTOM_2, // Same as PLACEMENT_LEFT_BOTTOM_1
PLACEMENT_RIGHT_BOTTOM_FLIP,
PLACEMENT_MIDLEFT_BOTTOM,
PLACEMENT_MIDRIGHT_BOTTOM_FLIP,
PLACEMENT_CENTERRIGHT_CENTER_FLIP,
PLACEMENT_LEFT_BOTTOM_FLIP,
PLACEMENT_RIGHT_BOTTOM,
PLACEMENT_MIDLEFT_BOTTOM_FLIP,
PLACEMENT_MIDRIGHT_BOTTOM,
PLACEMENT_CENTERLEFT_TOP,
PLACEMENT_LEFT_MIDTOP,
PLACEMENT_RIGHT_MIDTOP_FLIP,
PLACEMENT_MIDLEFT_TOP,
PLACEMENT_MIDRIGHT_TOP_FLIP,
PLACEMENT_CENTERRIGHT_TOP_FLIP,
PLACEMENT_LEFT_MIDTOP_FLIP,
PLACEMENT_RIGHT_MIDTOP,
PLACEMENT_MIDLEFT_TOP_FLIP,
PLACEMENT_MIDRIGHT_TOP,
PLACEMENT_COUNT
};
#endif
#endif // GUARD_PORTRAIT_PLACEMENT_H

View File

@ -19,7 +19,7 @@ typedef struct PortraitGfx
/* 0x0 */ PortraitGfxSub sprites[13];
} PortraitGfx;
// size: 0x10
// Size: R=0x10 | B=0xF
typedef struct MonPortraitMsg
{
/* 0x0 */ OpenedFile *faceFile;

View File

@ -47,7 +47,7 @@ static const struct ScriptCommand s_gs162_g1_s0_lives0_dlg0[] = { /* 0x820fe54 *
WAIT(30),
MSG_QUIET(0, _("...Oh?{WAIT_PRESS} There's someone here.")),
MSG_QUIET(0, _("Who is it...?{WAIT_PRESS} Someone I know...?")),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000004),
MSG_QUIET(0, _("......{WAIT_PRESS}Hmm... I can't remember.")),
MSG_QUIET(0, _("............")),
TEXTBOX_CLEAR,
@ -104,7 +104,7 @@ static const struct ScriptCommand s_gs162_g2_s0_lives0_dlg0[] = { /* 0x8210190 *
WAIT(30),
MSG_QUIET(0, _("Huh? It's shaking.{WAIT_PRESS} An earthquake...?")),
{ 0x97, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Whoa! It's getting worse.")),
PORTRAIT_REP(0x0000, 0x00000000),
MSG_QUIET(0, _("For a dream, this feels strangely\nreal, but...")),
@ -152,7 +152,7 @@ static const struct ScriptCommand s_gs162_g3_s0_lives0_dlg0[] = { /* 0x8210568 *
MSG_QUIET(0, _("...What?{WAIT_PRESS} Human?{WAIT_PRESS} My role?")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000007),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000007),
MSG_QUIET(0, _("W-wait.\nPlease, tell me more.")),
MSG_QUIET(0, _("......{WAIT_PRESS}\nI can't... Drifting off...")),
MSG_QUIET(0, _("............")),
@ -271,11 +271,11 @@ static const struct ScriptCommand s_gs162_g4_s0_lives0_dlg0[] = { /* 0x8210c68 *
MSG_NPC(-1, _(" I am {NAME_2}.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Ga-{NAME_2}...?!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000041),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000041),
MSG_NPC(2, _(" I'm so glad. Finally...{WAIT_PRESS}\nI finally got to meet you...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -399,7 +399,7 @@ static const struct ScriptCommand s_gs162_g5_s0_lives0_dlg0[] = { /* 0x82116b8 *
MSG_NPC(-1, _(" I've been waiting for you.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Ga...{WAIT_PRESS}{NAME_2}!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -451,7 +451,7 @@ static const struct ScriptCommand s_gs162_g6_s0_lives0_dlg0[] = { /* 0x82118a0 *
ALERT_CUE(7),
AWAIT_CUE(5),
WAIT(60),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Yes...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -532,7 +532,7 @@ static const struct ScriptCommand s_gs162_g6_s0_lives0_dlg0[] = { /* 0x82118a0 *
FANFARE_PLAY2(453),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000003, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Wah!\nE-earthquake?!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -692,7 +692,7 @@ static const struct ScriptCommand s_gs162_g7_s0_lives0_dlg0[] = { /* 0x8212e70 *
{ 0x2d, 0x09, 0x0001, 0x00000052, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" You have...{WAIT_PRESS}\ncome here to perform a certain role...")),
MSG_NPC(1, _(" And, for that role...{WAIT_PRESS}\nyou became a Pokémon.")),
TEXTBOX_CLEAR,
@ -747,7 +747,7 @@ static const struct ScriptCommand s_gs162_g8_s0_lives0_dlg0[] = { /* 0x821303c *
ALERT_CUE(6),
AWAIT_CUE(5),
WAIT(60),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" It's tomorrow, isn't it?{WAIT_PRESS}\nThat you take to that underground dungeon.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -761,7 +761,7 @@ static const struct ScriptCommand s_gs162_g8_s0_lives0_dlg0[] = { /* 0x821303c *
MSG_NPC(1, _(" You have my support.\nPlease, go with strength.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000009),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000009),
MSG_QUIET(0, _("I will. Thank you.")),
MSG_QUIET(0, _("I'm feeling a little braver now.\nI will go for it.")),
PORTRAIT_REP(0x0000, 0x00000000),
@ -998,7 +998,7 @@ static const struct ScriptCommand s_gs162_g9_s0_lives0_dlg0[] = { /* 0x821452c *
{ 0x2d, 0x09, 0x0002, 0x00000052, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("............{WAIT_PRESS}Gardevoir...?")),
TEXTBOX_CLEAR,
WAIT(30),
@ -1010,7 +1010,7 @@ static const struct ScriptCommand s_gs162_g9_s0_lives0_dlg0[] = { /* 0x821452c *
MSG_QUIET(0, _("Who or what I am...?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Yes.")),
MSG_NPC(2, _(" The time has arrived.")),
MSG_NPC(2, _(" Why you have come here?")),
@ -1252,7 +1252,7 @@ static const struct ScriptCommand s_gs162_g10_s0_lives0_dlg0[] = { /* 0x8215da4
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" You can return to your\nhuman world.")),
TEXTBOX_CLEAR,
ALERT_CUE(3),

View File

@ -20,7 +20,7 @@ static const struct ScriptCommand s_gs163_g1_s0_station_sref_script[] = { /* 0x8
BGM_STOP,
SELECT_MAP(MAP_PERSONALITY_TEST_PURPLE),
{ 0x2d, 0x09, 0x0000, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000002),
MSG_QUIET(0, _("......")),
MSG_QUIET(0, _("............")),
MSG_QUIET(0, _("...Urgggh...{WAIT_PRESS} I feel horrible...")),
@ -44,7 +44,7 @@ static const struct ScriptCommand s_gs163_g1_s0_lives0_dlg0[] = { /* 0x8216594 *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000002),
MSG_QUIET(0, _("This is a dream...{WAIT_PRESS} Isn't it...?")),
MSG_QUIET(0, _("...But why...?{WAIT_PRESS}\nWhy do I feel this terrible...?")),
MSG_QUIET(0, _("This is...{WAIT_PRESS} The first time...")),
@ -75,7 +75,7 @@ static const struct ScriptCommand s_gs163_g2_s0_lives0_dlg0[] = { /* 0x8216758 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
BGM_FADEOUT(120),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("..................")),
MSG_QUIET(0, _("......The pain......")),
MSG_QUIET(0, _("......It's going away............")),
@ -116,7 +116,7 @@ static const struct ScriptCommand s_gs163_g3_s0_lives0_dlg0[] = { /* 0x8216954 *
FANFARE_PLAY2(465),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000046),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000046),
MSG_NPC(2, _(" Gegege!\nHey, {NAME_0}!")),
MSG_NPC(2, _(" Don't you dare fool around!\nI'll make you pay for it!")),
TEXTBOX_CLEAR,

View File

@ -47,7 +47,7 @@ static const struct ScriptCommand s_gs164_g1_s0_lives0_dlg0[] = { /* 0x821833c *
ALERT_CUE(6),
CAMERA_PAN(256, 0),
ALERT_CUE(6),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whoa!\nThese cracks go down deep!")),
VARIANT_DEFAULT(_(" Wow!\nAren't these fissures amazing?!")),

View File

@ -57,7 +57,7 @@ static const struct ScriptCommand s_gs165_g1_s0_lives0_dlg0[] = { /* 0x8218834 *
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_NORTH),
AWAIT_CUE(5),
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000005),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000005),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Nature's gone savage\nhere too...")),
VARIANT(/* == */ 1, _(" The forest fires are still\nburning out of control...")),

View File

@ -39,7 +39,7 @@ static const struct ScriptCommand s_gs166_g1_s0_lives0_dlg0[] = { /* 0x8218cb0 *
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_WEST),
BGM_FADEOUT(60),
WAIT(20),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_NPC(1, _(" Gasp... Gasp...")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -104,7 +104,7 @@ static const struct ScriptCommand s_gs166_g2_s0_lives0_dlg0[] = { /* 0x821915c *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" It... It's a mountain of fire!")),
TEXTBOX_CLEAR,
WAIT(20),

View File

@ -92,7 +92,7 @@ static const struct ScriptCommand s_gs167_g2_s0_lives0_dlg0[] = { /* 0x8219c28 *
WAIT(80),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Gasp, gasp...\nWe've done a lot of walking.")),
VARIANT(/* == */ 1, _(" I'm beat.\nLet's get some rest.")),
@ -161,7 +161,7 @@ static const struct ScriptCommand s_gs167_g2_s0_lives0_dlg0[] = { /* 0x8219c28 *
FANFARE_PLAY2(455),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What?{WAIT_PRESS} There are others?")),
VARIANT(/* == */ 1, _(" Who might they be?")),
@ -179,7 +179,7 @@ static const struct ScriptCommand s_gs167_g2_s0_lives0_dlg0[] = { /* 0x8219c28 *
JUMP_LABEL(4),
LABEL(3), /* = 0x03 */
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000b),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000b),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I knew it!\nI knew you'd say that too, {NAME_0}!")),
VARIANT_DEFAULT(_(" I thought so!\nYou think so too, {NAME_0}, right?!")),

View File

@ -55,13 +55,13 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
AWAIT_CUE(5),
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ANIMATION(2),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_NPC(1, _(" ...Brr... It's cold!{WAIT_PRESS}")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
WAIT(8),
FANFARE_PLAY2(480),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000007),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000007),
MSG_NPC(1, _(" Hachoo!")),
TEXTBOX_CLEAR,
WAIT(8),
@ -70,7 +70,7 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
ALERT_CUE(6),
AWAIT_CUE(5),
SELECT_ANIMATION(2),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000005),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000005),
MSG_NPC(1, _(" Yuck...{WAIT_PRESS}\nMy nose is running, and it's freezing.")),
TEXTBOX_CLEAR,
WAIT(30),
@ -79,7 +79,7 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
SELECT_ANIMATION(5),
ALERT_CUE(6),
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ..................")),
VARIANT(/* == */ 1, _(" This is one barren place...")),
@ -108,7 +108,7 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
TEXTBOX_CLEAR,
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Wh-what's that?!")),
TEXTBOX_CLEAR,
WAIT(40),
@ -116,7 +116,7 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
WAIT(90),
ALERT_CUE(4),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000004),
MSG_NPC(1, _(" ...{WAIT_PRESS}What was that?{WAIT_PRESS}\nIt looked like a Pokémon, but...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -134,7 +134,7 @@ static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 *
WAIT(30),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Well, thinking about it\nisn't going to help.{WAIT_PRESS}\nLet's keep moving.")),
VARIANT_DEFAULT(_(" I guess thinking about it\nwon't help us.{WAIT_PRESS}\nWe should keep moving.")),
@ -238,7 +238,7 @@ static const struct ScriptCommand s_gs168_g2_s0_lives0_dlg0[] = { /* 0x821ca1c *
SELECT_ANIMATION(2),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000b),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000b),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wow!")),
VARIANT_DEFAULT(_(" Oh!")),

View File

@ -35,7 +35,7 @@ static const struct ScriptCommand s_gs169_g1_s0_lives0_dlg0[] = { /* 0x821cfa4 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
WAIT(90),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000b),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000b),
MSG_NPC(1, _(" Wow!{WAIT_PRESS}\nThe snow is like frozen powder!")),
PORTRAIT_REP(0x0001, 0x00000005),
MSG_NPC(1, _(" It looks pretty, but...{WAIT_PRESS}\nIt must be harsh there...")),

View File

@ -37,7 +37,7 @@ static const struct ScriptCommand s_gs170_g1_s0_lives0_dlg0[] = { /* 0x821d2f8 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
WAIT(120),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("(This icy mountain path seems to go\non forever...)")),
MSG_QUIET(0, _("(We've walked a long way here...)")),
MSG_QUIET(0, _("({NAME_1} looks exhausted, too...)")),
@ -46,7 +46,7 @@ static const struct ScriptCommand s_gs170_g1_s0_lives0_dlg0[] = { /* 0x821d2f8 *
MSG_QUIET(0, _("(Are we really doing the right thing?)")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT_FLIP, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP, 0x0001, 0x00000002),
PORTRAIT_POS(1, 0, 2),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Brr... It's too cold!{WAIT_PRESS}\nThere's only snow around us now.")),
@ -85,7 +85,7 @@ static const struct ScriptCommand s_gs170_g1_s0_lives0_dlg0[] = { /* 0x821d2f8 *
SELECT_ANIMATION(2),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_SOUTHEAST),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000000),
PORTRAIT_POS(1, 0, 2),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............{WAIT_PRESS}\nYeah, you're right.")),
@ -119,7 +119,7 @@ static const struct ScriptCommand s_gs170_g1_s0_lives0_dlg0[] = { /* 0x821d2f8 *
SELECT_ANIMATION(2),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_SOUTHEAST),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000000),
PORTRAIT_POS(1, 0, 2),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" .........{WAIT_PRESS}Sorry.{WAIT_PRESS}\nI shouldn't have said that.\nIt doesn't help scaring you like that.")),
@ -287,17 +287,17 @@ static const struct ScriptCommand s_gs170_g2_s0_lives0_dlg0[] = { /* 0x821ee64 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
ALERT_CUE(7),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" I am so glad.{WAIT_PRESS}\nFinally, we get to meet.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("...You're...{WAIT_PRESS} What...")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000004),
PORTRAIT_POS(1, 0, 2),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, {NAME_0}.\nWhat's up with you?")),

View File

@ -108,7 +108,7 @@ static const struct ScriptCommand s_gs171_g2_s0_lives0_dlg0[] = { /* 0x821fdc4 *
ALERT_CUE(4),
AWAIT_CUE(5),
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_NPC(0, _(" ...If it keeps coming...\nIt will crash into this world.{WAIT_PRESS}\nIt shall be terrible.")),
MSG_NPC(0, _(" Something must be done...")),
TEXTBOX_CLEAR,
@ -144,14 +144,14 @@ static const struct ScriptCommand s_gs171_g3_s0_lives0_dlg0[] = { /* 0x82200b0 *
WAIT(10),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
PORTRAIT_POS(2, 0, 2),
MSG_NPC(2, _(" Ah, good of you to come.")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" Kwaaaaaaaaaah!")),
TEXTBOX_CLEAR,
FANFARE_PLAY2(465),
@ -161,7 +161,7 @@ static const struct ScriptCommand s_gs171_g3_s0_lives0_dlg0[] = { /* 0x82200b0 *
ALERT_CUE(6),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHWEST),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Wh-{WAIT_PRESS}what's going on?{WAIT_PRESS}\nWhat is {NAME_3} doing?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -256,7 +256,7 @@ static const struct ScriptCommand s_gs171_g3_s0_lives0_dlg0[] = { /* 0x82200b0 *
VARIANT_DEFAULT(_(" That's my wish.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0000, 0x00000000),
MSG_QUIET(0, _("(...Yes...{WAIT_PRESS}\nAnd when that wish comes true...)")),
MSG_QUIET(0, _("(Gardevoir said...)")),
TEXTBOX_CLEAR,
@ -398,7 +398,7 @@ static const struct ScriptCommand s_gs171_g4_s0_lives0_dlg0[] = { /* 0x82213fc *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0000, 0x00000000),
MSG_QUIET(0, _("(............)")),
MSG_QUIET(0, _("(This will be my last adventure...{WAIT_PRESS}\nWith {NAME_1}...)")),
TEXTBOX_CLEAR,
@ -417,7 +417,7 @@ static const struct ScriptCommand s_gs171_g4_s0_lives0_dlg0[] = { /* 0x82213fc *
WAIT(60),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
PORTRAIT_POS(2, 0, 2),
MSG_NPC(2, _(" We're counting on you!\n{NAME_1}! {NAME_0}!")),
TEXTBOX_CLEAR,
@ -608,7 +608,7 @@ static const struct ScriptCommand s_gs171_g5_s0_lives0_dlg0[] = { /* 0x8221f00 *
TEXTBOX_CLEAR,
{ 0x27, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("(...{WAIT_PRESS}Huh...?{WAIT_PRESS} This place...)")),
TEXTBOX_CLEAR,
{ 0x3b, 0x39, 0x0004, 0x00000000, 0x00000000, NULL },
@ -617,12 +617,12 @@ static const struct ScriptCommand s_gs171_g5_s0_lives0_dlg0[] = { /* 0x8221f00 *
FANFARE_PLAY2(465),
CALL_LABEL(3),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_NPC(1, _("............Urgggh......")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _("...Regained consciousness!")), // Alakazam is 2
TEXTBOX_CLEAR,
MSG_NPC(-1, _(" Oooooooohhhhh!")),
@ -643,18 +643,18 @@ static const struct ScriptCommand s_gs171_g5_s0_lives0_dlg0[] = { /* 0x8221f00 *
WAIT(30),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000042),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000042),
PORTRAIT_POS(4, -3, 0),
MSG_NPC(4, _(" Awesome, you're alive!{WAIT_PRESS}\nYou really had all of us worried!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0008, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0008, 0x00000000),
MSG_NPC(8, _(" You were incredible!")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(11),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0006, 0x00000042),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0006, 0x00000042),
MSG_NPC(6, _(" Snivel...\nI'm so glad you're safe!{WAIT_PRESS}\nIt's fantastic!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -681,7 +681,7 @@ static const struct ScriptCommand s_gs171_g5_s0_lives0_dlg0[] = { /* 0x8221f00 *
WAIT(30),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" Fear not!\nThe star is no more.")),
MSG_NPC(3, _(" Though it will not be\nright away...{WAIT_PRESS}\nThe disasters shall soon be calmed.")),
TEXTBOX_CLEAR,
@ -1095,34 +1095,34 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
WAIT(30),
ALERT_CUE(12),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0007, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0007, 0x00000000),
PORTRAIT_POS(7, 3, 0),
MSG_NPC(7, _(" Yippee!\nThis is the greatest!")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x00000059, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000000),
MSG_NPC(9, _(" This calls for a celebration!")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x00000068, 0x00000000, NULL },
ALERT_CUE(14),
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0009, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0009, 0x00000000),
MSG_NPC(9, _(" Let me shoot my Hydro\nPump to kick it off!")),
TEXTBOX_CLEAR,
ALERT_CUE(14),
WAIT(10),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000000),
PORTRAIT_POS(4, -3, 0),
MSG_NPC(4, _(" Whoa, hold on there!\nDon't you point those things at me!{WAIT_PRESS}\nFace the other way! The other way!")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x00000055, 0x00000000, NULL },
ALERT_CUE(15),
PORTRAIT(PLACEMENT_MIDDLE_RIGHT, 0x0009, 0x00000042),
PORTRAIT(PLACEMENT_MIDRIGHT_BOTTOM_FLIP, 0x0009, 0x00000042),
MSG_NPC(9, _(" No, no!\nLet it loose! Hahaha!")),
TEXTBOX_CLEAR,
CALL_LABEL(2),
@ -1139,14 +1139,14 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHWEST),
WAIT(120),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0008, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0008, 0x00000000),
MSG_NPC(8, _(" I'll secure him so he can't\nget away.")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(16),
AWAIT_CUE(5),
{ 0x2d, 0x09, 0x0009, 0x00000059, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000000),
MSG_NPC(9, _(" Oh?{WAIT_PRESS} Not bad!")),
TEXTBOX_CLEAR,
CALL_LABEL(2),
@ -1157,7 +1157,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
ALERT_CUE(9),
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000000),
PORTRAIT_POS(4, 0, 0),
MSG_NPC(4, _(" What, you're serious?!\nNooooo! Don't!")),
TEXTBOX_CLEAR,
@ -1186,7 +1186,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
TEXTBOX_CLEAR,
WAIT(10),
BGM_SWITCH(MUS_FAREWELL),
PORTRAIT(PLACEMENT_RIGHT, 0x0005, 0x00000000), // Gardevoir is 5
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0005, 0x00000000), // Gardevoir is 5
MSG_NPC(5, _(" We owe everything to you,\n{NAME_0}, and your friends.")),
MSG_NPC(5, _(" Peace has returned to\nour world.")),
MSG_NPC(5, _(" Thank you for everything.")),
@ -1195,7 +1195,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
MSG_NPC(5, _(" It is time to bid farewell.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_QUIET(0, _("(It's finally come...{WAIT_PRESS}\nThis time has finally arrived...)")),
TEXTBOX_CLEAR,
WAIT(10),
@ -1215,7 +1215,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
ALERT_CUE(11),
ALERT_CUE(4),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0006, 0x00000000), // Caterpie is 6
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0006, 0x00000000), // Caterpie is 6
MSG_NPC(6, _(" Oh? {NAME_0}?")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -1225,7 +1225,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
WAIT(45),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x0000000c), // Partner is 1
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x0000000c), // Partner is 1
PORTRAIT_POS(1, 0, 3),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...!{WAIT_PRESS} {NAME_0}...!{WAIT_PRESS}\nYour body...{WAIT_PRESS} What's happening?")),
@ -1250,13 +1250,13 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
ALERT_CUE(6),
WAIT(30),
ALERT_CUE(12),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0007, 0x00000041), // Snubbull is 7
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0007, 0x00000041), // Snubbull is 7
MSG_NPC(7, _(" What?!")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(18),
{ 0x2d, 0x09, 0x0009, 0x0000004f, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000041), // Bellsprout is 9
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000041), // Bellsprout is 9
MSG_NPC(9, _(" Wh-what are you saying?!")),
TEXTBOX_CLEAR,
WAIT(60),
@ -1274,12 +1274,12 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(7),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000), // Alakazam is 2
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000), // Alakazam is 2
MSG_NPC(2, _(" Unbelievable!")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x0000005a, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0009, 0x00000041), // Tyranitar is 9
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0009, 0x00000041), // Tyranitar is 9
MSG_NPC(9, _(" Go back...{WAIT_PRESS}\nTo the human world?!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -1324,19 +1324,19 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
WAIT(30),
TEXTBOX_AUTO_PRESS(60, 60),
{ 0x2d, 0x09, 0x0009, 0x0000004e, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0009, 0x00000041),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0009, 0x00000041),
MSG_NPC(9, _(" {NAME_0}!")),
TEXTBOX_CLEAR,
{ 0x2d, 0x09, 0x0009, 0x00000059, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000041),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000041),
MSG_NPC(9, _(" {NAME_0}!")),
TEXTBOX_CLEAR,
{ 0x2d, 0x09, 0x0009, 0x0000004f, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000041),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000041),
PORTRAIT_POS(9, -3, 0),
MSG_NPC(9, _(" {NAME_0}!")),
TEXTBOX_CLEAR,
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0006, 0x00000042),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0006, 0x00000042),
PORTRAIT_POS(6, -1, 2),
MSG_NPC(6, _(" {NAME_0}...")),
TEXTBOX_CLEAR,
@ -1345,7 +1345,7 @@ static const struct ScriptCommand s_gs171_g6_s0_lives0_dlg0[] = { /* 0x8223d40 *
{ 0x59, 0x00, 0x0000, -0x000000c8, 0x00000000, NULL },
AWAIT_CUE(5),
TEXTBOX_AUTO_PRESS(180, 180),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000006),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000006),
MSG_NPC(1, _(" {NAME_0}!!! Nooooo!!!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -2120,23 +2120,23 @@ static const struct ScriptCommand s_gs171_g7_s0_lives0_dlg0[] = { /* 0x8227f54 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
TEXTBOX_AUTO_PRESS(-1, -1),
PORTRAIT(PLACEMENT_LEFT_, 0x0006, 0x00000042), // Caterpie is 6
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0006, 0x00000042), // Caterpie is 6
MSG_NPC(6, _(" Snivel... {NAME_0}...{WAIT_PRESS}\nWhy...{WAIT_PRESS} I don't understand...")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x00000059, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0009, 0x00000044), // Charizard is 9
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0009, 0x00000044), // Charizard is 9
MSG_NPC(9, _(" Why?{WAIT_PRESS}\nWhy was it necessary to leave us...?")),
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x09, 0x0009, 0x00000055, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0009, 0x00000043), // Now Shiftry is 9
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0009, 0x00000043), // Now Shiftry is 9
MSG_NPC(9, _(" {NAME_0} saved my\nlife...")),
MSG_NPC(9, _(" But I hadn't done anything\nto show my thanks...")),
MSG_NPC(9, _(" Left...{WAIT_PRESS}\nBefore I could even say thanks...")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000043), // Lombre is 4
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000043), // Lombre is 4
PORTRAIT_POS(4, -2, 0),
MSG_NPC(4, _(" You're right...")),
MSG_NPC(4, _(" Just upped and went like\nthat...")),
@ -2146,13 +2146,13 @@ static const struct ScriptCommand s_gs171_g7_s0_lives0_dlg0[] = { /* 0x8227f54 *
WAIT(10),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000), // Xatu is 3
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000), // Xatu is 3
MSG_NPC(3, _(" This was coming...{WAIT_PRESS}\nOur world, it was saved by {NAME_0}.")),
MSG_NPC(3, _(" I look back now...{WAIT_PRESS}\nWhen bound for the sky, {NAME_0}\nseemed...")),
MSG_NPC(3, _(" As if resigned.\nResigned to accept what was to come.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000005), // Partner is 1
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000005), // Partner is 1
MSG_NPC(1, _(" ............{WAIT_PRESS}\nI think I know...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -2175,7 +2175,7 @@ static const struct ScriptCommand s_gs171_g7_s0_lives0_dlg0[] = { /* 0x8227f54 *
MSG_NPC(1, _(" If this was coming...{WAIT_PRESS}\nWhy didn't {NAME_0} tell me?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000), // Alakazam is 2
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000), // Alakazam is 2
MSG_NPC(2, _(" Those words couldn't be\nspoken.")),
MSG_NPC(2, _(" As much as you are heart-\nbroken now...")),
MSG_NPC(2, _(" {NAME_0} must have felt\nthe same pain of leaving.")),

View File

@ -62,7 +62,7 @@ static const struct ScriptCommand s_gs174_g1_s0_lives0_dlg0[] = { /* 0x822a258 *
WAIT(10),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0004, 0x00000000),
MSG_NPC(4, _(" Keke! {NAME_0}!{WAIT_PRESS}\nDidn't take much to put you down!{WAIT_PRESS}\nServes you right!")),
MSG_NPC(4, _(" Kekeke!\nNow, what to do with you?")),
TEXTBOX_CLEAR,
@ -79,7 +79,7 @@ static const struct ScriptCommand s_gs174_g1_s0_lives0_dlg0[] = { /* 0x822a258 *
AWAIT_CUE(5),
SELECT_ANIMATION(51),
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000005),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000005),
MSG_QUIET(0, _("(............)")),
MSG_QUIET(0, _("(Gengar is dragging me...)")),
MSG_QUIET(0, _("(...{WAIT_PRESS}Gengar said...)")),
@ -88,7 +88,7 @@ static const struct ScriptCommand s_gs174_g1_s0_lives0_dlg0[] = { /* 0x822a258 *
MSG_QUIET(0, _("(Am I going to be abandoned in a world\nI don't know?)")),
TEXTBOX_CLEAR,
WAIT(90),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT_FLIP, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP, 0x0004, 0x00000000),
MSG_NPC(4, _(" ......")),
MSG_NPC(4, _(" ............")),
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
@ -115,7 +115,7 @@ static const struct ScriptCommand s_gs174_g1_s0_lives0_dlg0[] = { /* 0x822a258 *
ALERT_CUE(9),
AWAIT_CUE(5),
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0004, 0x00000044),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0004, 0x00000044),
MSG_NPC(4, _(" Keh! To heck with this.{WAIT_PRESS}\nI'll just ditch you here...")),
PORTRAIT_REP(0x0004, 0x00000000),
MSG_NPC(4, _(" That's it. Good-bye to you.")),

File diff suppressed because it is too large Load Diff

View File

@ -467,7 +467,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
AWAIT_CUE(5),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_NORTHEAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" It's {NAME_0}'s house.")),
VARIANT(/* == */ 1, _(" It also happens to be our\nrescue team's base.")),
@ -489,7 +489,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
MSG_NPC(-1, _(" Th-thank you...")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000009),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000009),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hahaha, don't worry about it.\nNo need for thanks.")),
VARIANT(/* == */ 1, _(" But forget that...{WAIT_PRESS}\nWhat happened to you?")),
@ -499,7 +499,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
WAIT(10),
ALERT_CUE(7),
MSG_NPC(-1, _(" Y-yes...")),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
PORTRAIT_POS(2, -1, 0),
{ 0x2d, 0x03, 0x0002, 0x00000073, 0x00000000, NULL },
MSG_NPC(2, _(" I'm named Spinda.")),
@ -512,7 +512,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
TEXTBOX_CLEAR,
WAIT(30),
ALERT_CUE(6),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" A mirage Pokémon?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -537,7 +537,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
WAIT(10),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hold up a second!{WAIT_PRESS}\nAre you sure you want to give up that\neasily?")),
VARIANT_DEFAULT(_(" Wait a second!{WAIT_PRESS}\nAre you sure you won't regret giving up\nthat easily?")),
@ -569,7 +569,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
SELECT_EFFECTS(9, 1),
WAIT(30),
ALERT_CUE(6),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" What is this?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -613,7 +613,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
AWAIT_CUE(5),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, are you OK?{WAIT_PRESS}\nYou still look wobbly on your feet.")),
VARIANT_DEFAULT(_(" Wait, are you OK?{WAIT_PRESS}\nYou're still unsteady on your feet.")),
@ -621,7 +621,7 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
WAIT(10),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
MSG_NPC(2, _(" Oh, no.\nWhen I walk, I always totter.{WAIT_PRESS}\nBye.")),
TEXTBOX_CLEAR,
WAIT(20),
@ -631,13 +631,13 @@ static const struct ScriptCommand s_gs12_g9_s0_lives0_dlg0[] = { /* 0x81e2ec0 */
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_SOUTH),
AWAIT_CUE(5),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" {COLOR GREEN}Clear Wing{RESET}, huh...{WAIT_PRESS}\nI don't have a clue what this is all about...")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINLEFT1, DIRECTION_SOUTHEAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But you are interested in\nthe mirage Pokémon, right?")),
VARIANT(/* == */ 1, _(" For something like this,\nXatu'd be the one to ask.")),
@ -893,7 +893,7 @@ static const struct ScriptCommand s_gs12_g10_s0_lives0_dlg0[] = { /* 0x81e507c *
CALL_SCRIPT(LOOK_AROUND_FUNC),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Wha...{WAIT_PRESS} What is it?!")),
MSG_QUIET(0, _("What...{WAIT_PRESS}\nWhat's happening outside?!")),
TEXTBOX_CLEAR,
@ -1320,13 +1320,13 @@ static const struct ScriptCommand s_gs12_g15_s0_lives0_dlg0[] = { /* 0x81e7560 -
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000000),
MSG_QUIET(0, _("...I'm still the same.")),
MSG_QUIET(0, _("The way I look...\nI'm still {POKEMON_0}.")),
MSG_QUIET(0, _("But why would I be transformed\ninto a Pokémon?")),
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000004),
MSG_QUIET(0, _("............{WAIT_PRESS}\nHmm... I don't understand this at all...")),
MSG_QUIET(0, _("........................")),
MSG_QUIET(0, _("............{WAIT_PRESS}\nI feel groggy and sleepy...")),
@ -1434,7 +1434,7 @@ static const struct ScriptCommand s_gs12_g17_s0_lives0_dlg0[] = { /* 0x81e7be8 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000000),
MSG_QUIET(0, _("..................")),
MSG_QUIET(0, _("Oof...{WAIT_PRESS}\nI'm feeling refreshed!")),
MSG_QUIET(0, _("I still look like a Pokémon, but...")),
@ -2240,7 +2240,7 @@ static const struct ScriptCommand s_gs12_g37_s0_lives0_dlg0[] = { /* 0x81eab48 *
WAIT(30),
FANFARE_PLAY2(466),
MSG_QUIET(0, _("{NAME_2} knows!{WAIT_PRESS}\nShe knows why I became a Pokémon.")),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000004),
MSG_QUIET(0, _("She also said something about a role...{WAIT_PRESS}\nWhat did she mean by that?")),
TEXTBOX_CLEAR,
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
@ -2285,7 +2285,7 @@ static const struct ScriptCommand s_gs12_g38_s0_lives0_dlg0[] = { /* 0x81eaddc *
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000003, NULL },
WAIT(30),
CALL_SCRIPT(SHOCK_FUNC),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Oh, wow, another earthquake...")),
TEXTBOX_CLEAR,
WAIT(120),
@ -2335,7 +2335,7 @@ static const struct ScriptCommand s_gs12_g39_s0_lives0_dlg0[] = { /* 0x81eb100 *
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000003, NULL },
WAIT(30),
CALL_SCRIPT(SHOCK_FUNC),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x0000000c),
MSG_QUIET(0, _("Oh? Another earthquake...")),
TEXTBOX_CLEAR,
WAIT(120),
@ -2353,7 +2353,7 @@ static const struct ScriptCommand s_gs12_g39_s0_lives0_dlg0[] = { /* 0x81eb100 *
AWAIT_CUE(5),
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" {NAME_0}!\nThere's a commotion down at the square!")),
MSG_NPC(1, _(" A lot of Pokémon have\nalready gathered there.")),
MSG_NPC(1, _(" Let's go to the square right\nnow!")),
@ -2475,7 +2475,7 @@ static const struct ScriptCommand s_gs12_g42_s0_lives0_dlg0[] = { /* 0x81eb95c *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
MSG_NPC(1, _(" How do you like Dream\nEater?{WAIT_PRESS}\nHorrible, isn't it? Keke!")),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000044),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000044),
MSG_NPC(1, _(" But who would've thought\nyou were also human before...{WAIT_PRESS}\nDidn't expect that.")),
PORTRAIT_REP(0x0001, 0x00000000),
MSG_NPC(1, _(" But who cares?\nSomeone like that's sure to be some\nlowlife. Keke!")),

View File

@ -77,8 +77,8 @@ static const struct ScriptCommand s_gs178_g1_s0_lives0_dlg0[] = { /* 0x822c5e4 -
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
CALL_SCRIPT(WAKEUP_FUNC),
ALERT_CUE(6),
AWAIT_CUE(5),
@ -104,7 +104,7 @@ static const struct ScriptCommand s_gs178_g1_s0_lives0_dlg0[] = { /* 0x822c5e4 -
VARIANT_DEFAULT(_(" You were passed out here.\nI'm glad to see you awake!")),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000001),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000001),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'm {NAME_1}.\nGlad to meet you!")),
VARIANT(/* == */ 3, _(" I'm {NAME_1}.\nHappy to meet you!")),
@ -217,7 +217,7 @@ static const struct ScriptCommand s_gs178_g1_s0_lives0_dlg0[] = { /* 0x822c5e4 -
BGM_SWITCH(MUS_THERES_TROUBLE),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
MSG_NPC(2, _(" It's horrible!\nMy {NAME_3} fell into a cavern!\nMy poor baby!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -382,9 +382,9 @@ static const struct ScriptCommand s_gs178_g2_s0_lives0_dlg0[] = { /* 0x822df60 -
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000036, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
ALERT_CUE(6),
WAIT(1),
CALL_SCRIPT(WAKEUP_FUNC),
@ -407,7 +407,7 @@ static const struct ScriptCommand s_gs178_g2_s0_lives0_dlg0[] = { /* 0x822df60 -
AWAIT_CUE(5),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Wh-where...?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -536,10 +536,10 @@ static const struct ScriptCommand s_gs178_g3_s0_lives0_dlg0[] = { /* 0x822ea18 -
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0003, 0x00000000),
MSG_NPC(2, _(" My baby's safe...{WAIT_PRESS}\nI'm sorry, I don't know how I could ever\nthank you properly...")),
TEXTBOX_CLEAR,
WAIT(10),

View File

@ -37,9 +37,9 @@ static const struct ScriptCommand s_gs179_g1_s0_lives0_dlg0[] = { /* 0x822fdd0 -
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT_REP(0x0002, 0x00000042),

View File

@ -57,7 +57,7 @@ static const struct ScriptCommand s_gs180_g1_s0_lives0_dlg0[] = { /* 0x823047c *
ALERT_CUE(8),
AWAIT_CUE(5),
{ 0x2d, 0x0a, 0x0000, 0x00000001, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
MSG_NPC(2, _(" OH, YOU ARE HERE.\nBZBZBZZ!")),
MSG_NPC(2, _(" MY FRIENDS ARE IN THIS\nCAVERN. BZBZBZZ.")),
MSG_NPC(2, _(" MY FRIENDS SHOULD BE\nON B{VALUE_0}F. PLEASE HELP THEM!\nBZBZBZZZT!")),
@ -172,7 +172,7 @@ static const struct ScriptCommand s_gs180_g2_s0_lives0_dlg0[] = { /* 0x8230ae4 *
ALERT_CUE(7),
ALERT_CUE(8),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" The {NAME_2} are in\nthere somewhere.")),
ALERT_CUE(6),
AWAIT_CUE(5),
@ -256,9 +256,9 @@ static const struct ScriptCommand s_gs180_g3_s0_lives0_dlg0[] = { /* 0x8231020 *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_, 0x0005, 0x00000001),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0005, 0x00000001),
ALERT_CUE(9),
ALERT_CUE(6),
ALERT_CUE(7),
@ -293,7 +293,7 @@ static const struct ScriptCommand s_gs180_g3_s0_lives0_dlg0[] = { /* 0x8231020 *
ALERT_CUE(9),
ALERT_CUE(10),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" YOU ARE OUR HERO.\nTHANK YOU. BZBZBZZ!")),
TEXTBOX_CLEAR,
WAIT(30),

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs181_g1_s0_lives0_dlg0[] = { /* 0x8231d84 *
ALERT_CUE(6),
WALK_GRID(256, 0),
WAIT(15),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Oh, hey, there they are.\nLet's get them out.")),
VARIANT_DEFAULT(_(" Oh, there they are!\nLet's get them out safely.")),

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs182_g1_s0_lives0_dlg0[] = { /* 0x8232228 *
ALERT_CUE(6),
WALK_RELATIVE(256, 0, -100),
WAIT(15),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So, this is it...\n{COLOR YELLOW_D}Mt. Steel{RESET}...")),
VARIANT(/* == */ 1, _(" {NAME_3}'s been taken\nto the peak here...")),
@ -58,7 +58,7 @@ static const struct ScriptCommand s_gs182_g1_s0_lives0_dlg0[] = { /* 0x8232228 *
CALL_SCRIPT(SHOCK_FUNC),
WAIT(60),
{ 0x2d, 0x0a, 0x0000, 0x00000002, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" The peak is {VALUE_0}F!\nThank you for helping! Farewell!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),
@ -160,7 +160,7 @@ static const struct ScriptCommand s_gs182_g2_s0_lives0_dlg0[] = { /* 0x8232988 *
ALERT_CUE(6),
CMD_UNK_93(4, DIR_TRANS_10, 34),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We'll take another shot at\n{COLOR YELLOW_D}Mt. Steel{RESET}.")),
VARIANT(/* == */ 1, _(" We'll rescue {NAME_3}\nno matter what it takes!")),
@ -177,7 +177,7 @@ static const struct ScriptCommand s_gs182_g2_s0_lives0_dlg0[] = { /* 0x8232988 *
CALL_SCRIPT(SHOCK_FUNC),
WAIT(60),
{ 0x2d, 0x0a, 0x0000, 0x00000002, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" The peak is {VALUE_0}F!\nThank you for helping! Farewell!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),

View File

@ -51,7 +51,7 @@ static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" Grr... I can't keep up!{WAIT_PRESS}\nI'll flee for now!")),
TEXTBOX_CLEAR,
ALERT_CUE(8),
@ -62,7 +62,7 @@ static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec *
WAIT(5),
WALK_RELATIVE(256, 0, -24),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey!\nWe sent {NAME_3} packing!")),
VARIANT(/* == */ 1, _(" You're safe now.\nCome on down!")),
@ -70,7 +70,7 @@ static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec *
VARIANT_DEFAULT(_(" It's OK now.\nCome down over here.")),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000041),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000041),
MSG_NPC(2, _(" I can't...\nI'm too scared to move...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -97,17 +97,17 @@ static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec *
TEXTBOX_CLEAR,
SELECT_ENTITIES(-1, 1),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000000),
MSG_NPC(-1, _(" BZBZBZZ!")),
ALERT_CUE(6),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey! It's those {NAME_4}\nfrom that rescue!")),
VARIANT_DEFAULT(_(" Oh, hi!\nYou're the {NAME_4} we saved!")),
TEXTBOX_CLEAR,
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000000),
PORTRAIT_POS(4, 2, 0),
MSG_NPC(4, _(" WE GOT WORD OF THIS.{WAIT_PRESS}\nWE CAN RESCUE DIGLETT FROM THE\nSKY. BZBZBZZ!")),
TEXTBOX_CLEAR,
@ -115,7 +115,7 @@ static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec *
ALERT_CUE(8),
AWAIT_CUE(5),
MSG_NPC(4, _(" HOLD ON TO US TIGHT.\nBZBZBZZZ!")),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0004, 0x00000000),
PORTRAIT_POS(4, -2, 0),
MSG_NPC(4, _(" DON'T BE SCARED.\nWE WON'T MAKE THE MISTAKE OF\nZAPPING YOU. BZBZBZZT!")),
TEXTBOX_CLEAR,

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs184_g1_s0_lives0_dlg0[] = { /* 0x82343f8 *
ALERT_CUE(6),
CMD_UNK_93(4, DIR_TRANS_10, 34),
WAIT(20),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is it.\n{NAME_2} is lost in these woods.")),
VARIANT(/* == */ 1, _(" {NAME_3}'s crew\nshould have a head start on us.")),
@ -94,7 +94,7 @@ static const struct ScriptCommand s_gs184_g2_s0_lives0_dlg0[] = { /* 0x8234830 *
{ 0x2d, 0x09, 0x0002, 0x0000005b, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's move it, {NAME_0}!")),
VARIANT(/* == */ 1, _(" Even while we're dawdling\nhere, {NAME_2}'s team...")),

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs185_g1_s0_lives0_dlg0[] = { /* 0x8234d94 *
WAIT(30),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0003, 0x00000043),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0003, 0x00000043),
MSG_NPC(3, _(" Owowowow...{WAIT_PRESS}\nYou'll pay for this!\nDon't you forget it!")),
TEXTBOX_CLEAR,
WAIT(16),
@ -58,7 +58,7 @@ static const struct ScriptCommand s_gs185_g1_s0_lives0_dlg0[] = { /* 0x8234d94 *
ALERT_CUE(11),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_EAST),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000009),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000009),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Well, those pests are gone.\nLet's find {NAME_2}.")),
VARIANT_DEFAULT(_(" No one should hold us back\nnow. Let's find {NAME_2}.")),
@ -75,14 +75,14 @@ static const struct ScriptCommand s_gs185_g1_s0_lives0_dlg0[] = { /* 0x8234d94 *
CMD_UNK_93(4, DIR_TRANS_SPINLEFT1, 94),
WAIT_FANFARE2(465),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_BOTTOM, 0x0002, 0x00000000),
PORTRAIT_POS(2, 0, -3),
MSG_NPC(2, _(" Did you maybe come looking\nfor me?")),
TEXTBOX_CLEAR,
WAIT(16),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHEAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" You must be {NAME_2}.")),
MSG_NPC(1, _(" Let's get you home.\nCaterpie was worried about you.")),
TEXTBOX_CLEAR,

View File

@ -51,7 +51,7 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
{ 0x2d, 0x09, 0x0003, 0x0000005b, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew, this is some cliff.")),
VARIANT_DEFAULT(_(" Wow! This cliff is steep!")),
@ -62,13 +62,13 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
ALERT_CUE(6),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_NORTH),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So your friend {NAME_2}\nis somewhere deep in this canyon?")),
VARIANT_DEFAULT(_(" Your friend {NAME_2}\nis lost deep in this canyon?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Yes...\nI'm sorry to ask, but please help.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -98,7 +98,7 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
VARIANT_DEFAULT(_(" Yes? What is it?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000041),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000041),
MSG_NPC(2, _(" There's something I forgot\nto mention...")),
MSG_NPC(2, _(" This canyon is known as\nthe {COLOR YELLOW_D}Silent Chasm{RESET}, but...")),
MSG_NPC(2, _(" It's rumored that an amazing\nmonster sleeps here.")),
@ -131,7 +131,7 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
WAIT(10),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" My stomach suddenly started\ncramping up! Owowow...")),
VARIANT(/* == */ 1, _(" I think it's something I ate\nthis morning...")),
@ -139,7 +139,7 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
VARIANT_DEFAULT(_(" I think my breakfast was\nspoiled or something...")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000004),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, {NAME_0}, you too,\nright?")),
VARIANT_DEFAULT(_(" Say, {NAME_0}, you're\nfeeling sick too, aren't you?")),
@ -206,7 +206,7 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
FANFARE_PLAY2(457),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000003),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000003),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What's wrong with you,\n{NAME_0}?!\nBack me up here!")),
VARIANT(/* == */ 1, _(" You're my partner!\nYou have to catch my drift better!")),
@ -265,11 +265,11 @@ static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 *
TEXTBOX_CLEAR,
WAIT(10),
{ 0x2d, 0x0a, 0x0000, 0x00000006, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" My friend Jumpluff should\nbe around B{VALUE_0}F.{WAIT_PRESS}\nPlease take care!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You bet we will!")),
VARIANT_DEFAULT(_(" OK! Gotcha!")),

View File

@ -50,7 +50,7 @@ static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c *
ALERT_CUE(12),
{ 0x89, 0x50, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(32),
PORTRAIT(PLACEMENT_RIGHT, NPC_PARTNER, 0),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, NPC_PARTNER, 0),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" {NAME_2}'s friend is\nsupposed to be around here, right?")),
VARIANT_DEFAULT(_(" Isn't this the place?\nWhere {NAME_2}'s friend is supposed\nto be?")),
@ -70,7 +70,7 @@ static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c *
MSG_NPC(NPC_PARTNER, _(" We came for you!\nAre you all right?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, NPC_JUMPLUFF, 65),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, NPC_JUMPLUFF, 65),
MSG_NPC(NPC_JUMPLUFF, _(" Yes...\nI'm fine, but...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -92,7 +92,7 @@ static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c *
ROTATE_TO(2, DIR_TRANS_SPINRIGHT1, DIRECTION_EAST),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, NPC_PARTNER, 0),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, NPC_PARTNER, 0),
MSG_NPC(NPC_PARTNER, _(" Let's go!")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -108,7 +108,7 @@ static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c *
VARIANT_DEFAULT(_(" Listen! Are you OK?\nSnap out of it!")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, NPC_SHIFTRY, 65),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, NPC_SHIFTRY, 65),
MSG_NPC(NPC_SHIFTRY, _(" ...Urrrgh.\nForget about me...")),
MSG_NPC(NPC_SHIFTRY, _(" Get away from here!")),
TEXTBOX_CLEAR,
@ -175,7 +175,7 @@ static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c *
WAIT(15),
BGM_SWITCH(MUS_RISING_FEAR),
MSG_NPC(-1, _(" I am {NAME_6}!\nThe embodiment of lightning!")),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, NPC_ZAPDOS, 0),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, NPC_ZAPDOS, 0),
MSG_NPC(NPC_ZAPDOS, _(" If you wish to save\n{NAME_3}, then scale {COLOR YELLOW_D}Mt. Thunder{RESET}!")),
TEXTBOX_CLEAR,
ALERT_CUE(11),

View File

@ -50,7 +50,7 @@ static const struct ScriptCommand s_gs188_g1_s0_lives0_dlg0[] = { /* 0x82392cc *
ALERT_CUE(6),
WALK_GRID(256, 0),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This must be the foot of\n{COLOR YELLOW_D}Mt. Thunder{RESET}...")),
VARIANT(/* == */ 1, _(" I wonder if {NAME_3}'s\nteam is already on the way...")),
@ -144,7 +144,7 @@ static const struct ScriptCommand s_gs188_g2_s0_lives0_dlg0[] = { /* 0x8239a30 *
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_EAST),
WAIT(20),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" {NAME_0}!\nThis time, we're gonna rescue\n{NAME_2}!")),
VARIANT(/* == */ 1, _(" Let's give it our best!")),

View File

@ -151,7 +151,7 @@ static const struct ScriptCommand s_gs189_g1_s0_lives0_dlg0[] = { /* 0x823a4d8 *
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nThings didn't go right for us...")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThings didn't turn out in our favor...")),

View File

@ -61,7 +61,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
{ 0x2d, 0x09, 0x0006, 0x00000055, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _("Gyaoooh!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -69,7 +69,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
ALERT_CUE(10),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000000),
MSG_NPC(3, _(" Wh-what is going on...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -94,7 +94,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
AWAIT_CUE(5),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0004, 0x00000000),
MSG_NPC(4, _(" You want more?\nI'll take you on!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -132,7 +132,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
ALERT_CUE(10),
AWAIT_CUE(5),
CALL_SCRIPT(NOTICE_FUNC),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Look!\nThere's {NAME_6}!")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -143,22 +143,22 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
WALK_DIRECT(32, 0),
CMD_UNK_93(4, DIR_TRANS_10, 85),
WAIT(16),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000000),
MSG_NPC(4, _(" Are you OK?")),
TEXTBOX_CLEAR,
ALERT_CUE(11),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0006, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0006, 0x00000000),
MSG_NPC(6, _(" Ungh... Uh, yeah...{WAIT_PRESS}\nSomehow, I am...")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000001),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000001),
MSG_NPC(1, _(" I'm glad you're safe!")),
TEXTBOX_CLEAR,
ALERT_CUE(10),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0005, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0005, 0x00000000),
MSG_NPC(5, _(" But that was an eye-opener.")),
MSG_NPC(5, _(" Driving off that\n{NAME_2}.")),
TEXTBOX_CLEAR,
@ -173,7 +173,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
WAIT(32),
ROTATE_TO(4, DIR_TRANS_SPINLEFT1, DIRECTION_NORTHWEST),
WAIT(32),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000000),
MSG_NPC(3, _(" ......")),
MSG_NPC(3, _(" I sensed it when we first\nmet...")),
MSG_NPC(3, _(" Perhaps...{WAIT_PRESS}\nYou aren't a Pokémon, are you?")),
@ -182,7 +182,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
ALERT_CUE(6),
ALERT_CUE(13),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Wow!\nHow can you tell that?!")),
MSG_NPC(1, _(" But you're right.\n{NAME_0} isn't a Pokémon.")),
MSG_NPC(1, _(" {NAME_0} is a human.")),
@ -192,15 +192,15 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
ALERT_CUE(10),
ALERT_CUE(11),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0006, 0x00000041),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0006, 0x00000041),
MSG_NPC(6, _(" What?!")),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000041),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000041),
MSG_NPC(4, _(" A human?!")),
PORTRAIT(PLACEMENT_LEFT_, 0x0005, 0x00000041),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0005, 0x00000041),
MSG_NPC(5, _(" Is that possible?\nCan something like that happen?")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" {NAME_0} doesn't really\nknow what happened, either.")),
VARIANT(/* == */ 1, _(" {NAME_0} just woke up\none morning here as a Pokémon...")),
@ -228,14 +228,14 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
MSG_NPC(3, _(" No...{WAIT_PRESS}\nI can't determine that.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000005),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000005),
MSG_NPC(1, _(" Oh...\nI thought you would know...")),
TEXTBOX_CLEAR,
WAIT(10),
MSG_NPC(3, _(" However...{WAIT_PRESS}\nThere is a way for unveiling the truth.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000b),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000b),
MSG_NPC(1, _(" Oh, really? How?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -245,7 +245,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
MSG_NPC(3, _(" Xatu is his name.{WAIT_PRESS}\nHe should shed light on your puzzling\nfriend.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" OK!\nSo we should go see Xatu.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -266,7 +266,7 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
WAIT(10),
ALERT_CUE(11),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0006, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0006, 0x00000000),
MSG_NPC(6, _(" Uh... Yeah...{WAIT_PRESS}\nI guess we should...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -305,13 +305,13 @@ static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 *
ALERT_CUE(4),
AWAIT_CUE(5),
WAIT(20),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000000),
MSG_NPC(4, _(" Alakazam.{WAIT_PRESS}\nI know you.")),
MSG_NPC(4, _(" I don't think you're \ncompletely ignorant about this.")),
MSG_NPC(4, _(" ......{WAIT_PRESS}\nYou know something, don't you?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" There is something that\nconcerns me.{WAIT_PRESS}\nBut it should go unspoken for now.")),
MSG_NPC(3, _(" ...For their sake...")),
TEXTBOX_CLEAR,

View File

@ -43,7 +43,7 @@ static const struct ScriptCommand s_gs191_g1_s0_lives0_dlg0[] = { /* 0x823d8e0 *
WAIT(30),
WALK_GRID(256, 1),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" This is the {COLOR YELLOW_D}Great Canyon{RESET}...")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -111,7 +111,7 @@ static const struct ScriptCommand s_gs191_g2_s0_lives0_dlg0[] = { /* 0x823ddac *
WALK_GRID(256, 1),
WAIT(30),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_EAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" {NAME_0}!\nThis time we'll make it to the peak,\nall right?")),
VARIANT(/* == */ 1, _(" We'll meet {NAME_3}\nand ask about you, {NAME_0}.")),

View File

@ -192,7 +192,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
WAIT(30),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_EAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Yes! We finally made it to\nthe top, {NAME_0}!")),
VARIANT_DEFAULT(_(" Yes! We've finally made it\nto the top, {NAME_0}!")),
@ -234,7 +234,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
WAIT(10),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Hello?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -273,7 +273,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
TEXTBOX_CLEAR,
WAIT(10),
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah? Tickle him?{WAIT_PRESS}\n...OK. I'll try it.")),
VARIANT_DEFAULT(_(" Huh? Tickle him?{WAIT_PRESS}\n...OK. It's worth a try.")),
@ -339,7 +339,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
WAIT(30),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_SPINLEFT1, DIRECTION_NORTHEAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Huh?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -355,7 +355,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
AWAIT_CUE(5),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" He finally started laughing...")),
VARIANT(/* == */ 1, _(" Maybe...{WAIT_PRESS}\nIs he just dense?")),
@ -373,7 +373,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
ALERT_CUE(6),
ALERT_CUE(9),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Yikes!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -384,14 +384,14 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah?\nWe're gonna attack?")),
VARIANT_DEFAULT(_(" Huh?\nWe're going to attack?!")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000007),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000007),
MSG_NPC(1, _(" Uh, no!\nNo way!")),
MSG_NPC(1, _(" I mean, he's kind of creepy!")),
ALERT_CUE(6),
@ -399,12 +399,12 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
MSG_NPC(1, _(" It'd be scary for\nsure!")),
TEXTBOX_CLEAR,
WAIT(60),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...{WAIT_PRESS}Oh, all right. \nYou really want me to do this.")),
VARIANT_DEFAULT(_(" ...{WAIT_PRESS}Fine, then.\nI'll do it, OK?")),
TEXTBOX_CLEAR,
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" If something happens to me,\npromise you'll help me.\nI'm counting on you.")),
VARIANT(/* == */ 3, _(" If anything happens to me,\nyou have to help me. You have to promise!")),
@ -418,7 +418,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
AWAIT_CUE(5),
WAIT(30),
TEXTBOX_AUTO_PRESS(45, 60),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000003),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000003),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right. Counting down.{WAIT_PRESS}\nThree...{WAIT_PRESS} Two...{WAIT_PRESS} One...{WAIT_PRESS} Now...!")),
VARIANT_DEFAULT(_(" OK. Counting down.{WAIT_PRESS}\nThree...{WAIT_PRESS} Two...{WAIT_PRESS} One...{WAIT_PRESS} Now...!")),
@ -435,7 +435,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
ALERT_CUE(9),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
SET_DIR_WAIT(DIRECTION_NORTHEAST, 10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Yikes!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -458,7 +458,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Guessed your identity?\nThat's a bit much.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -474,7 +474,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Huh?!\nHow can you tell that?!")),
TEXTBOX_CLEAR,
WAIT(10),
@ -492,7 +492,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
AWAIT_CUE(5),
ALERT_CUE(7),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Then, you've got to tell us,\n{NAME_2}!")),
VARIANT_DEFAULT(_(" If you know, please tell us,\n{NAME_2}!")),
@ -525,9 +525,9 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
MSG_NPC(2, _(" They are tied together.\nInseparably so.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Wait. {NAME_0}\nbecoming a Pokémon and...{WAIT_PRESS}the natural\ndisasters...{WAIT_PRESS}are related?!")),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" What do you mean?!")),
MSG_NPC(1, _(" What does {NAME_0}\nhave to do with the natural disasters\nwe've been seeing?")),
TEXTBOX_CLEAR,
@ -537,7 +537,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
WAIT(30),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000003),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000003),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What is it?! Hey?!")),
VARIANT(/* == */ 1, _(" Why did you clam up?\nCome on, tell us, please!")),
@ -554,7 +554,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
ALERT_CUE(6),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wh-{WAIT_PRESS}what did you say?")),
VARIANT(/* == */ 1, _(" The world...{WAIT_PRESS}\nThe unthinkable is going to happen?")),
@ -567,7 +567,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000005),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000005),
MSG_NPC(1, _(" Xa-{NAME_2}...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -582,7 +582,7 @@ static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 *
BGM_FADEOUT(150),
AWAIT_CUE(5),
MSG_NPC(3, _(" Kekeh!\nIsn't that a surprise!")),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000044),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000044),
MSG_NPC(3, _(" That {NAME_0}...\nwas human...")),
TEXTBOX_CLEAR,
ALERT_CUE(8),

View File

@ -134,14 +134,14 @@ static const struct ScriptCommand s_gs193_g1_s0_lives0_dlg0[] = { /* 0x824313c *
WAIT(120),
ALERT_CUE(6),
WALK_GRID(256, 0),
PORTRAIT(PLACEMENT_RIGHT_FLIP, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew!\nWe sure came a long way out.")),
VARIANT_DEFAULT(_(" Whew.\nWe've sure traveled a long way.")),
BGM_SWITCH(MUS_LAPIS_CAVE),
ALERT_CUE(6),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But I was thinking...\nWhile we were on the way...")),
VARIANT_DEFAULT(_(" But while we were moving,\nI couldn't help thinking...")),
@ -244,7 +244,7 @@ static const struct ScriptCommand s_gs193_g2_s0_lives0_dlg0[] = { /* 0x8243ab8 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),
@ -448,7 +448,7 @@ static const struct ScriptCommand s_gs193_g4_s0_lives0_dlg0[] = { /* 0x8244804 *
ALERT_CUE(6),
CALL_SCRIPT(NOTICE_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" What the...?{WAIT_PRESS}\nIsn't this where we started from?!")),
TEXTBOX_CLEAR,
FANFARE_PLAY2(468),
@ -512,7 +512,7 @@ static const struct ScriptCommand s_gs193_g5_s0_lives0_dlg0[] = { /* 0x8244d30 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),

View File

@ -54,7 +54,7 @@ static const struct ScriptCommand s_gs194_g1_s0_lives0_dlg0[] = { /* 0x8245734 *
ALERT_CUE(6),
AWAIT_CUE(5),
CMD_UNK_93(4, DIR_TRANS_11, 34),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew...\nWe finally got through that cave.")),
VARIANT(/* == */ 1, _(" Where are the Pokémon\nwho are chasing us?")),

View File

@ -183,7 +183,7 @@ static const struct ScriptCommand s_gs195_g1_s0_lives0_dlg0[] = { /* 0x8246544 *
CALL_SCRIPT(LOOK_AROUND_FUNC),
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_SOUTH),
WAIT(20),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew.\nI think we gave them the slip.")),
VARIANT_DEFAULT(_(" Whew.\nI think we managed to evade them.")),
@ -405,7 +405,7 @@ static const struct ScriptCommand s_gs195_g3_s0_lives0_dlg0[] = { /* 0x82474ec *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),
@ -415,7 +415,7 @@ static const struct ScriptCommand s_gs195_g3_s0_lives0_dlg0[] = { /* 0x82474ec *
ALERT_CUE(6),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_EAST),
PORTRAIT(PLACEMENT_RIGHT_FLIP, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Ssh!{WAIT_PRESS}\nSomeone's coming.")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -442,7 +442,7 @@ static const struct ScriptCommand s_gs195_g3_s0_lives0_dlg0[] = { /* 0x82474ec *
WAIT(120),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_NPC(1, _(" ............")),
MSG_NPC(1, _(" ........................")),
TEXTBOX_CLEAR,
@ -454,11 +454,11 @@ static const struct ScriptCommand s_gs195_g3_s0_lives0_dlg0[] = { /* 0x82474ec *
CALL_SCRIPT(LOOK_AROUND_FUNC),
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_SOUTHWEST),
WAIT(20),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_NPC(1, _(" ...Whew.")),
ALERT_CUE(6),
ROTATE_TO(4, DIR_TRANS_11, DIRECTION_EAST),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We'll have to get over this\nmountain to get away from them.")),
VARIANT_DEFAULT(_(" If we're going to get away,\nwe'll have to go over the mountain.")),
@ -522,7 +522,7 @@ static const struct ScriptCommand s_gs195_g4_s0_lives0_dlg0[] = { /* 0x8247d30 *
ALERT_CUE(6),
CALL_SCRIPT(NOTICE_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" What the...?{WAIT_PRESS}\nIsn't this where we started from?!")),
TEXTBOX_CLEAR,
FANFARE_PLAY2(468),
@ -585,7 +585,7 @@ static const struct ScriptCommand s_gs195_g5_s0_lives0_dlg0[] = { /* 0x8248230 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),

View File

@ -166,7 +166,7 @@ static const struct ScriptCommand s_gs196_g1_s0_lives0_dlg0[] = { /* 0x82491e4 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThat didn't work out...")),

View File

@ -49,7 +49,7 @@ static const struct ScriptCommand s_gs197_g1_s0_lives0_dlg0[] = { /* 0x82498b0 *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _("Urggggh!")),
MSG_NPC(2, _(" I'm not done!\nI'm not finished yet!")),
TEXTBOX_CLEAR,
@ -59,7 +59,7 @@ static const struct ScriptCommand s_gs197_g1_s0_lives0_dlg0[] = { /* 0x82498b0 *
FANFARE_PLAY2(455),
ALERT_CUE(6),
CALL_SCRIPT(NOTICE_FUNC),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000007),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000007),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wait!\nHold it!")),
VARIANT(/* == */ 1, _(" We didn't come to cause any\ntrouble.")),

View File

@ -151,7 +151,7 @@ static const struct ScriptCommand s_gs198_g1_s0_lives0_dlg0[] = { /* 0x824c290 *
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000004),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...So, we do have to get\nthrough this, huh?")),
VARIANT_DEFAULT(_(" OK.\nWe don't have a choice--we have to\nget through this place.")),
@ -353,7 +353,7 @@ static const struct ScriptCommand s_gs198_g3_s0_lives0_dlg0[] = { /* 0x824d0c0 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),
@ -416,12 +416,12 @@ static const struct ScriptCommand s_gs198_g4_s0_lives0_dlg0[] = { /* 0x824d500 *
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_WEST),
WAIT(30),
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nWe didn't do well at all...")),
TEXTBOX_CLEAR,
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That {NAME_2}...\nHe's one tough customer.")),
VARIANT(/* == */ 1, _(" But why aren't we allowed\nto go into this forest?")),
@ -475,7 +475,7 @@ static const struct ScriptCommand s_gs198_g5_s0_lives0_dlg0[] = { /* 0x824d980 *
ALERT_CUE(6),
CALL_SCRIPT(NOTICE_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" What the...?{WAIT_PRESS}\nIsn't this where we started from?!")),
TEXTBOX_CLEAR,
FANFARE_PLAY2(468),
@ -543,7 +543,7 @@ static const struct ScriptCommand s_gs198_g6_s0_lives0_dlg0[] = { /* 0x824ded4 *
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
AWAIT_CUE(5),
CMD_UNK_93(4, DIR_TRANS_10, 34),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),

View File

@ -167,7 +167,7 @@ static const struct ScriptCommand s_gs199_g1_s0_lives0_dlg0[] = { /* 0x824eea4 *
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThat didn't work out...")),
@ -235,7 +235,7 @@ static const struct ScriptCommand s_gs199_g2_s0_lives0_dlg0[] = { /* 0x824f33c *
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nWe didn't do well at all...")),

View File

@ -49,7 +49,7 @@ static const struct ScriptCommand s_gs200_g1_s0_lives0_dlg0[] = { /* 0x824fcb4 *
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Please, {NAME_2}!")),
VARIANT(/* == */ 1, _(" We have to keep moving.\nWe have to get through this.")),
@ -63,7 +63,7 @@ static const struct ScriptCommand s_gs200_g1_s0_lives0_dlg0[] = { /* 0x824fcb4 *
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0002, 0x00000000),
PORTRAIT_POS(2, 3, 0),
MSG_NPC(2, _(" No!\nI cannot allow your passage!")),
TEXTBOX_CLEAR,
@ -171,7 +171,7 @@ static const struct ScriptCommand s_gs200_g1_s0_lives0_dlg0[] = { /* 0x824fcb4 *
MSG_NPC(2, _(" A-Absol!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0003, 0x00000000),
PORTRAIT_POS(3, -2, 2),
MSG_NPC(3, _(" There is nothing false in\nwhat they said.")),
MSG_NPC(3, _(" Calamities are indeed\noccurring in nature everywhere.")),
@ -235,7 +235,7 @@ static const struct ScriptCommand s_gs200_g1_s0_lives0_dlg0[] = { /* 0x824fcb4 *
ALERT_CUE(8),
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_NORTHEAST),
WAIT(30),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0003, 0x00000000),
MSG_NPC(3, _(" ..................")),
MSG_NPC(3, _(" Rather than saying thanks,\nfocus on stopping the calamities before\nthey worsen.")),
MSG_NPC(3, _(" If they are left unchecked,\nworse will befall us...{WAIT_PRESS}\nMy instinct warns me so.")),

View File

@ -142,7 +142,7 @@ static const struct ScriptCommand s_gs201_g1_s0_lives0_dlg0[] = { /* 0x8252548 *
{ 0x2d, 0x09, 0x0003, 0x00000063, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...OK.\nSo that's what happened...")),
VARIANT(/* == */ 1, _(" {NAME_2} appeared to\nyou...")),
@ -451,7 +451,7 @@ static const struct ScriptCommand s_gs201_g3_s0_lives0_dlg0[] = { /* 0x82541ac *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Darn...{WAIT_PRESS}\nThat didn't go well.")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nThat turned out badly.")),
@ -516,7 +516,7 @@ static const struct ScriptCommand s_gs201_g4_s0_lives0_dlg0[] = { /* 0x82545ec *
ALERT_CUE(6),
CALL_SCRIPT(NOTICE_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" What the...?{WAIT_PRESS}\nIsn't this where we started from?!")),
TEXTBOX_CLEAR,
FANFARE_PLAY2(468),
@ -584,7 +584,7 @@ static const struct ScriptCommand s_gs201_g5_s0_lives0_dlg0[] = { /* 0x8254af8 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...{WAIT_PRESS}\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...{WAIT_PRESS}\nWe couldn't break through...")),

View File

@ -179,7 +179,7 @@ static const struct ScriptCommand s_gs202_g1_s0_lives0_dlg0[] = { /* 0x8255f00 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThat didn't work out...")),

View File

@ -68,7 +68,7 @@ static const struct ScriptCommand s_gs203_g1_s0_lives0_dlg0[] = { /* 0x82566f8 *
WAIT(30),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000041),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000041),
MSG_NPC(2, _(" Kekeh! Here at last!\nWe're at the peak!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),
@ -93,7 +93,7 @@ static const struct ScriptCommand s_gs203_g1_s0_lives0_dlg0[] = { /* 0x82566f8 *
WAIT(10),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" ............{WAIT_PRESS}What do you want?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -335,7 +335,7 @@ static const struct ScriptCommand s_gs203_g2_s0_lives0_dlg0[] = { /* 0x8257ee8 *
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
ALERT_CUE(6),
{ 0x89, 0x68, 0x0100, 0x00000004, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We finally made it.")),
VARIANT(/* == */ 1, _(" This is the peak.{WAIT_PRESS}\n...Right?")),
@ -362,12 +362,12 @@ static const struct ScriptCommand s_gs203_g2_s0_lives0_dlg0[] = { /* 0x8257ee8 *
MSG_NPC(1, _(" A-{NAME_2}!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0004, 0x00000000),
MSG_NPC(4, _(" It's about time.\nWe finally caught up to you.")),
MSG_NPC(4, _(" Your fugitive act dragged\nus all the way out here...")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000000),
MSG_NPC(3, _(" Pipe down, {NAME_4}.")),
MSG_NPC(3, _(" We can finally settle\nthings here.")),
MSG_NPC(3, _(" I can barely contain myself.\nI'm itching for a fight.")),
@ -384,7 +384,7 @@ static const struct ScriptCommand s_gs203_g2_s0_lives0_dlg0[] = { /* 0x8257ee8 *
ALERT_CUE(8),
AWAIT_CUE(5),
ALERT_CUE(6),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" {NAME_0}...{WAIT_PRESS}\nI didn't wish for this conclusion...")),
MSG_NPC(2, _(" But this, too, is fate.")),
MSG_NPC(2, _(" The role of a rescue team\nis to help bring peace.")),
@ -684,7 +684,7 @@ static const struct ScriptCommand s_gs203_g3_s0_lives0_dlg0[] = { /* 0x8259658 *
SELECT_ANIMATION(50),
{ 0x62, 0x00, 0x0200, -0x00000010, 0x00000010, NULL },
CALL_SCRIPT(SHOCK_FUNC),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000041),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000041),
PORTRAIT_POS(2, 0, 3),
MSG_NPC(2, _(" Wuh!")),
TEXTBOX_CLEAR,
@ -701,21 +701,21 @@ static const struct ScriptCommand s_gs203_g3_s0_lives0_dlg0[] = { /* 0x8259658 *
ROTATE_TO(4, DIR_TRANS_SPINRIGHT1, DIRECTION_NORTHEAST),
FANFARE_PLAY2(455),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0003, 0x00000041),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0003, 0x00000041),
MSG_NPC(3, _(" W-what?!{WAIT_PRESS}\n{NAME_5}?!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Th-that's {NAME_5}...")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0004, 0x00000041),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0004, 0x00000041),
MSG_NPC(4, _(" The legend...\nIt was real...")),
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(10),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0005, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0005, 0x00000000),
PORTRAIT_POS(5, 1, -1),
BGM_SWITCH(MUS_LEGEND_OF_NINETALES),
MSG_NPC(5, _(" Cease fighting at once,\n{NAME_2}.")),

View File

@ -150,7 +150,7 @@ static const struct ScriptCommand s_gs205_g1_s0_lives0_dlg0[] = { /* 0x825e344 *
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThat didn't work out...")),

View File

@ -84,12 +84,12 @@ static const struct ScriptCommand s_gs206_g1_s0_lives0_dlg0[] = { /* 0x825eb18 *
ALERT_CUE(6),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHWEST),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x0000000c),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x0000000c),
MSG_NPC(1, _(" Look! It's {NAME_3}!{WAIT_PRESS}\n{NAME_4} and {NAME_5} too!")),
TEXTBOX_CLEAR,
WAIT(30),
ALERT_CUE(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0005, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0005, 0x00000000),
MSG_NPC(5, _(" Urrgggh!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -101,7 +101,7 @@ static const struct ScriptCommand s_gs206_g1_s0_lives0_dlg0[] = { /* 0x825eb18 *
ALERT_CUE(9),
ALERT_CUE(10),
WAIT(10),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0004, 0x00000043),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0004, 0x00000043),
MSG_NPC(4, _(" Did you do it?\n{NAME_2}?")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -114,7 +114,7 @@ static const struct ScriptCommand s_gs206_g1_s0_lives0_dlg0[] = { /* 0x825eb18 *
ALERT_CUE(9),
ALERT_CUE(10),
WAIT(30),
PORTRAIT(PLACEMENT_TOP_FLIP, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_CENTERRIGHT_TOP_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" Yes, fine.")),
MSG_NPC(3, _(" We will be fine.\nBut we must get out immediately.")),
TEXTBOX_CLEAR,

View File

@ -52,7 +52,7 @@ static const struct ScriptCommand s_gs207_g1_s0_lives0_dlg0[] = { /* 0x826008c *
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002c, 0x00000000, 0x00000000, NULL },
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Ouch...{WAIT_PRESS}\nWhere are we?")),
VARIANT_DEFAULT(_(" Owowow...{WAIT_PRESS}\nWhere are we?")),

View File

@ -151,7 +151,7 @@ static const struct ScriptCommand s_gs208_g1_s0_lives0_dlg0[] = { /* 0x8261b84 *
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
AWAIT_CUE(5),
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000002),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000002),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...{WAIT_PRESS}\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...{WAIT_PRESS}\nThat didn't work out...")),

View File

@ -84,7 +84,7 @@ static const struct ScriptCommand s_gs209_g1_s0_lives0_dlg0[] = { /* 0x826223c *
ALERT_CUE(10),
CALL_SCRIPT(NOTICE_FUNC),
WAIT(60),
PORTRAIT(PLACEMENT_LEFT_, NPC_PARTNER, 12),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, NPC_PARTNER, 12),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wh-wh-what?! Quake?!{WAIT_PRESS}\nIt can't be!")),
VARIANT(/* == */ 1, _(" We're up on clouds...")),
@ -95,7 +95,7 @@ static const struct ScriptCommand s_gs209_g1_s0_lives0_dlg0[] = { /* 0x826223c *
FANFARE_PLAY2(465),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, NPC_RAYQUAZA, 0),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, NPC_RAYQUAZA, 0),
MSG_NPC(NPC_RAYQUAZA, _(" These are shock waves!{WAIT_PRESS}\nAnd they're huge!")),
TEXTBOX_CLEAR,
WAIT(30),
@ -261,11 +261,11 @@ static const struct ScriptCommand s_gs209_g2_s0_lives0_dlg0[] = { /* 0x8262f4c *
FANFARE_PLAY2(465),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, NPC_RAYQUAZA, 0),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, NPC_RAYQUAZA, 0),
MSG_NPC(NPC_RAYQUAZA, _(" What is that?!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_LEFT_, NPC_PARTNER, 12),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, NPC_PARTNER, 12),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" It's a shooting star!\nAnd it's gigantic!")),
VARIANT(/* == */ 1, _(" It's going to destroy\nthe world if it isn't stopped!")),
@ -420,7 +420,7 @@ static const struct ScriptCommand s_gs209_g3_s0_lives0_dlg0[] = { /* 0x8263a7c *
WAIT(30),
WAIT(30),
TEXTBOX_AUTO_PRESS(15, 15),
PORTRAIT(PLACEMENT_LEFT_, NPC_PARTNER, 12),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, NPC_PARTNER, 12),
MSG_NPC(NPC_PARTNER, _(" Waaaaaaaaaaaaaaaaaah!")),
ALERT_CUE(3),
HALT,

View File

@ -63,7 +63,7 @@ static const struct ScriptCommand s_gs212_g1_s0_lives0_dlg0[] = { /* 0x82649c8 *
WAIT(20),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Gwooooooh!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),

View File

@ -63,7 +63,7 @@ static const struct ScriptCommand s_gs213_g1_s0_lives0_dlg0[] = { /* 0x82657d4 *
WAIT(20),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
FANFARE_PLAY2(685),
MSG_NPC(2, _(" Gwooooooooooh!{WAIT_PRESS}\n...H-how dare you!")),
TEXTBOX_CLEAR,

View File

@ -63,7 +63,7 @@ static const struct ScriptCommand s_gs214_g1_s0_lives0_dlg0[] = { /* 0x8266664 *
WAIT(20),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Gwoooooooh!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),

View File

@ -54,7 +54,7 @@ static const struct ScriptCommand s_gs216_g1_s0_lives0_dlg0[] = { /* 0x8267cc8 *
CMD_UNK_93(4, DIR_TRANS_SPINRIGHT1, 104),
WAIT(30),
{ 0x56, 0x00, 0x0000, 0x0000005a, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0000, 0x00000000),
MSG_NPC(0, _(" Hey!{WAIT_PRESS}\nGet a move on!")),
TEXTBOX_CLEAR,
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
@ -62,7 +62,7 @@ static const struct ScriptCommand s_gs216_g1_s0_lives0_dlg0[] = { /* 0x8267cc8 *
AWAIT_CUE(5),
CMD_UNK_93(4, DIR_TRANS_10, 104),
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000003),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000003),
MSG_NPC(1, _(" Gasp, gasp...{WAIT_PRESS}\nThis is rough going...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -199,12 +199,12 @@ static const struct ScriptCommand s_gs216_g1_s0_lives0_dlg0[] = { /* 0x8267cc8 *
WAIT(60),
{ 0x28, 0x01, 0x0005, 0x00000078, 0x00ffffff, NULL },
TEXTBOX_AUTO_PRESS(60, 60),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000003),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000003),
FANFARE_PLAY2(877),
MSG_NPC(0, _(" Gwaaaaaaaaaaaah!")),
TEXTBOX_CLEAR,
WAIT(30),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000003),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000003),
FANFARE_PLAY2(877),
MSG_NPC(1, _(" Gyaaaaaaaah!")),
TEXTBOX_CLEAR,

View File

@ -43,7 +43,7 @@ static const struct ScriptCommand s_gs217_g1_s0_lives0_dlg0[] = { /* 0x8269878 *
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
WAIT_FANFARE2(475),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Urghgh...")),
TEXTBOX_CLEAR,
WAIT(10),

View File

@ -97,7 +97,7 @@ static const struct ScriptCommand s_gs218_g1_s0_lives0_dlg0[] = { /* 0x826a108 *
WAIT(20),
WALK_GRID(256, 1),
WAIT(30),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" ............{WAIT_PRESS}\nYes, I'll be fine.")),
MSG_NPC(2, _(" My wing is still damaged\na little, but...{WAIT_PRESS}\nI can go.")),
TEXTBOX_CLEAR,

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs219_g1_s0_lives0_dlg0[] = { /* 0x826a6b8 *
ALERT_CUE(6),
WALK_GRID(256, 0),
WAIT(15),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Look. Over there.\nLet's get this rescue done.")),
VARIANT_DEFAULT(_(" Look, there's our Pokémon.\nWe can get this rescue done.")),

View File

@ -54,7 +54,7 @@ static const struct ScriptCommand s_gs220_g1_s0_lives0_dlg0[] = { /* 0x826abb0 *
{ 0x89, 0x78, 0x0100, 0x00000004, 0x00000000, NULL },
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Kekeh!\nWe're here at last!")),
MSG_NPC(2, _(" This is it?\nThis is the deepest floor of the\n{COLOR YELLOW_D}Murky Cave{RESET}?")),
TEXTBOX_CLEAR,
@ -347,7 +347,7 @@ static const struct ScriptCommand s_gs220_g2_s0_lives0_dlg0[] = { /* 0x826c278 *
ALERT_CUE(7),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_SOUTH),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000043),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000043),
MSG_NPC(2, _(" W-wait...")),
TEXTBOX_CLEAR,
WAIT(10),
@ -443,7 +443,7 @@ static const struct ScriptCommand s_gs220_g2_s0_lives0_dlg0[] = { /* 0x826c278 *
ALERT_CUE(7),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_SOUTHEAST),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000044),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000044),
MSG_NPC(2, _(" N-{NAME_5}!")),
MSG_NPC(2, _(" ...But...\nI don't know what you're saying...")),
TEXTBOX_CLEAR,

View File

@ -41,7 +41,7 @@ static const struct ScriptCommand s_gs222_g1_s0_lives0_dlg0[] = { /* 0x826dc2c *
ALERT_CUE(6),
WALK_GRID(256, 0),
WAIT(15),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Look. Over there.\nLet's get this rescue done.")),
VARIANT_DEFAULT(_(" Look, there's our Pokémon.\nWe can get this rescue done.")),

View File

@ -277,9 +277,9 @@ static const struct ScriptCommand s_gs158_g2_s0_lives0_dlg0[] = { /* 0x820d22c *
ALERT_CUE(7), // Zapdos faces SouthWest
ALERT_CUE(8), // Moltres faces SouthEast
WAIT(60),
PORTRAIT(PLACEMENT_TOP, NPC_ARTICUNO, 0),
PORTRAIT(PLACEMENT_RIGHT, NPC_ZAPDOS, 0),
PORTRAIT(PLACEMENT_LEFT_, NPC_MOLTRES, 0),
PORTRAIT(PLACEMENT_CENTERLEFT_TOP, NPC_ARTICUNO, 0),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, NPC_ZAPDOS, 0),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, NPC_MOLTRES, 0),
// Moltres speaks first.
MSG_NPC(NPC_MOLTRES, _(" Fire, ice, and electricity...")),
TEXTBOX_CLEAR,

File diff suppressed because it is too large Load Diff

View File

@ -241,8 +241,8 @@ static const struct ScriptCommand s_gs2_g1_s0_lives0_dlg2[] = { /* 0x817e130 */
{ 0x2d, 0x09, 0x0002, 0x00000036, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005e, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000000),
MSG_NPC(3, _(" I went into the cave, but...{WAIT_PRESS}\nI couldn't evolve into Butterfree.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -269,8 +269,8 @@ static const struct ScriptCommand s_gs2_g1_s0_lives1_dlg2[] = { /* 0x817e3c0 */
{ 0x2d, 0x09, 0x0002, 0x00000036, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005e, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0003, 0x00000000),
MSG_NPC(3, _(" I went into the cave, but...{WAIT_PRESS}\nI couldn't evolve into Butterfree.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -551,8 +551,8 @@ static const struct ScriptCommand s_gs2_g6_s0_lives0_dlg0[] = { /* 0x817f910 */
CMD_UNK_95(4, DIR_TRANS_10, 5),
ALERT_CUE(4),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(2, _(" ........................")),
TEXTBOX_CLEAR,
WAIT(10),
@ -578,8 +578,8 @@ static const struct ScriptCommand s_gs2_g6_s0_lives0_dlg0[] = { /* 0x817f910 */
ALERT_CUE(7),
ALERT_CUE(8),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(2, _(" Listen, {NAME_3}.{WAIT_PRESS}\nWe must keep this a secret just between\nthe two of us.")),
MSG_NPC(2, _(" We can't tell any Pokémon.\nNot even Gengar.")),
TEXTBOX_CLEAR,
@ -596,12 +596,12 @@ static const struct ScriptCommand s_gs2_g6_s0_lives0_dlg0[] = { /* 0x817f910 */
AWAIT_CUE(5),
WAIT(30),
PORTRAIT_REP(0x0002, 0x00000002),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0003, 0x00000001),
CJUMP_UNK_C8(92),
COND_EQUAL(6, /* to label */ 3),
COND_EQUAL(5, /* to label */ 3),
COND_EQUAL(7, /* to label */ 3),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000001),
LABEL(3), /* = 0x03 */
FANFARE_PLAY2(473),
ALERT_CUE(7),
@ -763,8 +763,8 @@ static const struct ScriptCommand s_gs2_g8_s0_lives0_dlg0[] = { /* 0x8180674 */
CMD_UNK_95(4, DIR_TRANS_10, 5),
ALERT_CUE(4),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(2, _(" {NAME_3}, listen.{WAIT_PRESS}\nI'm thinking it is best if only we go\ninto the dungeon.")),
MSG_NPC(2, _(" If either one of us\nfalls before the end...")),
TEXTBOX_CLEAR,
@ -798,12 +798,12 @@ static const struct ScriptCommand s_gs2_g8_s0_lives0_dlg0[] = { /* 0x8180674 */
AWAIT_CUE(5),
WAIT(30),
PORTRAIT_REP(0x0002, 0x00000002),
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0003, 0x00000001),
CJUMP_UNK_C8(92),
COND_EQUAL(6, /* to label */ 4),
COND_EQUAL(5, /* to label */ 4),
COND_EQUAL(7, /* to label */ 4),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000001),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000001),
LABEL(4), /* = 0x04 */
FANFARE_PLAY2(473),
ALERT_CUE(7),
@ -1036,7 +1036,7 @@ static const struct ScriptCommand s_gs2_g10_s0_lives0_dlg2[] = { /* 0x81818ec */
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0001, 0x00000000),
MSG_NPC(1, _(" I've heard fissures have\nopened up in the ground here and there.\nThey're trouble for everyone.")),
MSG_NPC(1, _(" It worries me to no\nend, thinking that children will fall\ndown into them...")),
JUMP_SCRIPT(END_TALK),
@ -1238,7 +1238,7 @@ static const struct ScriptCommand s_gs2_g15_s0_lives0_dlg2[] = { /* 0x8182664 */
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT, 0x0001, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0001, 0x00000001),
MSG_NPC(1, _(" Seeing children at play is\nwhat I most enjoy now.")),
JUMP_SCRIPT(END_TALK),
};
@ -1262,8 +1262,8 @@ static const struct ScriptCommand s_gs2_g15_s0_lives1_dlg2[] = { /* 0x8182768 */
{ 0x2d, 0x09, 0x0002, 0x00000036, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005e, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(2, _(" Yay, {NAME_3}!\nWhat'll we do next?")),
MSG_NPC(3, _(" Let's play battle!")),
MSG_NPC(2, _(" OK, I use String Shot!")),
@ -1286,8 +1286,8 @@ static const struct ScriptCommand s_gs2_g15_s0_lives2_dlg2[] = { /* 0x8182904 */
{ 0x2d, 0x09, 0x0002, 0x00000036, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005e, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(2, _(" Yay, {NAME_3}!\nWhat'll we do next?")),
MSG_NPC(3, _(" Let's play battle!")),
MSG_NPC(2, _(" OK, I use String Shot!")),
@ -1402,7 +1402,7 @@ static const struct ScriptCommand s_gs2_g16_s1_lives0_dlg0[] = { /* 0x8182f18 */
MSG_NPC(1, _(" But there was someone\nso foolish as to grab a tail.{WAIT_PRESS}\nAnd it was a human.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000004),
MSG_NPC(3, _(" A human?")),
TEXTBOX_CLEAR,
WAIT(10),
@ -1420,7 +1420,7 @@ static const struct ScriptCommand s_gs2_g16_s1_lives0_dlg0[] = { /* 0x8182f18 */
MSG_NPC(1, _(" There exist strong bonds\nbetween humans and Pokémon.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000004),
MSG_VAR(2, PARTNER_TALK_KIND, 3),
VARIANT(/* == */ 1, _(" ...All right.{WAIT_PRESS}\nBut humans... Aren't there good ones and\nbad ones too?")),
VARIANT_DEFAULT(_(" ...OK.{WAIT_PRESS}\nBut humans... Aren't there good humans\nand bad ones too?")),
@ -1438,7 +1438,7 @@ static const struct ScriptCommand s_gs2_g16_s1_lives0_dlg0[] = { /* 0x8182f18 */
ALERT_CUE(8),
FANFARE_PLAY2(466),
CALL_SCRIPT(SHOCK_FUNC),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x0000000c),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x0000000c),
MSG_NPC(3, _(" What?!{WAIT_PRESS}\nA human turn into a Pokémon?!")),
TEXTBOX_CLEAR,
WAIT(20),
@ -1455,7 +1455,7 @@ static const struct ScriptCommand s_gs2_g16_s1_lives0_dlg0[] = { /* 0x8182f18 */
TEXTBOX_CLEAR,
BGM_FADEOUT(120),
WAIT(80),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000005),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000005),
MSG_NPC(3, _(" ........................")),
TEXTBOX_CLEAR,
WAIT(10),
@ -1466,7 +1466,7 @@ static const struct ScriptCommand s_gs2_g16_s1_lives0_dlg0[] = { /* 0x8182f18 */
TEXTBOX_CLEAR,
WAIT(10),
ALERT_CUE(6),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000001),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000001),
MSG_NPC(1, _(" If you feel the urge to hear\nmy tale again, come see me. Hohoho.")),
TEXTBOX_CLEAR,
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
@ -1571,7 +1571,7 @@ static const struct ScriptCommand s_gs2_g18_s0_lives0_dlg0[] = { /* 0x8183f98 */
MSG_NPC(2, _(" And sacrificed herself to\nabsorb the curse.")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000004),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000004),
MSG_NPC(1, _(" Why?")),
MSG_NPC(1, _(" Why would that Pokémon,\nGardevoir, take the human's place?")),
TEXTBOX_CLEAR,
@ -2184,7 +2184,7 @@ static const struct ScriptCommand s_gs2_g29_s0_lives0_dlg0[] = { /* 0x81863ec */
ALERT_CUE(8),
AWAIT_CUE(5),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHEAST),
PORTRAIT(PLACEMENT_LEFT_, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0001, 0x00000000),
MSG_NPC(1, _(" Hi, {NAME_4}!")),
TEXTBOX_CLEAR,
ALERT_CUE(4),
@ -2208,7 +2208,7 @@ static const struct ScriptCommand s_gs2_g29_s0_lives0_dlg0[] = { /* 0x81863ec */
WAIT(10),
ALERT_CUE(10),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0005, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0005, 0x00000000),
PORTRAIT_POS(5, 2, 3),
MSG_NPC(5, _(" I'm Snubbull.")),
TEXTBOX_CLEAR,
@ -2229,7 +2229,7 @@ static const struct ScriptCommand s_gs2_g29_s0_lives0_dlg0[] = { /* 0x81863ec */
MSG_NPC(1, _(" What cave?")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0006, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0006, 0x00000000),
PORTRAIT_POS(6, 0, -1),
MSG_NPC(6, _(" It appeared without me\nnoticing.")),
TEXTBOX_CLEAR,
@ -2268,7 +2268,7 @@ static const struct ScriptCommand s_gs2_g29_s0_lives0_dlg0[] = { /* 0x81863ec */
WAIT(10),
ALERT_CUE(9),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0004, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0004, 0x00000000),
MSG_NPC(4, _(" Snubbull underwent\n“evolution.”{WAIT_PRESS}\nHe evolved.")),
TEXTBOX_CLEAR,
ALERT_CUE(6),
@ -2310,12 +2310,12 @@ static const struct ScriptCommand s_gs2_g29_s0_lives0_dlg0[] = { /* 0x81863ec */
WAIT(10),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_MIDDLE_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_BOTTOM, 0x0002, 0x00000000),
PORTRAIT_POS(2, -2, 0),
MSG_NPC(2, _(" So if I evolved, I would\nbecome like {NAME_3}?!")),
TEXTBOX_CLEAR,
WAIT(10),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
PORTRAIT_POS(3, -1, 0),
MSG_NPC(3, _(" I wish...{WAIT_PRESS}\nI want to be Butterfree quickly...")),
TEXTBOX_CLEAR,

View File

@ -783,10 +783,10 @@ static const struct ScriptCommand s_gs4_g3_s0_lives0_dlg0[] = { /* 0x818ca80 */
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_MIDRIGHT_TOP_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0003, 0x00000000),
MSG_NPC(1, _(" There was a job posted on\nthe Bulletin Board which said, “Punish bad\n{COLOR YELLOW_N}Mankey{RESET}.”")),
MSG_NPC(1, _(" Did you two put up that job?")),
TEXTBOX_CLEAR,
@ -975,12 +975,12 @@ static const struct ScriptCommand s_gs4_g5_s0_lives0_dlg0[] = { /* 0x818d758 */
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
ALERT_CUE(6),
AWAIT_CUE(5),
CMD_UNK_93(4, DIR_TRANS_10, 34),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" “Smeargle's desperate plea,“\nhuh...?{WAIT_PRESS}\nThat's some title.")),
VARIANT(/* == */ 1, _(" What's it say?{WAIT_PRESS}\nCan you read it?")),
@ -1129,7 +1129,7 @@ static const struct ScriptCommand s_gs4_g7_s0_lives0_dlg0[] = { /* 0x818e464 */
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
MSG_INSTANT(_("{CENTER_ALIGN}{NAME_0} read the SOS Mail\n{CENTER_ALIGN}apparently sent by Medicham.")),
TEXTBOX_CLEAR,
WAIT(20),
@ -1236,7 +1236,7 @@ static const struct ScriptCommand s_gs4_g9_s0_lives0_dlg0[] = { /* 0x818eafc */
ALERT_CUE(8),
AWAIT_CUE(5),
CMD_UNK_93(4, DIR_TRANS_10, 93),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
ASK3(FALSE, /*default*/ -1, /* speaker */ 2, _(" Say, sweetie.{WAIT_PRESS}\nHave you seen Gengar around?")),
CHOICE(/* label */ 2, _("Yes.")),
CHOICE(/* label */ 3, _("No.")),
@ -1245,7 +1245,7 @@ static const struct ScriptCommand s_gs4_g9_s0_lives0_dlg0[] = { /* 0x818eafc */
FANFARE_PLAY2(465),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000042),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000042),
MSG_NPC(2, _(" Hunh? You did?{WAIT_PRESS}\n...Wh-where?")),
TEXTBOX_CLEAR,
WAIT(45),
@ -1259,7 +1259,7 @@ static const struct ScriptCommand s_gs4_g9_s0_lives0_dlg0[] = { /* 0x818eafc */
TEXTBOX_CLEAR,
WAIT(10),
CMD_UNK_93(4, DIR_TRANS_10, 92),
PORTRAIT(PLACEMENT_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0003, 0x00000000),
MSG_NPC(3, _(" Something seems to be\nwrong with Gengar lately.")),
TEXTBOX_CLEAR,
WAIT(10),
@ -1433,8 +1433,8 @@ static const struct ScriptCommand s_gs4_g11_s1_lives0_dlg0[] = { /* 0x818f840 */
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
SPECIAL_TEXT(SPECIAL_TEXT_UNK_23, 0, 0),
ALERT_CUE(3),
HALT,
@ -1453,7 +1453,7 @@ static const struct ScriptCommand s_gs4_g11_s2_lives0_dlg0[] = { /* 0x818f920 */
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
PORTRAIT(PLACEMENT_LEFT_, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0000, 0x00000000),
SPECIAL_TEXT(SPECIAL_TEXT_UNK_23, 0, 0),
ALERT_CUE(3),
HALT,
@ -1463,7 +1463,7 @@ static const struct ScriptCommand s_gs4_g11_s3_lives0_dlg0[] = { /* 0x818f9b0 */
DEBUGINFO_O(1463),
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0002, 0x00000000),
HALT,
};
@ -1471,7 +1471,7 @@ static const struct ScriptCommand s_gs4_g11_s4_lives0_dlg0[] = { /* 0x818fa00 */
DEBUGINFO_O(1471),
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_MIDDLE_TOP_LEFT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_MIDLEFT_TOP, 0x0003, 0x00000000),
HALT,
};
@ -1479,7 +1479,7 @@ static const struct ScriptCommand s_gs4_g11_s5_lives0_dlg0[] = { /* 0x818fa50 */
DEBUGINFO_O(1479),
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_LEFT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_MIDTOP, 0x0002, 0x00000000),
HALT,
};
@ -1487,7 +1487,7 @@ static const struct ScriptCommand s_gs4_g11_s5_lives1_dlg0[] = { /* 0x818faa0 */
DEBUGINFO_O(1487),
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
PORTRAIT(PLACEMENT_TOP_RIGHT, 0x0003, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_MIDTOP_FLIP, 0x0003, 0x00000000),
HALT,
};
@ -1546,7 +1546,7 @@ static const struct ScriptCommand s_gs4_g12_s0_lives0_dlg0[] = { /* 0x818fcdc */
WALK_GRID(256, 12),
ROTATE_TO(4, DIR_TRANS_10, DIRECTION_NORTHEAST),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0001, 0x00000000),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is where information\nis gathered from Pokémon needing rescue\nin all sorts of places.")),
VARIANT_DEFAULT(_(" This is where information\nis gathered from Pokémon needing rescue\nin various locations.")),
@ -2210,7 +2210,7 @@ static const struct ScriptCommand s_gs4_g20_s1_lives1_dlg0[] = { /* 0x81929a0 */
TEXTBOX_AUTO_PRESS(0, 0),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
@ -2218,7 +2218,7 @@ static const struct ScriptCommand s_gs4_g20_s1_lives1_dlg0[] = { /* 0x81929a0 */
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
@ -2226,26 +2226,26 @@ static const struct ScriptCommand s_gs4_g20_s1_lives1_dlg0[] = { /* 0x81929a0 */
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
CMD_UNK_93(4, DIR_TRANS_10, 66),
TEXTBOX_CLEAR,
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
ALERT_CUE(7),
AWAIT_CUE(5),
ALERT_CUE(6),
ALERT_CUE(8),
CMD_UNK_93(4, DIR_TRANS_10, 66),
TEXTBOX_AUTO_PRESS(30, 30),
PORTRAIT(PLACEMENT_LEFT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
TEXTBOX_AUTO_PRESS(-1, -1),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
MSG_NPC(2, _(" ...And that's sort of how\nwe swim!{WAIT_PRESS}\nGasp, gasp...")),
MSG_NPC(2, _(" What do you...{WAIT_PRESS}\nTake us for?!{WAIT_PRESS}\nGasp, gasp...")),
TEXTBOX_CLEAR,
@ -2469,7 +2469,7 @@ static const struct ScriptCommand s_gs4_g21_s1_lives0_dlg0[] = { /* 0x8193870 */
TEXTBOX_AUTO_PRESS(0, 0),
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
@ -2477,8 +2477,8 @@ static const struct ScriptCommand s_gs4_g21_s1_lives0_dlg0[] = { /* 0x8193870 */
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_RIGHT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
@ -2486,7 +2486,7 @@ static const struct ScriptCommand s_gs4_g21_s1_lives0_dlg0[] = { /* 0x8193870 */
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
PORTRAIT(PLACEMENT_LEFT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_FLIP, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
ALERT_CUE(6),
ALERT_CUE(8),
@ -2498,13 +2498,13 @@ static const struct ScriptCommand s_gs4_g21_s1_lives0_dlg0[] = { /* 0x8193870 */
ALERT_CUE(8),
CMD_UNK_93(4, DIR_TRANS_10, 66),
TEXTBOX_AUTO_PRESS(30, 30),
PORTRAIT(PLACEMENT_RIGHT_FLIP, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_RIGHT_BOTTOM, 0x0002, 0x00000000),
MSG_NPC(2, _(" Hah!")),
TEXTBOX_CLEAR,
ALERT_CUE(7),
AWAIT_CUE(5),
TEXTBOX_AUTO_PRESS(-1, -1),
PORTRAIT(PLACEMENT_LEFT_, 0x0002, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_2, 0x0002, 0x00000000),
MSG_NPC(2, _(" Gasp, gasp...")),
TEXTBOX_CLEAR,
WAIT(10),

View File

@ -90,7 +90,7 @@ static const struct ScriptCommand s_script_UNIT_TALK[] = { /* 0x811f188 */
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000000),
{ 0x2e, 0x00, 0x0001, -0x00000002, 0x00000000, NULL },
MSG_NPC(1, _("Let's go.")),
JUMP_SCRIPT(END_TALK),
@ -101,7 +101,7 @@ static const struct ScriptCommand s_script_HABITAT_TALK[] = { /* 0x811f214 */
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000000),
{ 0x2e, 0x00, 0x0001, -0x00000002, 0x00000000, NULL },
{ 0x3b, 0x0a, 0x0000, 0x00000000, 0x00000000, NULL },
COND_EQUAL(0, /* to label */ 0),
@ -124,8 +124,8 @@ static const struct ScriptCommand s_script_HABITAT_TALK_S01E02A[] = { /* 0x811f3
SELECT_ANIMATION(2),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
PORTRAIT(PLACEMENT_LEFT, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT, 0x0001, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0000, 0x00000000),
PORTRAIT(PLACEMENT_LEFT_BOTTOM_1, 0x0001, 0x00000000),
JUMPIF_EQUAL(FLAG_KIND_CHANGE_REQUEST, 0, /* to label */ 0),
MSG_NPC(1, _(" I will dedicate myself to\ncreating a fantastic new design.\nPlease check the rescue team flag later!")),
MSG_NPC(1, _(" If my design fails to\nimpress you, please let me know.")),

View File

@ -0,0 +1,50 @@
// There is no #ifdef guard here because we want this array duplicated into different overlays.
#define X_L 2
#define X_MID_L 7
#define X_CENTER_L 12
#define X_CENTER_R 13
#define X_MID_R 18
#define X_R 23
#define Y_T 1
#define Y_MID_T 2
#define Y_CENTER 5
// Looks like they defined `Y_MID_B` as 8 instead of 7 and that's why we have a duplicate placement
#define Y_B 8
static const PortraitPlacementInfo sPortraitPlacements[PLACEMENT_COUNT] = {
[PLACEMENT_LEFT_BOTTOM_1] = { { X_L, Y_B }, FALSE },
[PLACEMENT_CENTERLEFT_CENTER] = { { X_CENTER_L, Y_CENTER }, FALSE },
[PLACEMENT_LEFT_BOTTOM_2] = { { X_L, Y_B }, FALSE },
[PLACEMENT_RIGHT_BOTTOM_FLIP] = { { X_R, Y_B }, TRUE },
[PLACEMENT_MIDLEFT_BOTTOM] = { { X_MID_L, Y_B }, FALSE },
[PLACEMENT_MIDRIGHT_BOTTOM_FLIP] = { { X_MID_R, Y_B }, TRUE },
[PLACEMENT_CENTERRIGHT_CENTER_FLIP] = { { X_CENTER_R, Y_CENTER }, TRUE },
[PLACEMENT_LEFT_BOTTOM_FLIP] = { { X_L, Y_B }, TRUE },
[PLACEMENT_RIGHT_BOTTOM] = { { X_R, Y_B }, FALSE },
[PLACEMENT_MIDLEFT_BOTTOM_FLIP] = { { X_MID_L, Y_B }, TRUE },
[PLACEMENT_MIDRIGHT_BOTTOM] = { { X_MID_R, Y_B }, FALSE },
[PLACEMENT_CENTERLEFT_TOP] = { { X_CENTER_L, Y_T }, FALSE },
[PLACEMENT_LEFT_MIDTOP] = { { X_L, Y_MID_T }, FALSE },
[PLACEMENT_RIGHT_MIDTOP_FLIP] = { { X_R, Y_MID_T }, TRUE },
[PLACEMENT_MIDLEFT_TOP] = { { X_MID_L, Y_T }, FALSE },
[PLACEMENT_MIDRIGHT_TOP_FLIP] = { { X_MID_R, Y_T }, TRUE },
[PLACEMENT_CENTERRIGHT_TOP_FLIP] = { { X_CENTER_R, Y_T }, TRUE },
[PLACEMENT_LEFT_MIDTOP_FLIP] = { { X_L, Y_MID_T }, TRUE },
[PLACEMENT_RIGHT_MIDTOP] = { { X_R, Y_MID_T }, FALSE },
[PLACEMENT_MIDLEFT_TOP_FLIP] = { { X_MID_L, Y_T }, TRUE },
[PLACEMENT_MIDRIGHT_TOP] = { { X_MID_R, Y_T }, FALSE },
};
#undef X_L
#undef X_MID_L
#undef X_CENTER_L
#undef X_CENTER_R
#undef X_MID_R
#undef X_R
#undef Y_T
#undef Y_MID_T
#undef Y_CENTER
#undef Y_B

View File

@ -444,7 +444,7 @@ void DisplayDungeonDialogue_Async(const struct DungeonDialogueStruct *dialogueIn
&& dialogueInfo->spriteId != 0x80
&& dialogueMonId != MONSTER_NONE)
{
const struct PortraitPlacementInfo *placementInfo = GetPortraitPlacementInfo(dialogueInfo->spritePlacementId);
const PortraitPlacementInfo *placementInfo = GetPortraitPlacementInfo(dialogueInfo->spritePlacementId);
monPortraitPtr = &monPortrait;
monPortraitPtr->faceFile = GetDialogueSpriteDataPtr(dialogueMonId);

View File

@ -4,31 +4,9 @@
// Note: this file is not part of overlay5. It's most likely arm9.bin, but I couldn't locate the address
static const struct PortraitPlacementInfo sPortraitPlacements[PLACEMENT_COUNT] = {
[PLACEMENT_LEFT] = {{2, 8}, FALSE},
[PLACEMENT_MIDDLE_TOP] = {{12, 5}, FALSE},
[PLACEMENT_LEFT_] = {{2, 8}, FALSE},
[PLACEMENT_RIGHT] = {{23, 8}, TRUE},
[PLACEMENT_MIDDLE_LEFT] = {{7, 8}, FALSE},
[PLACEMENT_MIDDLE_RIGHT] = {{18, 8}, TRUE},
[PLACEMENT_MIDDLE_TOP_FLIP] = {{13, 5}, TRUE},
[PLACEMENT_LEFT_FLIP] = {{2, 8}, TRUE},
[PLACEMENT_RIGHT_FLIP] = {{23, 8}, FALSE},
[PLACEMENT_MIDDLE_LEFT_FLIP] = {{7, 8}, TRUE},
[PLACEMENT_MIDDLE_RIGHT_FLIP] = {{18, 8}, FALSE},
[PLACEMENT_TOP] = {{12, 1}, FALSE},
[PLACEMENT_TOP_LEFT] = {{2, 2}, FALSE},
[PLACEMENT_TOP_RIGHT] = {{23, 2}, TRUE},
[PLACEMENT_MIDDLE_TOP_LEFT] = {{7, 1}, FALSE},
[PLACEMENT_MIDDLE_TOP_RIGHT] = {{18, 1}, TRUE},
[PLACEMENT_TOP_FLIP] = {{13, 1}, TRUE},
[PLACEMENT_TOP_LEFT_FLIP] = {{2, 2}, TRUE},
[PLACEMENT_TOP_RIGHT_FLIP] = {{23, 2}, FALSE},
[PLACEMENT_MIDDLE_TOP_LEFT_FLIP] = {{7, 1}, TRUE},
[PLACEMENT_MIDDLE_TOP_RIGHT_FLIP] = {{18, 1}, FALSE},
};
#include "data/portrait_placements.h"
const struct PortraitPlacementInfo *GetPortraitPlacementInfo(u8 id)
const PortraitPlacementInfo *GetPortraitPlacementInfo(u8 id)
{
return &sPortraitPlacements[id];
}

View File

@ -57,34 +57,36 @@
#include "structs/str_file_system.h"
#include "structs/str_mon_portrait.h"
struct TextboxPortrait
// Size: 0x24
typedef struct TextboxPortrait
{
// size: 0x24
s16 unk0;
/* 0x2 */ s16 speciesID;
bool8 showPortrait;
u8 unk5;
s8 spriteId;
u8 placementId;
PixelPos posDelta; // By default 0, 0. Allows to modify the position of the portrait. Can be changed by the scripting command 0x2f.
MonPortraitMsg monPortrait;
/* 0x00 */ s16 unk0;
/* 0x02 */ s16 speciesID;
/* 0x04 */ bool8 showPortrait;
/* 0x05 */ u8 unk5;
/* 0x06 */ s8 spriteId;
/* 0x07 */ u8 placementId; // See enum "PortraitPlacementID"
/* 0x08 */ PixelPos posDelta; // By default 0, 0. Allows to modify the position of the portrait. Can be changed by the scripting command 0x2f.
/* 0x10 */ MonPortraitMsg monPortrait;
/* 0x20 */ OpenedFile *faceFile;
};
} TextboxPortrait;
struct TextboxText
// Size: 0x408
typedef struct TextboxText
{
u16 flags;
u32 unk4;
u8 buffer[0x400];
};
/* 0x0 */ u16 flags;
/* 0x4 */ u32 unk4;
/* 0x8 */ u8 buffer[0x400];
} TextboxText;
struct unkStruct_3001B64_unk418
// Size: 0x10
typedef struct unkStruct_3001B64_unk418
{
u16 unk0;
u8 (*unk4)(void);
void (*unk8)(void);
u32 (*unkC)(void);
};
/* 0x0 */ u16 unk0;
/* 0x4 */ u8 (*unk4)(void);
/* 0x8 */ void (*unk8)(void);
/* 0xC */ u32 (*unkC)(void);
} unkStruct_3001B64_unk418;
#define MAX_TEXTBOX_PORTRAITS 10
@ -97,28 +99,28 @@ enum TextboxTypeID
TEXTBOX_TYPE_4,
};
// size: 0x5A8
struct Textbox
// Size: R=0x5A8 | B=0x5A6
typedef struct Textbox
{
u32 type; // See enum "TextboxTypeID"
s32 endMsgFrames;
s32 midMsgFrames;
struct TextboxText text;
u32 unk414; // See enum "SpecialTextKind"
const struct unkStruct_3001B64_unk418 *unk418;
const MenuItem *unk41C;
u32 unk420;
u32 unk424;
u32 unk428;
MonOrStringPtr unk42C;
s32 unk430; // See enum "ScriptID"
s32 unk434;
u32 fill438;
struct TextboxPortrait portraits[MAX_TEXTBOX_PORTRAITS];
s16 unk5A4; // See enum "ScriptID"
};
/* 0x000 */ u32 type; // See enum "TextboxTypeID"
/* 0x004 */ s32 endMsgFrames;
/* 0x008 */ s32 midMsgFrames;
/* 0x00C */ TextboxText text;
/* 0x414 */ u32 unk414; // See enum "SpecialTextKind"
/* 0x418 */ const unkStruct_3001B64_unk418 *unk418;
/* 0x41C */ const MenuItem *unk41C;
/* 0x420 */ u32 unk420;
/* 0x424 */ u32 unk424;
/* 0x428 */ u32 unk428;
/* 0x42C */ MonOrStringPtr unk42C;
/* 0x430 */ s32 unk430; // See enum "ScriptID"
/* 0x434 */ s32 unk434;
/* 0x438 */ u32 unused438;
/* 0x43C */ TextboxPortrait portraits[MAX_TEXTBOX_PORTRAITS];
/* 0x5A4 */ s16 unk5A4; // See enum "ScriptID"
} Textbox;
static IWRAM_INIT struct Textbox *sTextbox = { NULL };
static IWRAM_INIT Textbox *sTextbox = { NULL };
void sub_809B028(const MenuItem *, s32 a1_, s32 a2, s32 a3, s32 a4_, const u8 *text);
bool8 sub_809B18C(s32 *sp);
@ -163,29 +165,7 @@ extern u32 sub_802DFD8(void);
// Only dialogue sound
#define TEXTBOX_FLAG_DIALOGUE_SOUND (1 << 9)
static const struct PortraitPlacementInfo sPortraitPlacements[PLACEMENT_COUNT] = {
[PLACEMENT_LEFT] = { { 2, 8}, FALSE },
[PLACEMENT_MIDDLE_TOP] = { { 12, 5}, FALSE },
[PLACEMENT_LEFT_] = { { 2, 8}, FALSE },
[PLACEMENT_RIGHT] = { { 23, 8}, TRUE },
[PLACEMENT_MIDDLE_LEFT] = { { 7, 8}, FALSE },
[PLACEMENT_MIDDLE_RIGHT] = { { 18, 8}, TRUE },
[PLACEMENT_MIDDLE_TOP_FLIP] = { { 13, 5}, TRUE },
[PLACEMENT_LEFT_FLIP] = { { 2, 8}, TRUE },
[PLACEMENT_RIGHT_FLIP] = { { 23, 8}, FALSE },
[PLACEMENT_MIDDLE_LEFT_FLIP] = { { 7, 8}, TRUE },
[PLACEMENT_MIDDLE_RIGHT_FLIP] = { { 18, 8}, FALSE },
[PLACEMENT_TOP] = { { 12, 1}, FALSE },
[PLACEMENT_TOP_LEFT] = { { 2, 2}, FALSE },
[PLACEMENT_TOP_RIGHT] = { { 23, 2}, TRUE },
[PLACEMENT_MIDDLE_TOP_LEFT] = { { 7, 1}, FALSE },
[PLACEMENT_MIDDLE_TOP_RIGHT] = { { 18, 1}, TRUE },
[PLACEMENT_TOP_FLIP] = { { 13, 1}, TRUE },
[PLACEMENT_TOP_LEFT_FLIP] = { { 2, 2}, TRUE },
[PLACEMENT_TOP_RIGHT_FLIP] = { { 23, 2}, FALSE },
[PLACEMENT_MIDDLE_TOP_LEFT_FLIP] = { { 7, 1}, TRUE },
[PLACEMENT_MIDDLE_TOP_RIGHT_FLIP] = { { 18, 1}, FALSE },
};
#include "data/portrait_placements.h"
static const MenuItem gUnknown_81160E8[] =
{
@ -240,11 +220,11 @@ EWRAM_DATA u16 gUnknown_20399DC = 0;
EWRAM_DATA u16 gUnknown_20399DE = 0;
static void ResetAllTextboxPortraits(void);
static bool8 ScriptPrintTextInternal(struct TextboxText *ptr, u32 flags_, s32 a2_, const char *text);
static bool8 ScriptPrintTextInternal(TextboxText *ptr, u32 flags_, s32 a2_, const char *text);
// textboxType: See enum "TextboxTypeID"
static bool8 SetTextboxType(u32 textboxType, bool8 unused);
static void ResetTextbox(void);
static bool8 IsTextboxOpen_809B40C(struct TextboxText *a0);
static bool8 IsTextboxOpen_809B40C(TextboxText *a0);
static u8 *sub_809B428(u8 *a0, s32 a1, u8 *a2);
static bool8 sub_809B648(void);
static void sub_809C39C(void);
@ -259,7 +239,7 @@ static void sub_809C550(void);
void TextboxInit(void)
{
ResetDialogueBox();
sTextbox = MemoryAlloc(sizeof(struct Textbox), 6);
sTextbox = MemoryAlloc(sizeof(Textbox), 6);
sTextbox->type = 0;
sTextbox->endMsgFrames = -1;
sTextbox->midMsgFrames = -1;
@ -405,7 +385,7 @@ bool8 ScriptClearTextbox2(void)
static void ResetAllTextboxPortraits(void)
{
s32 i;
struct TextboxPortrait *ptr = &sTextbox->portraits[0];
TextboxPortrait *ptr = &sTextbox->portraits[0];
for (i = 0; i < MAX_TEXTBOX_PORTRAITS; i++, ptr++) {
ptr->unk0 = -1;
@ -426,7 +406,7 @@ static void ResetAllTextboxPortraits(void)
void ResetTextboxPortrait(s16 id_)
{
s32 id = id_;
struct TextboxPortrait *ptr = &sTextbox->portraits[id];
TextboxPortrait *ptr = &sTextbox->portraits[id];
ptr->unk0 = -1;
ptr->speciesID = MONSTER_NONE;
@ -450,7 +430,7 @@ static bool8 sub_809A8B8(s32 param_1, s32 param_2)
s16 speciesId;
s32 portraitId = (s16) param_1;
s16 local_28 = (s16) param_2;
struct TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
bool8 showPortrait = TRUE;
bool8 byte1 = FALSE;
@ -577,7 +557,7 @@ bool8 sub_809AB4C(s32 a0_, s32 a1_)
{
s32 a0 = (s16) a0_;
s32 a1 = (s16) a1_;
struct TextboxPortrait *portrait = &sTextbox->portraits[a0];
TextboxPortrait *portrait = &sTextbox->portraits[a0];
if (sub_809A8B8(a0, a1)) {
CopyCyanMonsterNametoBuffer(gFormatBuffer_Monsters[a0], portrait->speciesID);
@ -593,7 +573,7 @@ bool8 sub_809ABB4(s32 id_, s32 a1_)
{
s32 id = (s16) id_;
s32 a1 = (s16) a1_;
struct TextboxPortrait *portrait = &sTextbox->portraits[id];
TextboxPortrait *portrait = &sTextbox->portraits[id];
if (sub_809A8B8(id, a1)) {
CopyCyanMonsterNametoBuffer(gFormatBuffer_Monsters[id], portrait->speciesID);
@ -609,7 +589,7 @@ bool8 sub_809AC18(s32 a0_, s32 a1_)
{
s32 a0 = (s16) a0_;
s32 a1 = (s16) a1_;
struct TextboxPortrait *portrait = &sTextbox->portraits[a0];
TextboxPortrait *portrait = &sTextbox->portraits[a0];
if (sub_809A8B8(a0, a1)) {
CopyCyanMonsterNametoBuffer(gFormatBuffer_Monsters[a0], portrait->speciesID);
@ -626,7 +606,7 @@ bool8 ScriptSetPortraitInfo(s32 portraitId_, s32 spriteId_, s32 placementId_)
s32 portraitId = (s16) portraitId_;
s32 spriteId = (s8) spriteId_;
u8 placementId = (u8) placementId_;
struct TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
TRY_CLOSE_FILE_AND_SET_NULL(portraitPtr->faceFile);
@ -711,7 +691,7 @@ bool8 ScriptSetPortraitInfo(s32 portraitId_, s32 spriteId_, s32 placementId_)
bool8 ScriptSetPortraitPosDelta(s32 portraitId_, PixelPos *newPosDelta)
{
s32 portraitId = (s16) portraitId_;
struct TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
if (portraitPtr->speciesID < 0)
return FALSE;
@ -729,7 +709,7 @@ static MonPortraitMsg *GetSpeakerPortrait(s32 portraitId_)
s32 portraitId = (s16) portraitId_;
if (portraitId >= 0) {
struct TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
TextboxPortrait *portraitPtr = &sTextbox->portraits[portraitId];
if (portraitPtr->speciesID != MONSTER_NONE && portraitPtr->spriteId == -1) {
ScriptSetPortraitInfo(portraitId, 0, 0);
}
@ -908,7 +888,7 @@ static void ResetTextbox(void)
ScriptPrintTextInternal(&sTextbox->text, TEXTBOX_FLAG_NONE, -1, NULL);
}
static bool8 ScriptPrintTextInternal(struct TextboxText *textboxText, u32 flags_, s32 speakerId_, const char *text)
static bool8 ScriptPrintTextInternal(TextboxText *textboxText, u32 flags_, s32 speakerId_, const char *text)
{
u16 flags = (u16) flags_;
s32 speakerId = (s16) speakerId_;
@ -957,7 +937,7 @@ static bool8 ScriptPrintTextInternal(struct TextboxText *textboxText, u32 flags_
return TRUE;
}
static bool8 IsTextboxOpen_809B40C(struct TextboxText *a0)
static bool8 IsTextboxOpen_809B40C(TextboxText *a0)
{
switch (a0->unk4) {
case 0:
@ -993,7 +973,7 @@ static u8 *sub_809B428(u8 *a0, s32 a1, u8 *a2)
void sub_809B474(void)
{
const struct unkStruct_3001B64_unk418 *unkStructPtr;
const unkStruct_3001B64_unk418 *unkStructPtr;
switch (sTextbox->type) {
case 0:
@ -1105,7 +1085,7 @@ UNUSED static void nullsub_210(void)
}
static const struct unkStruct_3001B64_unk418 gUnknown_81161A8 =
static const unkStruct_3001B64_unk418 gUnknown_81161A8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1113,7 +1093,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161A8 =
.unkC = sub_801D0DC,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81161B8 =
static const unkStruct_3001B64_unk418 gUnknown_81161B8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1121,7 +1101,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161B8 =
.unkC = sub_801D0DC,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81161C8 =
static const unkStruct_3001B64_unk418 gUnknown_81161C8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1129,7 +1109,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161C8 =
.unkC = KangaskhanStorageCallback,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81161D8 =
static const unkStruct_3001B64_unk418 gUnknown_81161D8 =
{
.unk0 = 1,
.unk4 = sub_8017E1C,
@ -1137,7 +1117,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161D8 =
.unkC = sub_8017E54,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81161E8 =
static const unkStruct_3001B64_unk418 gUnknown_81161E8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1145,7 +1125,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161E8 =
.unkC = FelicityBankCallback,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81161F8 =
static const unkStruct_3001B64_unk418 gUnknown_81161F8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1153,7 +1133,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81161F8 =
.unkC = KecleonBrosCallback,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116208 =
static const unkStruct_3001B64_unk418 gUnknown_8116208 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1161,7 +1141,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116208 =
.unkC = sub_801FC40,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116218 =
static const unkStruct_3001B64_unk418 gUnknown_8116218 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1169,7 +1149,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116218 =
.unkC = sub_8021C5C,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116228 =
static const unkStruct_3001B64_unk418 gUnknown_8116228 =
{
.unk0 = 1,
.unk4 = sub_8027F88,
@ -1177,7 +1157,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116228 =
.unkC = sub_8028078,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116238 =
static const unkStruct_3001B64_unk418 gUnknown_8116238 =
{
.unk0 = 1,
.unk4 = sub_802B2D4,
@ -1185,7 +1165,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116238 =
.unkC = sub_802B358,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116248 =
static const unkStruct_3001B64_unk418 gUnknown_8116248 =
{
.unk0 = 1,
.unk4 = CreateThankYouMailPelipper,
@ -1193,7 +1173,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116248 =
.unkC = ThankYouMailPelipperCallback,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116258 =
static const unkStruct_3001B64_unk418 gUnknown_8116258 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1201,7 +1181,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116258 =
.unkC = HelperPelipperCallback,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116268 =
static const unkStruct_3001B64_unk418 gUnknown_8116268 =
{
.unk0 = 1,
.unk4 = sub_802E864,
@ -1209,7 +1189,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116268 =
.unkC = sub_802E890,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116278 =
static const unkStruct_3001B64_unk418 gUnknown_8116278 =
{
.unk0 = 1,
.unk4 = sub_802DFB0,
@ -1217,7 +1197,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116278 =
.unkC = sub_802DFD8,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116288 =
static const unkStruct_3001B64_unk418 gUnknown_8116288 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1226,7 +1206,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116288 =
};
// These 3 are identical
static const struct unkStruct_3001B64_unk418 gUnknown_8116298 =
static const unkStruct_3001B64_unk418 gUnknown_8116298 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1234,7 +1214,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116298 =
.unkC = HandleMakuhitaDojoState,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162A8 =
static const unkStruct_3001B64_unk418 gUnknown_81162A8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1242,7 +1222,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162A8 =
.unkC = HandleMakuhitaDojoState,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162B8 =
static const unkStruct_3001B64_unk418 gUnknown_81162B8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1250,7 +1230,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162B8 =
.unkC = HandleMakuhitaDojoState,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162C8 =
static const unkStruct_3001B64_unk418 gUnknown_81162C8 =
{
.unk0 = 0,
.unk4 = CreateTestTracker,
@ -1258,7 +1238,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162C8 =
.unkC = HandleTestTrackerState,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162D8 =
static const unkStruct_3001B64_unk418 gUnknown_81162D8 =
{
.unk0 = 0,
.unk4 = sub_8035678,
@ -1266,7 +1246,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162D8 =
.unkC = sub_80356A0,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162E8 =
static const unkStruct_3001B64_unk418 gUnknown_81162E8 =
{
.unk0 = 0,
.unk4 = NULL,
@ -1274,7 +1254,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162E8 =
.unkC = sub_803B120,
};
static const struct unkStruct_3001B64_unk418 gUnknown_81162F8 =
static const unkStruct_3001B64_unk418 gUnknown_81162F8 =
{
.unk0 = 1,
.unk4 = NULL,
@ -1282,7 +1262,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_81162F8 =
.unkC = sub_8025354,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116308 =
static const unkStruct_3001B64_unk418 gUnknown_8116308 =
{
.unk0 = 0,
.unk4 = NULL,
@ -1290,7 +1270,7 @@ static const struct unkStruct_3001B64_unk418 gUnknown_8116308 =
.unkC = ScriptItemTextboxFunc,
};
static const struct unkStruct_3001B64_unk418 gUnknown_8116318 =
static const unkStruct_3001B64_unk418 gUnknown_8116318 =
{
.unk0 = 1,
.unk4 = NULL,