Ground script decomp

This commit is contained in:
Mateon1
2024-09-29 17:08:19 +02:00
parent 1cbc954776
commit aad27b9c26
288 changed files with 98165 additions and 144909 deletions

View File

@@ -150,7 +150,7 @@
'¹' = B9
'⁰' = BA
'»' = BB
'←' = BC @ nonstandard, normally ¼
@'←' = BC @ nonstandard, normally ¼
'♂' = BD @ nonstandard, normally ½
'♀' = BE @ nonstandard, normally ¾
'¿' = BF
@@ -252,6 +252,10 @@ UNK_ICON_81_6A = 81 6A
RIGHT_ARROW = 81 A8
LEFT_ARROW = 81 A9
UP_ARROW = 81 AA
'→' = 81 A8
'←' = 81 A9
'↑' = 81 AA
'↓' = 81 AB
POKE = 83 BF 83 C4 @ This is actually two characters which can render separately; may need to be split eventually.
UNK_ICON_83_C0 = 83 C0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,8 @@
.section .rodata
.string "pksdir0\0"
.align 2,0
.global gFriendAreaDialogue
gFriendAreaDialogue: @ 813237C
@ replacing .incbin "baserom.gba", 0x0013237c, 0x13d610
@@ -118,6 +121,3 @@ gFriendAreaDialogue: @ 813237C
.string "{CENTER_ALIGN}It seems to be full of energy!\0"
.align 2,0
.string "pksdir0\0"
.align 2,0

View File

@@ -114,8 +114,8 @@
.byte 15, 51, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01 @ Chunsoft coordinates
.byte 15, 71, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01 @ Pokemon copyright coordinates
.global gUnknown_826F5A0
gUnknown_826F5A0:
.global gGroundScript_gs226
gGroundScript_gs226:
.byte 0x02, 0x00, 0x00, 0x00
.4byte CompanyScreensScenes
.4byte CompanyScreensWaypoints

View File

@@ -83,8 +83,8 @@
.byte 15, 11, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01
.byte 15, 31, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01
.global gUnknown_826F7FC
gUnknown_826F7FC:
.global gGroundScript_gs227
gGroundScript_gs227:
.byte 0x02, 0x00, 0x00, 0x00
.4byte HealthSafetyScenes
.4byte HealthSafetyWaypoints

View File

@@ -151,8 +151,8 @@
.byte 0x01, 0x00, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01
.byte 0x0d, 0x26, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01
.global gUnknown_826F1A0
gUnknown_826F1A0:
.global gGroundScript_gs225
gGroundScript_gs225:
.byte 0x02, 0x00, 0x00, 0x00
.4byte gUnknown_826F130
.4byte IntroWaypoints

View File

@@ -100,8 +100,8 @@
.byte 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00
.global gUnknown_826E288
gUnknown_826E288:
.global gGroundScript_gs223
gGroundScript_gs223:
.byte 0x02, 0x00, 0x00, 0x00
.4byte PersonalityTestScenes
.4byte PersonalityTestWaypoints

View File

@@ -287,8 +287,8 @@
.byte 0x1a, 0x06, 0x00, 0x02, 0x01, 0x01, 0x02, 0x01
.byte 0x1a, 0x0c, 0x00, 0x00, 0x01, 0x01, 0x02, 0x01
.global gUnknown_826EC44
gUnknown_826EC44:
.global gGroundScript_gs224
gGroundScript_gs224:
.byte 0x05, 0x00, 0x00, 0x00
.4byte gUnknown_826EBC4
.4byte TitleWaypoints

View File

@@ -70,8 +70,8 @@
.byte 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00
.global gUnknown_826F980
gUnknown_826F980:
.global gGroundScript_gs228
gGroundScript_gs228:
.byte 0x02, 0x00, 0x00, 0x00
.4byte WorldMapScenes
.4byte WorldMapWaypoints

546
include/data_script.h Normal file
View File

@@ -0,0 +1,546 @@
#include "ground_script.h"
#include "event_flag.h"
#include "constants/item.h"
#define LPARRAY(x) (sizeof(x)/sizeof(*(x))), x
#define CPOS_HALFTILE 0x2
#define CPOS_CURRENT 0x4
// 01..07: complex map/dungeon selection/check commands
#define SELECT_MAP(m) { 0x08, 0, 0, m, 0, NULL }
#define SELECT_GROUND(m) { 0x09, 0, 0, m, 0, NULL }
#define SELECT_DUNGEON(m,d,f,b) { 0x0A, b, f, d, m, NULL }
#define SELECT_WEATHER(w) { 0x0B, 0, 0, w, 0, NULL }
#define SELECT_ENTITIES(g,s) { 0x0C, s, g, 0, 0, NULL }
#define SELECT_LIVES(g,s) { 0x0D, s, g, 0, 0, NULL }
#define SELECT_OBJECTS(g,s) { 0x0E, s, g, 0, 0, NULL }
#define SELECT_EFFECTS(g,s) { 0x0F, s, g, 0, 0, NULL }
#define SELECT_EVENTS(g,s) { 0x10, s, g, 0, 0, NULL }
#define CANCEL_ENTITIES(g,s) { 0x11, s, g, 0, 0, NULL }
#define CANCEL_LIVES(g,s) { 0x12, s, g, 0, 0, NULL }
#define CANCEL_OBJECTS(g,s) { 0x13, s, g, 0, 0, NULL }
#define CANCEL_EFFECTS(g,s) { 0x14, s, g, 0, 0, NULL }
#define CANCEL_EVENTS(g,s) { 0x15, s, g, 0, 0, NULL }
#define CANCEL_OFFSCREEN_LIVES { 0x16, 0, 0, 0, 0, NULL }
#define CANCEL_OFFSCREEN_OBJECTS {0x17, 0, 0, 0, 0, NULL }
#define CANCEL_OFFSCREEN_EFFECTS {0x18, 0, 0, 0, 0, NULL }
#define SPAWN_OBJECT(k,d,g,s) { 0x19, s, g, d, k, NULL }
#define SPAWN_EFFECT(k,d,g,s) { 0x1A, s, g, d, k, NULL }
#define EXECUTE_FUNCTION(f) { 0x1B, 0, f, 0, 0, NULL }
#define EXECUTE_SUBROUTINE(f) { 0x1C, 0, f, 0, 0, NULL }
#define EXECUTE_STATION(m,g,s) { 0x1D, s, g, m, 0, NULL }
#define EXECUTE_SUBSTATION(m,g,s){0x1E, s, g, m, 0, NULL }
#define RESCUE_SELECT { 0x1F, 0, 0, 0, 0, NULL }
// 20: execute script as parented object, maybe? Unused in ROM
// 21: follow object/make object follow/get parented?
// 22..2f: ???
// 30..39: various text printing
// 3a: yes/no choice (only used for saving)
// 3b: uber command (conditional jump)
// 3c: unknown textbox-related cjump
// 3d..3f: input boxes?
// 40: unused?
#define REMOVE_ITEMSTACK(i) { 0x41, 0, i, 0, 0, NULL }
#define MUSIC_STOP_ALL { 0x42, 0, 0, 0, 0, NULL }
#define MUSIC_FADEOUT_ALL(f) { 0x43, 0, f, 0, 0, NULL }
#define BGM_SWITCH(i) { 0x44, 0, 0, i, 0, NULL }
#define BGM_FADEIN(f,i) { 0x45, 0, f, i, 0, NULL }
#define BGM_QUEUE(i) { 0x46, 0, 0, i, 0, NULL }
#define BGM_STOP { 0x47, 0, 0, 0, 0, NULL }
#define BGM_FADEOUT(f) { 0x48, 0, f, 0, 0, NULL }
#define FANFARE_PLAY(i) { 0x49, 0, 0, i, 0, NULL }
#define FANFARE_STOP(i) { 0x4a, 0, 0, i, 0, NULL }
#define FANFARE_FADEOUT(f,i) { 0x4b, 0, f, i, 0, NULL }
#define FANFARE_PLAY2(i) { 0x4c, 0, 0, i, 0, NULL }
#define FANFARE_STOP2(i) { 0x4d, 0, 0, i, 0, NULL }
#define FANFARE_FADEOUT2(f,i) { 0x4e, 0, f, i, 0, NULL }
// 4f..57: more movement/position? Some sprite stuff?
// 58..95: position and movement-related
// 96: unused?
// 97..9a: ??? (maybe more camera?)
// 9b..a3: camera-related
#define RESET_ARRAY(v) { 0xA4, 0, v, 0, 0, NULL }
#define CLEAR_ARRAY(v) { 0xA5, 0, v, 0, 0, NULL }
#define UPDATE_VARINT(o,v,i) { 0xA6, o, v, i, 0, NULL }
#define UPDATE_VARVAR(o,a,b) { 0xA7, o, a, b, 0, NULL }
#define SET_ARRAYVAL(v,i,x) { 0xA8, 0, v, i, x, NULL }
#define SCENARIO_CALC(v,a,b) { 0xA9, 0, v, a, b, NULL }
#define SCENARIO_ADVANCE(v,a) { 0xAA, 0, v, a, 0, NULL }
#define SET_DUNGEON_RES(r,e) { 0xAB, 0, r, e, 0, NULL }
#define SET_PLAYER_KIND(k) { 0xAC, 0, k, 0, 0, NULL }
// ad..b2: opaque functions
#define JUMPIF_EQUAL(v,i,l) { 0xB3, l, v, i, 0, NULL }
#define JUMPIF(o,v,i,l) { 0xB4, o, l, v, i, NULL }
#define JUMPIF_2(o,a,b,l) { 0xB5, o, l, a, b, NULL }
#define JUMPIF_ARRAY(v,i,l) { 0xB6, 0, l, v, i, NULL }
#define JUMPIF_SUM(o,v,i,l) { 0xB7, o, l, v, i, NULL }
#define JUMPIF_SCENE_LT(v,a,b,l){ 0xB8, l, v, a, b, NULL }
#define JUMPIF_SCENE_EQ(v,a,b,l){ 0xB9, l, v, a, b, NULL }
#define JUMPIF_SCENE_GT(v,a,b,l){ 0xBA, l, v, a, b, NULL }
#define JUMPIF_SCENARIOCHECK(i,l){0xBB, l, i, 0, 0, NULL }
// functions need reversing
#define JUMPIF_UNK_BC(i,l) { 0xBC, l, i, 0, 0, NULL }
#define JUMPIF_UNK_BD(i,l) { 0xBD, l, 0, i, 0, NULL }
#define JUMPIF_UNK_BE(l) { 0xBE, l, 0, 0, 0, NULL }
#define JUMPIF_HASITEM(i,l) { 0xBF, l, i, 0, 0, NULL }
#define CJUMP_VAR(v) { 0xC0, 0, v, 0, 0, NULL }
#define CJUMP_CALC_VI(o,v,i) { 0xC1, o, v, i, 0, NULL }
#define CJUMP_CALC_VV(o,a,b) { 0xC2, o, a, b, 0, NULL }
#define CJUMP_RANDOM(h) { 0xC3, 0, h, 0, 0, NULL }
#define CJUMP_SCENARIO_0(v) { 0xC4, 0, v, 0, 0, NULL }
#define CJUMP_SCENARIO_1(v) { 0xC5, 0, v, 0, 0, NULL }
// wtf is c6
#define CJUMP_UNK_C6(a) { 0xC6, 0, 0, a, 0, NULL }
#define CJUMP_DIRECTION { 0xC7, 0, 0, 0, 0, NULL }
// C8: distance calculation with that weird 80A7AE8
#define CJUMP_UNK_C8(a) { 0xC8, 0, 0, a, 0, NULL }
// C9: ditto, but with one hardcoded pos of four
#define CJUMP_UNK_C9(a) { 0xC9, 0, 0, a, 0, NULL }
#define CJUMP_DIR_TO_LINK(l) { 0xCA, 0, 0, l, 0, NULL }
// wtf is cb
#define CJUMP_UNK_CB(h) { 0xCB, 0, h, 0, 0, NULL }
#define COND_EQUAL(v,t) { 0xCC, 0, t, v, 0, NULL }
#define COND(o,v,t) { 0xCD, o, t, v, 0, NULL }
#define COND_VAR(o,v,t) { 0xCE, o, t, v, 0, NULL }
#define MSG_VAR(b,v,a) { 0xCF, b, v, a, 0, NULL }
#define VARIANT(c,s) { 0xD0, 0, c, 0, 0, s }
#define VARIANT_DEFAULT(s) { 0xD1, 0, 0, 0, 0, s }
#define ASK_DEBUG(b,h,a,s) { 0xD2, b, h, a, 0, s }
#define ASK1(b,h,a,s) { 0xD3, b, h, a, 0, s }
#define ASK2(b,h,a,s) { 0xD4, b, h, a, 0, s }
#define ASK3(b,h,a,s) { 0xD5, b, h, a, 0, s }
#define ASK1_VAR(b,h,a,v) { 0xD6, b, h, a, v, NULL }
#define ASK2_VAR(b,h,a,v) { 0xD7, b, h, a, v, NULL }
#define ASK3_VAR(b,h,a,v) { 0xD8, b, h, a, v, NULL }
#define CHOICE(h,s) { 0xD9, 0, h, 0, 0, s }
#define WAIT(f) { 0xDB, 0, f, 0, 0, NULL }
#define WAIT_RANDOM(a,b) { 0xDC, 0, a, b, 0, NULL }
// dd..e2 - various HandleAction commands
// e3..e5 - locking/condvar commands
#define CALL_LABEL(x) { 0xE6, 0, x, 0, 0, NULL }
#define JUMP_LABEL(x) { 0xE7, 0, x, 0, 0, NULL }
#define CALL_SCRIPT(x) { 0xE8, 0, x, 0, 0, NULL }
#define JUMP_SCRIPT(x) { 0xE9, 0, x, 0, 0, NULL }
#define CALL_STATION(g,s) { 0xEA, s, g,-1, 0, NULL }
#define JUMP_STATION(g,s) { 0xEB, s, g,-1, 0, NULL }
#define EXECUTE_MAP_VAR(v) { 0xEC, 0, v, 0, 0, NULL }
#define RESET_CALLER { 0xED, 0, 0, 0, 0, NULL }
#define RET_DIRECT { 0xEE, 0, 0, 0, 0, NULL }
#define RET { 0xEF, 0, 0, 0, 0, NULL }
#define HALT { 0xF0, 0, 0, 0, 0, NULL }
#define END_DELETE { 0xF1, 0, 0, 0, 0, NULL }
#define LABEL(x) { 0xF4, 0, x, 0, 0, NULL }
#ifdef NONMATCHING
#define DEBUGINFO { 0xF6, 0, __LINE__, 0, 0, __FILE__ }
#else
#define DEBUGINFO { 0xF6, 0, __LINE__, 0, 0, FAKE_FILENAME }
#endif
// function/trigger/script names
#define END_TALK 0
#define WAIT_END_TALK_FUNC 1
#define WAIT_END_EVENT_FUNC 2
#define WAIT_START_FUNC 3
#define INCOMPLETE_TALK 4
#define NORMAL_WAIT_END_TALK 5
#define LIVES_REPLY_NORMAL 6
#define LIVES_REPLY 7
#define OBJECT_REPLY_NORMAL 8
#define EXAMINE_MISS 9
#define ENTER_WAIT_FUNC 10
#define UNIT_TALK 11
#define HABITAT_TALK 12
#define HABITAT_TALK_S01E02A 13
#define HABITAT_MOVE1 14
#define HABITAT_MOVE2 15
#define HABITAT_MOVE_PAUSE 16
#define HABITAT_MOVE_STAY_FIX 17
#define HABITAT_MOVE_STAY_TURN 18
#define LIVES_MOVE_NORMAL 19
#define LIVES_MOVE_CHANGE 20
#define OBJECT_MOVE_NORMAL 21
#define OBJECT_MOVE_CHANGE 22
#define EFFECT_MOVE_NORMAL 23
#define EFFECT_MOVE_CHANGE 24
#define MOVE_INIT 25
#define MOVE_PAUSE 26
#define MOVE_STAY 27
#define MOVE_SLEEP 28
#define MOVE_RANDOM 29
#define MOVE_BOY 30
#define MOVE_GIRL 31
#define WAKEUP_FUNC 32
#define LOOK_AROUND_FUNC 33
#define LOOK_AROUND_DOWN_FUNC 34
#define LOOK_AROUND_RIGHT_FUNC 35
#define LOOK_AROUND_LEFT_FUNC 36
#define JUMP_HAPPY_FUNC 37
#define JUMP_SURPRISE_FUNC 38
#define JUMP_ANGRY_FUNC 39
#define NOTICE_FUNC 40
#define QUESTION_FUNC 41
#define SWEAT_FUNC 42
#define SHOCK_FUNC 43
#define SPREE_START_FUNC 44
#define SPREE_END_FUNC 45
#define SMILE_START_FUNC 46
#define SMILE_END_FUNC 47
#define ANGRY_START_FUNC 48
#define ANGRY_END_FUNC 49
#define MOVE_PLAZA_SLEEP 50
#define INIT_PLAZA_SLEEP_STAY_FUNC 51
#define INIT_PLAZA_SLEEP_TALK_FUNC 52
#define INIT_SLEEP_FUNC 53
#define INIT_BASE_FUNC 54
#define INIT_DEBUG_HABITAT 55
#define NORMAL_MESSAGE 56
#define NORMAL_EVENT 57
#define NORMAL_CAMERA 58
#define DISMISSAL_SALLY_MEMBER_FUNC 59
#define DISMISSAL_SALLY_MEMBER2_FUNC 60
#define DISMISSAL_SALLY_MEMBER3_FUNC 61
#define DISMISSAL_SALLY_MEMBER4_FUNC 62
#define NEXT_SAVE_FUNC 63
#define NEXT_SAVE2_FUNC 64
#define SAVE_POINT 65
#define WAREHOUSE_POINT 66
#define SAVE_AND_WAREHOUSE_POINT 67
#define WORLD_MAP_POINT 68
#define FORMATION_HERO 69
#define EVOLUTION_HERO 70
#define WARP_LIVES_START 71
#define WARP_LIVES_START2 72
#define WARP_LIVES_START3 73
#define WARP_LIVES_ARRIVE 74
#define WARP_LIVES_ARRIVE2 75
#define WARP_LIVES_ARRIVE3 76
#define LIVES_WARP_START_FUNC 77
#define LIVES_WARP_START2_FUNC 78
#define LIVES_WARP_START3_FUNC 79
#define LIVES_WARP_START_SUB 80
#define LIVES_WARP_ARRIVE_FUNC 81
#define LIVES_WARP_ARRIVE2_FUNC 82
#define LIVES_WARP_ARRIVE3_FUNC 83
#define LIVES_WARP_ARRIVE_SUB 84
#define GET_ITEM_FUNC 85
#define GET_ITEM_WAIT_FUNC 86
#define GET_ITEM2_FUNC 87
#define GET_ITEM2_WAIT_FUNC 88
#define JOIN_FUNC 89
#define LODGE_START_FUNC 90
#define LODGE_WAIT_FUNC 91
#define LODGE_END_FUNC 92
#define LODGE_SOUND_FUNC 93
#define SAVE_START_FUNC 94
#define SAVE_WAIT_FUNC 95
#define SAVE_END_FUNC 96
#define SAVE_SOUND_FUNC 97
#define EFFECT_TEST1 98
#define EFFECT_TEST2 99
#define EFFECT_MOVE_DIVE 100
#define EFFECT_MOVE_WAVE 101
#define EVENT_DIVIDE 102
#define EVENT_DIVIDE_NEXT 103
#define EVENT_DIVIDE_INIT_FUNC 104
#define EVENT_DIVIDE_NEXT_DAY_FUNC 105
#define EVENT_DIVIDE_NEXT_DAY2_FUNC 106
#define EVENT_DIVIDE_FIRST 107
#define EVENT_DIVIDE_SECOND 108
#define EVENT_DIVIDE_AFTER 109
#define EVENT_DIVIDE_WARP_LOCK_FUNC 110
#define EVENT_RESCUE_ENTER_CHECK 111
#define EVENT_RESCUE 112
#define DEBUG_SCRIPT 113
#define DEMO_CANCEL 114
#define DEMO_01 115
#define DEMO_02 116
#define DEMO_03 117
#define DEMO_04 118
#define EVENT_M00E01A_L001 119
#define EVENT_M01E01A_L001 120
#define EVENT_M01E01A_L002 121
#define EVENT_M01E01A_L003 122
#define EVENT_M01E02A_L001 123
#define EVENT_M01E02A_L001B 124
#define EVENT_M01E02A_L001C 125
#define EVENT_M01E02A_L002 126
#define EVENT_M01E02A_L003 127
#define EVENT_M01E02A_L004 128
#define EVENT_M01E02A_L005 129
#define EVENT_M01E02A_L006 130
#define EVENT_M01E02B_L001 131
#define EVENT_M01E02B_L002 132
#define EVENT_M01E02B_L003 133
#define EVENT_M01E02B_L004 134
#define EVENT_M01E02B_L004B 135
#define EVENT_M01E02B_L005 136
#define EVENT_M01E02B_L006 137
#define EVENT_M01E02B_L007 138
#define EVENT_M01E02B_L008 139
#define EVENT_M01E03A_L000 140
#define EVENT_M01E03A_L001 141
#define EVENT_M01E03A_L002 142
#define EVENT_M01E03A_L003 143
#define EVENT_M01E03A_L004 144
#define EVENT_M01E03A_L005 145
#define EVENT_M01E03A_L006 146
#define EVENT_M01E03A_L007 147
#define EVENT_M01E03A_L008 148
#define EVENT_M01E03A_L009 149
#define EVENT_M01E03A_L010 150
#define EVENT_M01E03A_L011 151
#define EVENT_M01E04A_L000 152
#define EVENT_M01E04A_L001 153
#define EVENT_M01E04A_L002 154
#define EVENT_M01E04A_L003 155
#define EVENT_M01E04A_L004 156
#define EVENT_M01E04A_L005 157
#define EVENT_M01E04A_L006 158
#define EVENT_M01E04B_L000 159
#define EVENT_M01E04B_L001 160
#define EVENT_M01E04B_L002 161
#define EVENT_M01E04B_L003 162
#define EVENT_M01E04B_L004 163
#define EVENT_M01E04B_L005 164
#define EVENT_M01E04B_L006 165
#define EVENT_M01E04B_L007 166
#define EVENT_M01E05A_L000 167
#define EVENT_M01E05A_L001 168
#define EVENT_M01E05A_L002 169
#define EVENT_M01E05A_L003 170
#define EVENT_M01E05A_L004 171
#define EVENT_M01E05A_L005 172
#define EVENT_M01E05A_L006 173
#define EVENT_M01E05B_L000 174
#define EVENT_M01E05B_L001 175
#define EVENT_M01E05B_L002 176
#define EVENT_M01E05B_L003 177
#define EVENT_M01E05B_L004 178
#define EVENT_M01E05B_L005 179
#define EVENT_M01E06A_L001 180
#define EVENT_M01E06A_L002 181
#define EVENT_M01E06A_L003 182
#define EVENT_M01E07A_L001 183
#define EVENT_M01E07A_L002 184
#define EVENT_M01E07A_L003 185
#define EVENT_M01E07A_L004 186
#define EVENT_M01E07A_L005 187
#define EVENT_M01E07A_T001 188
#define EVENT_M01E07A_T002 189
#define EVENT_M01E07B_L001 190
#define EVENT_M01E07B_L002 191
#define EVENT_M01E07B_L003 192
#define EVENT_M01E07B_L004 193
#define EVENT_M01E07B_L005 194
#define EVENT_M01E07B_T001 195
#define EVENT_M01E07B_T002 196
#define EVENT_M01E08A_L001 197
#define EVENT_M01E08A_L002 198
#define EVENT_M01E08A_L003 199
#define EVENT_M01E08A_L004 200
#define EVENT_M01E08A_L005 201
#define EVENT_M01E08A_T001 202
#define EVENT_M01E08A_T002 203
#define EVENT_M01E08B_L001 204
#define EVENT_M01E08B_L002 205
#define EVENT_M01E08B_L003 206
#define EVENT_M01E08B_L004 207
#define EVENT_M01E08B_L005 208
#define EVENT_M01E08B_L006 209
#define EVENT_M01E08B_T001 210
#define EVENT_M01E08B_T002 211
#define EVENT_M01E09A_L001 212
#define EVENT_M01E09A_L002 213
#define EVENT_M01E09A_L003 214
#define EVENT_M01E09A_L004 215
#define EVENT_M01E09A_L005 216
#define EVENT_M01E09A_L006 217
#define EVENT_M01E09A_L007 218
#define EVENT_M01E09A_L008 219
#define EVENT_M01E09A_L009 220
#define EVENT_M01E09A_L010 221
#define EVENT_M01E09A_L011 222
#define EVENT_M01E09A_L012 223
#define EVENT_M01E09A_L013 224
#define EVENT_M01E09A_L014 225
#define EVENT_M01E09A_L015 226
#define EVENT_M01E10A_L001 227
#define EVENT_M01E10A_L002 228
#define EVENT_M01E10A_L003 229
#define EVENT_M01E10A_L004 230
#define EVENT_M01E10A_L005 231
#define EVENT_M01E10A_L006 232
#define EVENT_M01E10A_L007 233
#define EVENT_M01E10A_L008 234
#define EVENT_M01END_L001 235
#define EVENT_M01END_L002 236
#define EVENT_M02E01A_L001 237
#define EVENT_M02E01A_L002 238
#define EVENT_M02E01A_L003 239
#define EVENT_M02E02A_L001 240
#define EVENT_M02E02B_L001 241
#define EVENT_M02E02C_L001 242
#define EVENT_M02E02D_L001 243
#define EVENT_M02E02E_L001 244
#define EVENT_M02E02F_L001 245
#define EVENT_M02E02G_L001 246
#define EVENT_M02E02H_L001 247
#define EVENT_M02END_L001 248
#define EVENT_S00E01A_L001 249
#define EVENT_S00E01A_L002 250
#define EVENT_S00E01A_L003 251
#define EVENT_S00E01A_L004 252
#define EVENT_S01E01A_START 253
#define EVENT_S01E01A_CONTINUE 254
#define EVENT_S01E01A_END 255
#define EVENT_S01E01A_L001 256
#define EVENT_S01E01A_L002 257
#define EVENT_S01E01A_L003 258
#define EVENT_S01E01B_L001 259
#define EVENT_S01E01B_L001L 260
#define EVENT_S01E01C_L001 261
#define EVENT_S01E02A_START 262
#define EVENT_S01E02A_END 263
#define EVENT_S01E02A_L001 264
#define EVENT_S01E02A_L002 265
#define EVENT_S01E02A_L002L 266
#define EVENT_S01E02B_L001 267
#define EVENT_S01E02B_L002 268
#define EVENT_S02E01A_START 269
#define EVENT_S02E01A_END 270
#define EVENT_S02E01A_L001 271
#define EVENT_S02E01A_L002 272
#define EVENT_S02E01A_L003 273
#define EVENT_S02E01A_L004 274
#define EVENT_S02E01A_L004L 275
#define EVENT_S02E02A_START 276
#define EVENT_S02E02A_END 277
#define EVENT_S02E02A_L001 278
#define EVENT_S02E02A_L002 279
#define EVENT_S02E02A_L003 280
#define EVENT_S02E02A_L003L 281
#define EVENT_S03E01A_START 282
#define EVENT_S03E01A_CONTINUE 283
#define EVENT_S03E01A_END 284
#define EVENT_S03E01A_L001 285
#define EVENT_S03E01A_L002 286
#define EVENT_S03E01A_L002L 287
#define EVENT_S04E01A_START 288
#define EVENT_S04E01A_LAST 289
#define EVENT_S04E01A_END 290
#define EVENT_S04E01A_L001 291
#define EVENT_S04E01A_L002 292
#define EVENT_S04E01A_L002L 293
#define EVENT_S04E01B_L001 294
#define EVENT_S04E01B_L001L 295
#define EVENT_S04E01C_L001 296
#define EVENT_S04E01C_L001L 297
#define EVENT_S04E01D_L001 298
#define EVENT_S04E01D_L001L 299
#define EVENT_S04E01E_L001 300
#define EVENT_S04E01E_L001L 301
#define EVENT_S04E01F_L001 302
#define EVENT_S05E01A_START 303
#define EVENT_S05E01A_CONTINUE 304
#define EVENT_S05E01A_END 305
#define EVENT_S05E01A_L001 306
#define EVENT_S05E01A_L002 307
#define EVENT_S05E01A_L002L 308
#define EVENT_S06E01A_START 309
#define EVENT_S06E01A_CONTINUE 310
#define EVENT_S06E01A_END 311
#define EVENT_S06E01A_L001 312
#define EVENT_S06E01A_L002 313
#define EVENT_S06E01A_L002L 314
#define EVENT_S06E01B_L001 315
#define EVENT_S06E01B_L002 316
#define EVENT_S06E01B_L002L 317
#define EVENT_S07E01A_START 318
#define EVENT_S07E01A_END 319
#define EVENT_S07E01A_L001 320
#define EVENT_S07E01A_L002 321
#define EVENT_S07E01A_L003 322
#define EVENT_S07E01A_L003L 323
#define EVENT_S08E01A_START 324
#define EVENT_S08E01A_END 325
#define EVENT_S08E01A_L001 326
#define EVENT_S08E01A_L002 327
#define EVENT_S08E01A_L003 328
#define EVENT_S08E01A_L004 329
#define EVENT_S08E01A_L005 330
#define EVENT_S08E01A_L005B 331
#define EVENT_S08E01A_L006 332
#define EVENT_S08E01A_L006L 333
#define EVENT_S08E01A_L007 334
#define EVENT_S08E01A_L008 335
#define EVENT_S08E01A_L008L 336
#define EVENT_S08E01A_L008A 337
#define EVENT_S08E01A_L008B 338
#define EVENT_S08E01A_L008C 339
#define EVENT_S09E01A_START 340
#define EVENT_S09E01A_END 341
#define EVENT_S09E01A_L001 342
#define EVENT_S09E01A_L002 343
#define EVENT_S09E01A_L003 344
#define EVENT_S09E01A_L004 345
#define EVENT_S09E01A_L004B 346
#define EVENT_S09E01A_L005 347
#define EVENT_S09E01A_L005L 348
#define EVENT_S09E01B_L001 349
#define EVENT_S09E01B_L001B 350
#define EVENT_S09E01B_L002 351
#define EVENT_S09E01B_L002L 352
#define EVENT_S09E01C_L001 353
#define EVENT_R00E01A_L001 354
#define COMMON_ENTER 355
#define DEBUG_ENTER 356
#define GETOUT_NORMAL 357
#define GETOUT_HABITAT 358
#define GETOUT_M01E01A 359
#define GETOUT_M01E02A 360
#define GETOUT_M01E02B 361
#define GETOUT_M01E03A 362
#define GETOUT_M01E04A 363
#define GETOUT_M01E04B 364
#define GETOUT_M01E05A 365
#define GETOUT_M01E07A 366
#define GETOUT_M01E07B 367
#define GETOUT_M01E08A 368
#define GETOUT_M01E08B 369
#define GETOUT_M01E09A 370
#define GETOUT_M01E10A 371
#define GETOUT_S00E01A 372
#define GETOUT_S01E01A 373
#define GETOUT_S01E02A 374
#define GETOUT_S02E01A 375
#define GETOUT_S02E02A 376
#define GETOUT_S03E01A 377
#define GETOUT_S04E01A 378
#define GETOUT_S04E01B 379
#define GETOUT_S04E01C 380
#define GETOUT_S04E01D 381
#define GETOUT_S04E01E 382
#define GETOUT_S05E01A 383
#define GETOUT_S06E01A 384
#define GETOUT_S06E01B 385
#define GETOUT_S07E01A 386
#define GETOUT_S08E01A 387
#define GETOUT_S09E01A 388
#define GETOUT_S09E01B 389
#define GETOUT_D62E01A 390
#define GETOUT_D43E01A 391
#define GETOUT_D44E01A 392
#define GETOUT_D45E01A 393
#define GETOUT_D46E01A 394
#define GETOUT_U00E01A 395
#define GETOUT_R00E01A 396
#define GETOUT_T00E01A 397
#define GETOUT_M01E07T 398
#define GETOUT_M01E08T 399
#define EVENT_CONTROL 400
#define EVENT_WAKEUP 401
#define EVENT_STATION 402
#define STATION_CONTROL 403
#define ENTER_CONTROL 404
#define SETUP_DEBUG_CAMERA 405
#define MOVE_DEBUG_CAMERA 406

View File

@@ -10,13 +10,13 @@ typedef struct ScriptCommand {
/* 0x2 */ s16 argShort;
/* 0x4 */ s32 arg1;
/* 0x8 */ s32 arg2;
/* 0xC */ u8* argPtr;
/* 0xC */ const u8* argPtr;
} ScriptCommand;
typedef struct ScriptInfoSmall
{
// size: 0xC (3 padding)
/* 0x0 */ ScriptCommand *ptr;
/* 0x0 */ const ScriptCommand *ptr;
/* 0x4 */ s16 state;
/* 0x6 */ s16 group;
/* 0x8 */ s8 sector;
@@ -25,8 +25,8 @@ typedef struct ScriptInfoSmall
typedef struct ScriptInfo
{
// size: 0xC (1 padding)
/* 0x0 */ ScriptCommand *ptr;
/* 0x4 */ ScriptCommand *ptr2;
/* 0x0 */ const ScriptCommand *ptr;
/* 0x4 */ const ScriptCommand *ptr2;
/* 0x8 */ s16 group;
/* 0xA */ s8 sector;
} ScriptInfo;
@@ -45,7 +45,7 @@ typedef struct ScriptData
// padding
/* 0x10 */ ScriptInfo savedScript;
// padding
/* 0x1C */ ScriptCommand *curPtr;
/* 0x1C */ const ScriptCommand *curPtr;
/* 0x20 */ u8 curScriptOp;
// padding
/* 0x22 */ u16 unk22;
@@ -109,7 +109,7 @@ typedef struct Action
/* 0x10 */ s16 group;
/* 0x12 */ s8 sector;
// padding
/* 0x14 */ ScriptCommand *predefinedScripts[4];
/* 0x14 */ const ScriptCommand *predefinedScripts[4];
/* 0x24 */ ScriptData scriptData;
/* 0x84 */ ScriptData scriptData2;
} Action;
@@ -125,15 +125,83 @@ typedef struct GroundMapAction
/* .... */ u8 fillE8[0x110 - 0xE6];
} GroundMapAction;
typedef struct FunctionScript
typedef struct ScriptRef
{
u16 unk0;
s16 unk2;
u8 *funcName;
ScriptCommand *script;
} FunctionScript;
u16 id;
s16 type;
u8 *name;
const ScriptCommand *script;
} ScriptRef;
extern FunctionScript gFunctionScriptTable[];
extern const ScriptRef gFunctionScriptTable[];
struct CompactPos {
u8 xTiles;
u8 yTiles;
u8 xFlags;
u8 yFlags;
};
struct GroundLink {
struct CompactPos pos;
u8 width;
u8 height;
u8 ret;
u8 unk7;
};
typedef struct GroundLivesData {
u8 kind;
u8 unk1;
u8 width;
u8 height;
struct CompactPos pos;
const ScriptCommand *scripts[4];
} GroundLivesData;
typedef struct GroundObjectData {
u8 kind;
u8 unk1;
u8 width;
u8 height;
struct CompactPos pos;
const ScriptCommand *scripts[4];
} GroundObjectData;
typedef struct GroundEffectData {
u8 kind;
u8 unk1;
u8 width;
u8 height;
struct CompactPos pos;
const ScriptCommand *script;
} GroundEffectData;
typedef struct GroundEventData {
u8 kind;
u8 unk1;
u8 width;
u8 height;
struct CompactPos pos;
const ScriptRef *script;
} GroundEventData;
struct GroundScriptSector {
u32 nLives;
const GroundLivesData *lives;
u32 nObjects;
const GroundObjectData *objects;
u32 nEffects;
const GroundEffectData *effects;
u32 nEvents;
const GroundEventData *events;
u32 hasStation;
const ScriptRef * const *station;
};
struct GroundScriptGroup {
u32 nSectors;
const struct GroundScriptSector *sectors;
};
struct GroundScriptHeader {
u32 nGroups;
const struct GroundScriptGroup *groups;
const struct GroundLink *links;
};
#include "debug.h"
@@ -144,8 +212,8 @@ void GetFunctionScript(Action *param_1, ScriptInfoSmall *script, s16 index);
bool8 GroundScriptLockCond(Action *param_1, s16 index, u32 param_3);
bool8 ActionResetScriptData(Action *param_1, const DebugLocation *unused);
bool8 GroundScript_ExecutePP(Action *, s32 *, ScriptInfoSmall *, const DebugLocation *unused);
ScriptCommand *FindLabel(Action *action, s32 r1);
ScriptCommand *ResolveJump(Action *action, s32 r1);
const ScriptCommand *FindLabel(Action *action, s32 r1);
const ScriptCommand *ResolveJump(Action *action, s32 r1);
void InitActionWithParams(Action *action, const CallbackData *callbacks, void *parent, s16 group, s8 sector);
#endif // GUARD_GROUND_SCRIPT_H

View File

@@ -581,9 +581,142 @@ SECTIONS {
data/data_8115EB8.o(.rodata);
src/ground_main.o(.rodata);
data/data_8115F5C.o(.rodata);
src/ground_event_data.o(.rodata);
data/friend_area_dialogue.o(.rodata);
data/cutscenes.o(.rodata);
data/cutscenes_1.o(.rodata);
src/ground_data_t00p01_station.o(.rodata);
src/ground_data_t01p01_station.o(.rodata);
src/ground_data_t01p02a_station.o(.rodata);
src/ground_data_t01p03_station.o(.rodata);
src/ground_data_t01p04_station.o(.rodata);
src/ground_data_t01p05_station.o(.rodata);
src/ground_data_t01p06_station.o(.rodata);
src/ground_data_t01p07_station.o(.rodata);
src/ground_data_b01p01a_station.o(.rodata);
src/ground_data_b01p02a_station.o(.rodata);
src/ground_data_h01p01_station.o(.rodata);
src/ground_data_h01p02_station.o(.rodata);
src/ground_data_h01p03_station.o(.rodata);
src/ground_data_h02p01_station.o(.rodata);
src/ground_data_h02p02_station.o(.rodata);
src/ground_data_h02p03_station.o(.rodata);
src/ground_data_h03p01_station.o(.rodata);
src/ground_data_h04p01_station.o(.rodata);
src/ground_data_h04p02_station.o(.rodata);
src/ground_data_h05p01_station.o(.rodata);
src/ground_data_h05p02_station.o(.rodata);
src/ground_data_h06p01_station.o(.rodata);
src/ground_data_h06p02_station.o(.rodata);
src/ground_data_h06p03_station.o(.rodata);
src/ground_data_h06p04_station.o(.rodata);
src/ground_data_h06p05_station.o(.rodata);
src/ground_data_h06p06_station.o(.rodata);
src/ground_data_h07p01_station.o(.rodata);
src/ground_data_h07p02_station.o(.rodata);
src/ground_data_h07p03_station.o(.rodata);
src/ground_data_h07p04_station.o(.rodata);
src/ground_data_h07p05_station.o(.rodata);
src/ground_data_h07p06_station.o(.rodata);
src/ground_data_h07p07_station.o(.rodata);
src/ground_data_h07p08_station.o(.rodata);
src/ground_data_h08p01_station.o(.rodata);
src/ground_data_h09p01_station.o(.rodata);
src/ground_data_h09p02_station.o(.rodata);
src/ground_data_h10p01_station.o(.rodata);
src/ground_data_h10p02_station.o(.rodata);
src/ground_data_h11p01_station.o(.rodata);
src/ground_data_h12p01_station.o(.rodata);
src/ground_data_h13p01_station.o(.rodata);
src/ground_data_h13p02_station.o(.rodata);
src/ground_data_h13p03_station.o(.rodata);
src/ground_data_h13p04_station.o(.rodata);
src/ground_data_h14p01_station.o(.rodata);
src/ground_data_h15p01_station.o(.rodata);
src/ground_data_h16p01_station.o(.rodata);
src/ground_data_h17p01_station.o(.rodata);
src/ground_data_h18p01_station.o(.rodata);
src/ground_data_h19p01_station.o(.rodata);
src/ground_data_h20p01_station.o(.rodata);
src/ground_data_h21p01_station.o(.rodata);
src/ground_data_h21p02_station.o(.rodata);
src/ground_data_h22p01_station.o(.rodata);
src/ground_data_h23p01_station.o(.rodata);
src/ground_data_h24p01_station.o(.rodata);
src/ground_data_h25p01_station.o(.rodata);
src/ground_data_h26p01_station.o(.rodata);
src/ground_data_h27p01_station.o(.rodata);
src/ground_data_h28p01_station.o(.rodata);
src/ground_data_h28p02_station.o(.rodata);
src/ground_data_h29p01_station.o(.rodata);
src/ground_data_h29p02_station.o(.rodata);
src/ground_data_h29p03_station.o(.rodata);
src/ground_data_h29p04_station.o(.rodata);
src/ground_data_a01p01_station.o(.rodata);
src/ground_data_a01p02_station.o(.rodata);
src/ground_data_a02p01_station.o(.rodata);
src/ground_data_a02p02_station.o(.rodata);
src/ground_data_a02p03_station.o(.rodata);
src/ground_data_a02p04_station.o(.rodata);
src/ground_data_a03p01_station.o(.rodata);
src/ground_data_a03p02_station.o(.rodata);
src/ground_data_a03p03_station.o(.rodata);
src/ground_data_a04p01_station.o(.rodata);
src/ground_data_a04p02_station.o(.rodata);
src/ground_data_a04p03_station.o(.rodata);
src/ground_data_a04p04_station.o(.rodata);
src/ground_data_a05p01_station.o(.rodata);
src/ground_data_a05p02_station.o(.rodata);
src/ground_data_a05p03_station.o(.rodata);
src/ground_data_d01p01_station.o(.rodata);
src/ground_data_d01p02_station.o(.rodata);
src/ground_data_d02p01_station.o(.rodata);
src/ground_data_d02p02_station.o(.rodata);
src/ground_data_d03p01_station.o(.rodata);
src/ground_data_d03p02_station.o(.rodata);
src/ground_data_d04p01_station.o(.rodata);
src/ground_data_d04p02_station.o(.rodata);
src/ground_data_d05p01_station.o(.rodata);
src/ground_data_d05p02_station.o(.rodata);
src/ground_data_d06p01_station.o(.rodata);
src/ground_data_d06p02_station.o(.rodata);
src/ground_data_d06p03_station.o(.rodata);
src/ground_data_d07p01_station.o(.rodata);
src/ground_data_d07p02_station.o(.rodata);
src/ground_data_d08p01_station.o(.rodata);
src/ground_data_d08p02_station.o(.rodata);
src/ground_data_d09p01_station.o(.rodata);
src/ground_data_d09p02_station.o(.rodata);
src/ground_data_d09p03_station.o(.rodata);
src/ground_data_d10p01_station.o(.rodata);
src/ground_data_d10p02_station.o(.rodata);
src/ground_data_d10p03_station.o(.rodata);
src/ground_data_d11p01_station.o(.rodata);
src/ground_data_d11p02_station.o(.rodata);
src/ground_data_d11p03_station.o(.rodata);
src/ground_data_d12p01_station.o(.rodata);
src/ground_data_d12p02_station.o(.rodata);
src/ground_data_d12p04_station.o(.rodata);
src/ground_data_d13p01_station.o(.rodata);
src/ground_data_d13p02_station.o(.rodata);
src/ground_data_d13p03_station.o(.rodata);
src/ground_data_d14p01_station.o(.rodata);
src/ground_data_d15p01_station.o(.rodata);
src/ground_data_d16p01_station.o(.rodata);
src/ground_data_d17p01_station.o(.rodata);
src/ground_data_d18p01_station.o(.rodata);
src/ground_data_d19p01_station.o(.rodata);
src/ground_data_d20p01_station.o(.rodata);
src/ground_data_d21p01_station.o(.rodata);
src/ground_data_d22p01_station.o(.rodata);
src/ground_data_d23p01_station.o(.rodata);
src/ground_data_d24p01_station.o(.rodata);
src/ground_data_d24p02_station.o(.rodata);
src/ground_data_d25p01_station.o(.rodata);
src/ground_data_s01_station.o(.rodata);
src/ground_data_s02_station.o(.rodata);
src/ground_data_s03_station.o(.rodata);
src/ground_data_s04_station.o(.rodata);
src/ground_data_s05_station.o(.rodata);
src/ground_data_s06_station.o(.rodata);
src/m4a_tables.o(.rodata);
src/agb_flash.o(.rodata);
src/agb_flash_1m.o(.rodata);

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,336 @@
static const struct ScriptCommand s_gs163_g0_s0_station_sref_script[] = { /* 0x82163d4 */
DEBUGINFO,
SELECT_MAP(163),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs163_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs163_g0_s0_station_sref_script }; /* 0x8216440 */
static const struct ScriptCommand s_gs163_g1_s0_station_sref_script[] = { /* 0x821644c */
DEBUGINFO,
BGM_STOP,
SELECT_MAP(163),
{ 0x2d, 0x09, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("......") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("............") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("...Urgggh...#W I feel horrible...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
SELECT_ENTITIES(-1, -1),
BGM_FADEIN(120, 29),
{ 0x22, 0x01, 0x005a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs163_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs163_g1_s0_station_sref_script }; /* 0x8216588 */
static const struct ScriptCommand s_gs163_g1_s0_lives0_dlg0[] = { /* 0x8216594 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x02, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("This is a dream...#W Isn't it...?") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("...But why...?#W\nWhy do I feel this terrible...?") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("This is...#W The first time...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs163_g2_s0_station_sref_script[] = { /* 0x82166dc */
DEBUGINFO,
SELECT_MAP(163),
SELECT_ENTITIES(-1, -1),
{ 0x22, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs163_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs163_g2_s0_station_sref_script }; /* 0x821674c */
static const struct ScriptCommand s_gs163_g2_s0_lives0_dlg0[] = { /* 0x8216758 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0001, 0x00000022, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
BGM_FADEOUT(120),
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("..................") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("......The pain......") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("......It's going away............") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs163_g3_s0_station_sref_script[] = { /* 0x8216898 */
DEBUGINFO,
SELECT_MAP(163),
SELECT_ENTITIES(-1, -1),
BGM_FADEIN(60, 37),
{ 0x22, 0x01, 0x005a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(506),
BGM_FADEOUT(90),
{ 0x28, 0x01, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs163_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs163_g3_s0_station_sref_script }; /* 0x8216948 */
static const struct ScriptCommand s_gs163_g3_s0_lives0_dlg0[] = { /* 0x8216954 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000052, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+If you fail to draw out $n2's\n#+true feelings...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The curse will never be broken.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0002, 0x00000046, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gegege!\nHey, $n0!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Don't you dare fool around!\nI'll make you pay for it!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You have but one chance.#W\n#+$n0,\n#+do your best.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Fine...#W It is time.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+First of all...") },
LABEL(2), /* = 0x02 */
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+Why does $n2 wish to\n#+break this curse?")),
CHOICE(/* label */ 4, _("To help $n3.")),
CHOICE(/* label */ 5, _("Just a whim.")),
LABEL(5), /* = 0x05 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+............#WDo you mean that?") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+Do you truly...#W\n#+truly believe that?")),
CHOICE(/* label */ 7, _("Yes.")),
CHOICE(/* label */ 8, _("No.")),
LABEL(7), /* = 0x07 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+............#W\n#+If that is truly how you feel...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+My questions\n#+will end now.") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+You have\n#+no regrets?")),
CHOICE(/* label */ 10, _("None.")),
CHOICE(/* label */ 8, _("I do.")),
LABEL(8), /* = 0x08 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+............#W\n#+Please be serious.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Let me ask you again.") },
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+That's a lie, isn't it?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Didn't $n2 abandon\n#+$n3 long ago?") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+Why would $n2\n#+want to save Gardevoir now?")),
CHOICE(/* label */ 12, _("For taking the curse.")),
CHOICE(/* label */ 13, _("Came to understand $n3.")),
LABEL(12), /* = 0x0c */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 certainly did protect\n#+$n2 from the curse.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Sacrificing herself to do so.") },
LABEL(14), /* = 0x0e */
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+But what did $n2\n#+do then?")),
CHOICE(/* label */ 5, _("Tried to protect $n3.")),
CHOICE(/* label */ 15, _("Abandoned Gardevoir and ran.")),
LABEL(15), /* = 0x0f */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Yes...#W $n2 abandoned\n#+$n3 and fled.") },
LABEL(16), /* = 0x10 */
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+Why did $n2\n#+abandon $n3?")),
CHOICE(/* label */ 17, _("Gengar only cared about himself.")),
CHOICE(/* label */ 5, _("Gengar intended to help later.")),
LABEL(17), /* = 0x11 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+That's right.#W\n#+$n2 didn't want to\n#+be cursed himself...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And abandoned $n3.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+When $n2 was a human,\n#+$n3 was his partner.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+But to $n2, $n3\n#+was merely a tool.") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+The bond between $n2 and\n#+$n3 was that flimsy...#W\n#+Is that what I am hearing?")),
CHOICE(/* label */ 19, _("Yes.")),
CHOICE(/* label */ 20, _("No.")),
LABEL(20), /* = 0x14 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The bond between $n2 and\n#+$n3 you claim to be strong?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+But that makes no sense.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 saved $n2 from\n#+the curse. That much is true.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+It was from her depth of\n#+feeling for $n2.") },
JUMP_LABEL(14),
LABEL(19), /* = 0x13 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+............#W\n#+If that is truly how you feel...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+My questions\n#+will end now.") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+You have\n#+no regrets?")),
CHOICE(/* label */ 10, _("None.")),
CHOICE(/* label */ 22, _("I do.")),
LABEL(22), /* = 0x16 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You claim that isn't true?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+But $n2 abandoned\n#+$n3.") },
JUMP_LABEL(16),
LABEL(13), /* = 0x0d */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Came to understand\n#+$n3's feelings?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+What is it you claim to understand?") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+What do you claim to be\n#+$n3's feelings?")),
CHOICE(/* label */ 24, _("Caring for $n2.")),
CHOICE(/* label */ 25, _("Hatred for $n2.")),
LABEL(24), /* = 0x18 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Caring for $n2.#W\n#+I see...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 became a presence\n#+without a physical form because\n#+she bore the curse...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+But even then, Gardevoir never\n#+stopped caring for $n2...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Having learned that, $n2\n#+now wants to save $n3...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+It makes sense...#W However...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Until now, $n2 had\n#+forgotten entirely about\n#+$n3, correct?") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+But now Gengar wants to save\n#+Gardevoir. Isn't that asking a lot?")),
CHOICE(/* label */ 27, _("Yes.")),
CHOICE(/* label */ 28, _("No.")),
LABEL(27), /* = 0x1b */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I see...\n#+You say this because Gengar is\n#+willing to face the consequences?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gengar is coming to the help of\n#+Gardevoir because he wants to help...#W\n#+Is that what you claim?") },
JUMP_LABEL(10),
LABEL(28), /* = 0x1c */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You say that is not so...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You believe that this is another matter?\n#+And to help is only natural?#W\n#+That is what you believe?") },
JUMP_LABEL(10),
LABEL(25), /* = 0x19 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Hatred for $n2...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 felt hatred toward\n#+$n2 for abandonment...#W\n#+That is what you claim?") },
LABEL(29), /* = 0x1d */
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+In spite of that, $n2\n#+is trying to help Gardevoir...#W\n#+Why should that be so?")),
CHOICE(/* label */ 30, _("To clear up misunderstandings.")),
CHOICE(/* label */ 31, _("To punish Gardevoir.")),
LABEL(30), /* = 0x1e */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I see.\n#+To clear up misunderstandings.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gengar hopes to help $n3\n#+and clear up misunderstandings...#W\n#+That is what you claim?") },
JUMP_LABEL(10),
LABEL(31), /* = 0x1f */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gengar would go through the trouble\n#+of helping $n3 just so she\n#+could be punished?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Do you claim that seriously?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+If that is true...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+My queries will\n#+end now.") },
ASK2(FALSE, /*default*/ -1, /* speaker */ -1, _("#+May I finish now?")),
CHOICE(/* label */ 10, _("Yes.")),
CHOICE(/* label */ 33, _("No.")),
LABEL(33), /* = 0x21 */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+This isn't the end?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Is there anything else you wish to say?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Oh? You are confused?") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+............#W\n#+You must be more serious.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Let me go back to my inquiry.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 felt hatred toward\n#+$n2 for abandonment...") },
JUMP_LABEL(29),
LABEL(10), /* = 0x0a */
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I understand now...\n#+My questions are finished.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs163_g3_s0_lives1_dlg0[] = { /* 0x8217f50 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs163_g1_s0_lives[] = { /* 0x8217fd0 */
/* 0 */ { 0, 0, 0, 0, { 30, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs163_g1_s0_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs163_g2_s0_lives[] = { /* 0x8217fe8 */
/* 0 */ { 0, 0, 0, 0, { 30, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs163_g2_s0_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs163_g3_s0_lives[] = { /* 0x8218000 */
/* 0 */ { 0, 4, 0, 0, { 30, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs163_g3_s0_lives0_dlg0,
} },
/* 1 */ { 91, 4, 0, 0, { 30, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs163_g3_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs163_g1_s0_effs[] = { /* 0x8218030 */
/* 0 */ { 0, 0, 1, 1, { 30, 19, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs163_g2_s0_effs[] = { /* 0x821803c */
/* 0 */ { 0, 0, 1, 1, { 30, 19, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs163_g3_s0_effs[] = { /* 0x8218048 */
/* 0 */ { 0, 0, 1, 1, { 30, 19, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8218054 */
&s_gs163_g0_s0_station_sref,
&s_gs163_g1_s0_station_sref,
&s_gs163_g2_s0_station_sref,
&s_gs163_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs163_g0_sectors[] = { /* 0x8218064 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs163_g1_sectors[] = { /* 0x821808c */
{ LPARRAY(s_gs163_g1_s0_lives), 0,NULL, LPARRAY(s_gs163_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs163_g2_sectors[] = { /* 0x82180b4 */
{ LPARRAY(s_gs163_g2_s0_lives), 0,NULL, LPARRAY(s_gs163_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs163_g3_sectors[] = { /* 0x82180dc */
{ LPARRAY(s_gs163_g3_s0_lives), 0,NULL, LPARRAY(s_gs163_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs163_groups[] = { /* 0x8218104 */
{ LPARRAY(s_gs163_g0_sectors) },
{ LPARRAY(s_gs163_g1_sectors) },
{ LPARRAY(s_gs163_g2_sectors) },
{ LPARRAY(s_gs163_g3_sectors) },
};
static const struct GroundLink s_gs163_links[] = { /* 0x8218124 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs163 = { LPARRAY(s_gs163_groups), s_gs163_links }; /* 0x821812c */

View File

@@ -0,0 +1,107 @@
static const struct ScriptCommand s_gs164_g0_s0_station_sref_script[] = { /* 0x8218140 */
DEBUGINFO,
SELECT_MAP(164),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs164_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs164_g0_s0_station_sref_script }; /* 0x82181ac */
static const struct ScriptCommand s_gs164_g1_s0_station_sref_script[] = { /* 0x82181b8 */
DEBUGINFO,
BGM_SWITCH(24),
{ 0x23, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(164),
{ 0x2d, 0x09, 0x0000, 0x00000021, 0x00000000, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Thus began\n#+$n0's") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+cruel and arduous\n#+journey as a fugitive.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Over forbidding mountains...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs164_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs164_g1_s0_station_sref_script }; /* 0x8218330 */
static const struct ScriptCommand s_gs164_g1_s0_lives0_dlg0[] = { /* 0x821833c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whoa!\nThese cracks go down deep!")),
VARIANT_DEFAULT(_(" Wow!\nAren't these fissures amazing?!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs164_g1_s0_lives1_dlg0[] = { /* 0x8218458 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs164_g1_s0_lives[] = { /* 0x82184d8 */
/* 0 */ { 0, 2, 0, 0, { 25, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs164_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 26, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs164_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs164_g1_s0_effs[] = { /* 0x8218508 */
/* 0 */ { 0, 0, 1, 1, { 40, 20, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8218514 */
&s_gs164_g0_s0_station_sref,
&s_gs164_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs164_g0_sectors[] = { /* 0x821851c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs164_g1_sectors[] = { /* 0x8218544 */
{ LPARRAY(s_gs164_g1_s0_lives), 0,NULL, LPARRAY(s_gs164_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs164_groups[] = { /* 0x821856c */
{ LPARRAY(s_gs164_g0_sectors) },
{ LPARRAY(s_gs164_g1_sectors) },
};
static const struct GroundLink s_gs164_links[] = { /* 0x821857c */
/* link 0 */ { { /*x*/ 34, /*y*/ 19, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 35, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs164 = { LPARRAY(s_gs164_groups), s_gs164_links }; /* 0x821858c */

View File

@@ -0,0 +1,127 @@
static const struct ScriptCommand s_gs165_g0_s0_station_sref_script[] = { /* 0x82185a0 */
DEBUGINFO,
SELECT_MAP(165),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs165_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs165_g0_s0_station_sref_script }; /* 0x821860c */
static const struct ScriptCommand s_gs165_g1_s0_station_sref_script[] = { /* 0x8218618 */
DEBUGINFO,
BGM_SWITCH(24),
{ 0x23, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(165),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Across fields of fire...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0000, 0x00000021, 0x00000000, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+But throughout it all,\n#+$n0's team kept\n#+their heads held high.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Without a complaint,\n#+they marched on.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs165_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs165_g1_s0_station_sref_script }; /* 0x8218828 */
static const struct ScriptCommand s_gs165_g1_s0_lives0_dlg0[] = { /* 0x8218834 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x02, 0x0001, 0x00000005, 0x00000000, NULL },
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...")),
VARIANT_DEFAULT(_(" The environment is out\nof control here too...")),
VARIANT_DEFAULT(_(" The forest fire is still\nraging...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0064, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x80, 0x00cc, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs165_g1_s0_lives1_dlg0[] = { /* 0x8218a34 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x08, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x80, 0x00cc, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs165_g1_s0_lives[] = { /* 0x8218af4 */
/* 0 */ { 0, 2, 0, 0, { 6, 12, 0, CPOS_HALFTILE }, {
[0] = s_gs165_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 1, 12, 0, CPOS_HALFTILE }, {
[0] = s_gs165_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs165_g1_s0_effs[] = { /* 0x8218b24 */
/* 0 */ { 0, 0, 1, 1, { 16, 11, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8218b30 */
&s_gs165_g0_s0_station_sref,
&s_gs165_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs165_g0_sectors[] = { /* 0x8218b38 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs165_g1_sectors[] = { /* 0x8218b60 */
{ LPARRAY(s_gs165_g1_s0_lives), 0,NULL, LPARRAY(s_gs165_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs165_groups[] = { /* 0x8218b88 */
{ LPARRAY(s_gs165_g0_sectors) },
{ LPARRAY(s_gs165_g1_sectors) },
};
static const struct GroundLink s_gs165_links[] = { /* 0x8218b98 */
/* link 0 */ { { /*x*/ 18, /*y*/ 12, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 14, /*y*/ 12, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs165 = { LPARRAY(s_gs165_groups), s_gs165_links }; /* 0x8218ba8 */

View File

@@ -0,0 +1,226 @@
static const struct ScriptCommand s_gs166_g0_s0_station_sref_script[] = { /* 0x8218bbc */
DEBUGINFO,
SELECT_MAP(166),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs166_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs166_g0_s0_station_sref_script }; /* 0x8218c28 */
static const struct ScriptCommand s_gs166_g1_s0_station_sref_script[] = { /* 0x8218c34 */
DEBUGINFO,
SELECT_MAP(166),
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs166_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs166_g1_s0_station_sref_script }; /* 0x8218ca4 */
static const struct ScriptCommand s_gs166_g1_s0_lives0_dlg0[] = { /* 0x8218cb0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
BGM_FADEOUT(60),
WAIT(20),
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Gasp... Gasp...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh, no! Look!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_SWITCH(38),
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs166_g1_s0_lives1_dlg0[] = { /* 0x8218e38 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(455),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs166_g2_s0_station_sref_script[] = { /* 0x8218f08 */
DEBUGINFO,
SELECT_MAP(166),
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Look at them go!\nThey're running for Mt. Blaze!") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Are they insane?\nMt. Blaze is doomed desolation!") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" No one's ever come this far\nbefore!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I don't wanna go anywhere like that.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" It can't be helped.\nOnly those brave enough will give chase!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(90),
WAIT(120),
{ 0x3b, 0x39, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs166_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs166_g2_s0_station_sref_script }; /* 0x8219150 */
static const struct ScriptCommand s_gs166_g2_s0_lives0_dlg0[] = { /* 0x821915c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" It... It's a mountain of fire!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Look at all that lava\npouring from the crater...") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Can we even make it\nthrough there?") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" But they're catching up to\nus...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What'll we do,\n$n0?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Look! There they are!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Get them!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" There's no choice now!") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Let's go, $n0!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0028, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x89, 0x50, 0x0200, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs166_g2_s0_lives1_dlg0[] = { /* 0x821952c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0200, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs166_g1_s0_lives[] = { /* 0x821964c */
/* 0 */ { 0, 2, 0, 0, { 14, 25, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs166_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 18, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs166_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs166_g2_s0_lives[] = { /* 0x821967c */
/* 0 */ { 0, 2, 0, 0, { 28, 25, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs166_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 32, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs166_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs166_g1_s0_effs[] = { /* 0x82196ac */
/* 0 */ { 0, 0, 1, 1, { 30, 28, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs166_g2_s0_effs[] = { /* 0x82196b8 */
/* 0 */ { 0, 0, 1, 1, { 30, 28, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82196c4 */
&s_gs166_g0_s0_station_sref,
&s_gs166_g1_s0_station_sref,
&s_gs166_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs166_g0_sectors[] = { /* 0x82196d0 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs166_g1_sectors[] = { /* 0x82196f8 */
{ LPARRAY(s_gs166_g1_s0_lives), 0,NULL, LPARRAY(s_gs166_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs166_g2_sectors[] = { /* 0x8219720 */
{ LPARRAY(s_gs166_g2_s0_lives), 0,NULL, LPARRAY(s_gs166_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs166_groups[] = { /* 0x8219748 */
{ LPARRAY(s_gs166_g0_sectors) },
{ LPARRAY(s_gs166_g1_sectors) },
{ LPARRAY(s_gs166_g2_sectors) },
};
static const struct GroundLink s_gs166_links[] = { /* 0x8219760 */
/* link 0 */ { { /*x*/ 28, /*y*/ 25, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 32, /*y*/ 27, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs166 = { LPARRAY(s_gs166_groups), s_gs166_links }; /* 0x8219770 */

View File

@@ -0,0 +1,367 @@
static const struct ScriptCommand s_gs167_g0_s0_station_sref_script[] = { /* 0x8219784 */
DEBUGINFO,
SELECT_MAP(167),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs167_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs167_g0_s0_station_sref_script }; /* 0x82197f0 */
static const struct ScriptCommand s_gs167_g1_s0_station_sref_script[] = { /* 0x82197fc */
DEBUGINFO,
SELECT_MAP(167),
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs167_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs167_g1_s0_station_sref_script }; /* 0x821986c */
static const struct ScriptCommand s_gs167_g2_s0_station_sref_script[] = { /* 0x8219878 */
DEBUGINFO,
SELECT_MAP(167),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(24),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0000, 0x00000021, 0x00000000, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+And so, $n0's\n#+harrowing journey continued.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Seeking refuge in\n#+even harsher places...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+They fled north.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+They crossed row upon\n#+row of mountains...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Forded fetid swamps...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Scaled frozen cliffs...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Till finally, $n0's tiny team\n#+arrived in a world of snow...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+A frigid wasteland of\n#+driving blizzards.") },
BGM_FADEOUT(120),
{ 0xe0, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs167_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs167_g2_s0_station_sref_script }; /* 0x8219b4c */
static const struct ScriptCommand s_gs167_g2_s0_eff0_script[] = { /* 0x8219b58 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x23, 0x00, 0x005a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs167_g2_s0_lives0_dlg0[] = { /* 0x8219c28 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000022, 0x00000000, NULL },
WAIT(80),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
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.")),
VARIANT(/* == */ 3, _(" Pant, pant...\nWe walked a lot, didn't we?")),
VARIANT(/* == */ 3, _(" I'm tired.\nLet's get a little rest.")),
VARIANT_DEFAULT(_(" Pant, pant...\nWe sure walked a lot.")),
VARIANT_DEFAULT(_(" I'm bushed.\nLet's rest up.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Haaah!\nThe view's great here.")),
VARIANT_DEFAULT(_(" Mmm...\nThe view's fantastic.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Oh, hey!\n$n0, you have to see this!")),
VARIANT_DEFAULT(_(" Oh, look!\n$n0, look over there!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Look at that.\nSee how small Mt. Blaze looks?")),
VARIANT(/* == */ 1, _(" We sure came a long way...")),
VARIANT_DEFAULT(_(" See how small Mt. Blaze\nlooks from here?")),
VARIANT_DEFAULT(_(" We've come a really long\nway, haven't we?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#WHey, $n0.")),
VARIANT(/* == */ 3, _(" ............#WUm, $n0?")),
VARIANT_DEFAULT(_(" ............#W$n0.")),
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You remember how tough it\nwas getting over Mt. Blaze, right?")),
VARIANT(/* == */ 1, _(" I don't think many Pokémon\ncan get through there.")),
VARIANT(/* == */ 1, _(" And, after that, we\nreally went at it hard to get here.")),
VARIANT(/* == */ 1, _(" You know what I really\nthink?")),
VARIANT(/* == */ 3, _(" Wasn't it hard getting over\nMt. Blaze?")),
VARIANT(/* == */ 3, _(" I doubt that many Pokémon\nwill be able to get through it.")),
VARIANT(/* == */ 3, _(" And it wasn't easy coming\nthis far after that mountain.")),
VARIANT(/* == */ 3, _(" Do you want to know what\nI think?")),
VARIANT_DEFAULT(_(" Do you remember how hard\nit was to get across Mt. Blaze?")),
VARIANT_DEFAULT(_(" I don't think too many\nPokémon can get through there.")),
VARIANT_DEFAULT(_(" And then we gave it our\nall to get out here.")),
VARIANT_DEFAULT(_(" Do you know what I'm\nthinking?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, -0x00000002, 0x00000000, NULL },
ASK3_VAR(FALSE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" Maybe there aren't any more\nPokémon that can chase us all the way\nhere.")),
VARIANT(/* == */ 3, _(" Do you think, maybe, that no\nPokémon will be able to get to us here?")),
VARIANT_DEFAULT(_(" We've come so far, maybe\nthere aren't any more Pokémon that can\nget to us.")),
CHOICE(/* label */ 2, _("No. There are others.")),
CHOICE(/* label */ 3, _("You're right. No one can get us, hahaha...")),
LABEL(2), /* = 0x02 */
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(455),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What?#W There are others?")),
VARIANT(/* == */ 1, _(" Who might they be?")),
VARIANT_DEFAULT(_(" Oh?#W There's someone else?")),
VARIANT_DEFAULT(_(" Well, who do you mean?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...#WOh, right.#W\nAlakazam's still out there.")),
VARIANT(/* == */ 1, _(" Their team should be able\nto get here...")),
VARIANT_DEFAULT(_(" ...#WOh, I get it.#W\nThere's Alakazam.")),
VARIANT_DEFAULT(_(" You're right.\nAlakazam's team should be able to get\nhere.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(4),
LABEL(3), /* = 0x03 */
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
{ 0x2e, 0x03, 0x0001, 0x0000000b, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I knew it!\nI knew you'd say that too, $n0!")),
VARIANT_DEFAULT(_(" I thought so!\nYou think so too, $n0, right?!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yeah, you're right.\nThere can't be anyone else.\nHahahahaha.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" All right!\nWe can say good-bye to living like\nfugitives.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" We don't have to keep\nrunning away anymore!\nHahahahaha.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hahahaha...#W Haha...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ..................#W\nThis is no good, $n0.")),
VARIANT(/* == */ 1, _(" We forgot about some\ntough customers.")),
VARIANT(/* == */ 1, _(" Alakazam.#W\nHis team won't drop the chase ever.")),
VARIANT_DEFAULT(_(" ........................#W\nIt's no good, $n0.")),
VARIANT_DEFAULT(_(" We've forgotten some\ntough customers.")),
VARIANT_DEFAULT(_(" It's Alakazam's team.#W\nThey'll keep chasing us wherever we go.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(4),
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
LABEL(4), /* = 0x04 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We're not out of this yet.\nLet's get going.")),
VARIANT(/* == */ 1, _(" We'd better go somewhere\nnobody can get to.\nThat'd be best.")),
VARIANT_DEFAULT(_(" Yup! We don't have a choice.\nWe have to keep going.")),
VARIANT_DEFAULT(_(" I think we need to go\nsomewhere no one else can get to.")),
{ 0x2e, 0x15, 0x0001, 0x00000009, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's knuckle down and keep\ngoing.")),
VARIANT_DEFAULT(_(" Let's be positive and keep\nmoving.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Huh?#W What's the matter?\nAren't you coming, $n0?")),
VARIANT(/* == */ 3, _(" Oh?#W What's wrong?\nAren't we going, $n0?")),
VARIANT_DEFAULT(_(" Huh?#W What's the matter?\nAren't you coming, $n0?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x000b, 0x00000007, 0x00000000, NULL },
WAIT(30),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...#WWhat?#W\nAren't I tired, you're asking?")),
VARIANT(/* == */ 1, _(" We're being chased!\nWe can't rest.")),
VARIANT(/* == */ 1, _(" And...#W\nI told you, didn't I?")),
VARIANT(/* == */ 1, _(" I said I'd go with you,\n$n0.")),
VARIANT(/* == */ 3, _(" ...#WPardon?#W\nAm I tired?")),
VARIANT(/* == */ 3, _(" They're trying to catch us.\nWe don't have time to rest.")),
VARIANT(/* == */ 3, _(" And...#W\nRemember what I said?")),
VARIANT(/* == */ 3, _(" I said I would go with\nyou, $n0.")),
VARIANT_DEFAULT(_(" ...#WHuh?#W\nAm I tired?")),
VARIANT_DEFAULT(_(" They're chasing us down.\nWe can't afford to rest.\n")),
VARIANT_DEFAULT(_(" And...#W\nI told you already.")),
VARIANT_DEFAULT(_(" I said I would go with\nyou, $n0.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...Don't look that way\nat me!\nI'm good. I'm good!")),
VARIANT(/* == */ 1, _(" Let's roll, $n0!\nI'll go with you wherever you go!")),
VARIANT(/* == */ 3, _(" ...Oh, please don't look\nlike that.\nHonest, I'm fine.")),
VARIANT(/* == */ 3, _(" Let's go, $n0!\nI'll always stick with you!")),
VARIANT_DEFAULT(_(" ...Oh, come on.\nNo need for that long face.\nI'm fine.")),
VARIANT_DEFAULT(_(" Let's go, $n0!\nI'll go wherever you go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs167_g2_s0_lives1_dlg0[] = { /* 0x821b5d4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(10),
{ 0x6b, 0x00, 0x0099, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x10, 0x0099, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
WAIT(15),
{ 0x91, 0x04, 0x000b, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 1),
LABEL(0), /* = 0x00 */
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(30),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
LABEL(1), /* = 0x01 */
{ 0x54, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
WAIT(160),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000004, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs167_g2_s0_lives[] = { /* 0x821b904 */
/* 0 */ { 0, 6, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs167_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 31, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs167_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs167_g1_s0_effs[] = { /* 0x821b934 */
/* 0 */ { 0, 0, 1, 1, { 16, 8, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs167_g2_s0_effs[] = { /* 0x821b940 */
/* 0 */ { 0, 0, 1, 1, { 16, 8, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs167_g2_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x821b94c */
&s_gs167_g0_s0_station_sref,
&s_gs167_g1_s0_station_sref,
&s_gs167_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs167_g0_sectors[] = { /* 0x821b958 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs167_g1_sectors[] = { /* 0x821b980 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs167_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs167_g2_sectors[] = { /* 0x821b9a8 */
{ LPARRAY(s_gs167_g2_s0_lives), 0,NULL, LPARRAY(s_gs167_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs167_groups[] = { /* 0x821b9d0 */
{ LPARRAY(s_gs167_g0_sectors) },
{ LPARRAY(s_gs167_g1_sectors) },
{ LPARRAY(s_gs167_g2_sectors) },
};
static const struct GroundLink s_gs167_links[] = { /* 0x821b9e8 */
/* link 0 */ { { /*x*/ 16, /*y*/ 37, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 14, /*y*/ 38, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 18, /*y*/ 38, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 12, /*y*/ 40, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 4 */ { { /*x*/ 1, /*y*/ 40, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs167 = { LPARRAY(s_gs167_groups), s_gs167_links }; /* 0x821ba10 */

View File

@@ -0,0 +1,338 @@
static const struct ScriptCommand s_gs168_g0_s0_station_sref_script[] = { /* 0x821ba24 */
DEBUGINFO,
SELECT_MAP(168),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs168_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs168_g0_s0_station_sref_script }; /* 0x821ba90 */
static const struct ScriptCommand s_gs168_g1_s0_station_sref_script[] = { /* 0x821ba9c */
DEBUGINFO,
SELECT_MAP(168),
SELECT_WEATHER(-1),
SELECT_ENTITIES(-1, 0),
BGM_FADEIN(120, 36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs168_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs168_g1_s0_station_sref_script }; /* 0x821bb2c */
static const struct ScriptCommand s_gs168_g1_s0_eff0_script[] = { /* 0x821bb38 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0100, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs168_g1_s0_lives0_dlg0[] = { /* 0x821bbf8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(80),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...Brr... It's cold!#W") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(8),
FANFARE_PLAY2(480),
{ 0x2e, 0x02, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hachoo!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(8),
{ 0x91, 0x04, 0x0001, 0x00000007, 0x00000000, NULL },
WAIT(24),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yuck...#W\nMy nose is running, and it's freezing.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ..................")),
VARIANT(/* == */ 1, _(" This is one barren place...")),
VARIANT(/* == */ 1, _(" That snow's deep.")),
VARIANT(/* == */ 1, _(" There haven't been any\nPokémon around for a while, either.")),
VARIANT(/* == */ 1, _(" Maybe there isn't anyone\nelse out here but us.")),
VARIANT_DEFAULT(_(" ..................")),
VARIANT_DEFAULT(_(" Isn't this one lonely place?")),
VARIANT_DEFAULT(_(" See how deep the snow is.")),
VARIANT_DEFAULT(_(" I haven't seen any other\nPokémon for a while, either.")),
VARIANT_DEFAULT(_(" Maybe we're all alone here.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Huh? What's up?")),
VARIANT_DEFAULT(_(" Oh? What's the matter?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ........................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0c, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wh-what's that?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(40),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...#WWhat was that?#W\nIt looked like a Pokémon, but...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Was I seeing things?#W\nNo, that can't be right.#W\nI'm sure there was someone there...")),
VARIANT_DEFAULT(_(" Did I imagine that?#W\nNo, I don't think so.#W\nI'm sure there was somebody there.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I wonder what they were\ndoing in this lonely place?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Well, thinking about it\nisn't going to help.#W\nLet's keep moving.")),
VARIANT_DEFAULT(_(" I guess thinking about it\nwon't help us.#W\nWe should keep moving.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(64),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs168_g1_s0_lives1_dlg0[] = { /* 0x821c620 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000018, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002f, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0x56, 0x00, 0x0000, 0x0000005b, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000058, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x0c, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs168_g1_s0_lives2_dlg0[] = { /* 0x821c8e0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0x54, 0x00, 0x0020, 0x00000000, 0x00000000, NULL },
WAIT(9),
FANFARE_PLAY2(478),
{ 0x89, 0x50, 0x0400, 0x00000002, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs168_g2_s0_station_sref_script[] = { /* 0x821c980 */
DEBUGINFO,
SELECT_MAP(168),
SELECT_WEATHER(-1),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs168_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs168_g2_s0_station_sref_script }; /* 0x821ca10 */
static const struct ScriptCommand s_gs168_g2_s0_lives0_dlg0[] = { /* 0x821ca1c */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000b, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wow!")),
VARIANT_DEFAULT(_(" Oh!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0!\nCheck that out!")),
VARIANT_DEFAULT(_(" $n0! Look!")),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" See that?#W\nThose trees are frozen!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs168_g2_s0_lives1_dlg0[] = { /* 0x821cc58 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000058, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs168_g1_s0_lives[] = { /* 0x821cd58 */
/* 0 */ { 0, 2, 0, 0, { 64, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs168_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 64, 25, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs168_g1_s0_lives1_dlg0,
} },
/* 2 */ { 83, 6, 0, 0, { 82, 22, 0, CPOS_HALFTILE }, {
[0] = s_gs168_g1_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs168_g2_s0_lives[] = { /* 0x821cda0 */
/* 0 */ { 0, 2, 0, 0, { 78, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs168_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 81, 25, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs168_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs168_g1_s0_effs[] = { /* 0x821cdd0 */
/* 0 */ { 0, 0, 1, 1, { 64, 24, 0, CPOS_HALFTILE }, s_gs168_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs168_g2_s0_effs[] = { /* 0x821cddc */
/* 0 */ { 0, 0, 1, 1, { 79, 24, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x821cde8 */
&s_gs168_g0_s0_station_sref,
&s_gs168_g1_s0_station_sref,
&s_gs168_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs168_g0_sectors[] = { /* 0x821cdf4 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs168_g1_sectors[] = { /* 0x821ce1c */
{ LPARRAY(s_gs168_g1_s0_lives), 0,NULL, LPARRAY(s_gs168_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs168_g2_sectors[] = { /* 0x821ce44 */
{ LPARRAY(s_gs168_g2_s0_lives), 0,NULL, LPARRAY(s_gs168_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs168_groups[] = { /* 0x821ce6c */
{ LPARRAY(s_gs168_g0_sectors) },
{ LPARRAY(s_gs168_g1_sectors) },
{ LPARRAY(s_gs168_g2_sectors) },
};
static const struct GroundLink s_gs168_links[] = { /* 0x821ce84 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs168 = { LPARRAY(s_gs168_groups), s_gs168_links }; /* 0x821ce8c */

View File

@@ -0,0 +1,91 @@
static const struct ScriptCommand s_gs169_g0_s0_station_sref_script[] = { /* 0x821cea0 */
DEBUGINFO,
SELECT_MAP(169),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs169_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs169_g0_s0_station_sref_script }; /* 0x821cf0c */
static const struct ScriptCommand s_gs169_g1_s0_station_sref_script[] = { /* 0x821cf18 */
DEBUGINFO,
SELECT_MAP(169),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs169_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs169_g1_s0_station_sref_script }; /* 0x821cf98 */
static const struct ScriptCommand s_gs169_g1_s0_lives0_dlg0[] = { /* 0x821cfa4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
WAIT(90),
{ 0x2e, 0x02, 0x0001, 0x0000000b, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wow!#W\nThe snow is like frozen powder!") },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" It looks pretty, but...#W\nIt must be harsh there...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs169_g1_s0_lives1_dlg0[] = { /* 0x821d0e4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs169_g1_s0_lives[] = { /* 0x821d124 */
/* 0 */ { 0, 4, 0, 0, { 15, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs169_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 19, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs169_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs169_g1_s0_effs[] = { /* 0x821d154 */
/* 0 */ { 0, 0, 1, 1, { 17, 18, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x821d160 */
&s_gs169_g0_s0_station_sref,
&s_gs169_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs169_g0_sectors[] = { /* 0x821d168 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs169_g1_sectors[] = { /* 0x821d190 */
{ LPARRAY(s_gs169_g1_s0_lives), 0,NULL, LPARRAY(s_gs169_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs169_groups[] = { /* 0x821d1b8 */
{ LPARRAY(s_gs169_g0_sectors) },
{ LPARRAY(s_gs169_g1_sectors) },
};
static const struct GroundLink s_gs169_links[] = { /* 0x821d1c8 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs169 = { LPARRAY(s_gs169_groups), s_gs169_links }; /* 0x821d1d0 */

View File

@@ -0,0 +1,485 @@
static const struct ScriptCommand s_gs170_g0_s0_station_sref_script[] = { /* 0x821d1e4 */
DEBUGINFO,
SELECT_MAP(170),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs170_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs170_g0_s0_station_sref_script }; /* 0x821d250 */
static const struct ScriptCommand s_gs170_g1_s0_station_sref_script[] = { /* 0x821d25c */
DEBUGINFO,
SELECT_MAP(170),
SELECT_ENTITIES(-1, 0),
BGM_FADEIN(30, 36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(506),
{ 0x28, 0x01, 0x0005, 0x00000010, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs170_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs170_g1_s0_station_sref_script }; /* 0x821d2ec */
static const struct ScriptCommand s_gs170_g1_s0_lives0_dlg0[] = { /* 0x821d2f8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
WAIT(120),
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(This icy mountain path seems to go\non forever...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(We've walked a long way here...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("($n1 looks exhausted, too...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(We've been running all this time out\nof desperation...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(What's in store for us ahead?)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Are we really doing the right thing?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x14, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0001, 0x00000000, 0x00000002, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Brr... It's too cold!#W\nThere's only snow around us now.")),
VARIANT(/* == */ 1, _(" The scenery hasn't changed\nat all for a while now...")),
VARIANT(/* == */ 1, _(" Are we even getting\nsomewhere?")),
VARIANT_DEFAULT(_(" Brr... This is too cold!#W\nThere's nothing but snow now.")),
VARIANT_DEFAULT(_(" The scenery's been\nthe same for a while...")),
VARIANT_DEFAULT(_(" I wonder if we're really\nmaking progress...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...Hey, $n0?\nYou know what I'm thinking...?")),
VARIANT(/* == */ 1, _(" I think we've finally reached\na place where there's no one else but us.")),
VARIANT(/* == */ 1, _(" I also have this feeling\nthere's nothing ahead of us here...")),
VARIANT(/* == */ 1, _(" And, I'm feeling pretty\nbeat...")),
VARIANT(/* == */ 3, _(" ...Um, $n0?\nI was thinking...")),
VARIANT(/* == */ 3, _(" It looks like we've finally\nreached somewhere that's deserted...")),
VARIANT(/* == */ 3, _(" I also have a feeling that\nthere isn't anything ahead...")),
VARIANT(/* == */ 3, _(" And, I am pretty tired...")),
VARIANT_DEFAULT(_(" ...Hey, $n0?\nI was thinking...")),
VARIANT_DEFAULT(_(" I think we've come to\na place that's empty except for us...")),
VARIANT_DEFAULT(_(" I have this feeling there's\nnothing ahead of here, even if we keep\nmoving...")),
VARIANT_DEFAULT(_(" And I'm getting exhausted...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
ASK3_VAR( TRUE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" We two...\nWhat's going to happen to us?")),
VARIANT(/* == */ 3, _(" The two of us...\nWhat's going to happen to us?")),
VARIANT_DEFAULT(_(" We two...\nWhat's going to happen to us?")),
CHOICE(/* label */ 3, _("Don't worry. We'll be fine!")),
CHOICE(/* label */ 4, _("I don't know...")),
LABEL(3), /* = 0x03 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0001, 0x00000000, 0x00000002, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#W\nYeah, you're right.")),
VARIANT(/* == */ 1, _(" We came out here.\nThere's no point wondering about it.")),
VARIANT(/* == */ 1, _(" Sorry, $n0.#W\nI got to feeling sorry for myself.")),
VARIANT(/* == */ 1, _(" $n0, I came out\nhere because I believed in you.")),
VARIANT(/* == */ 1, _(" And that's not changing.\nI'll keep believing in you, $n0...")),
VARIANT(/* == */ 3, _(" ............#W\nYou're right.")),
VARIANT(/* == */ 3, _(" There isn't any point in\nwondering about what we did.\nNot after all this.")),
VARIANT(/* == */ 3, _(" Sorry, $n0.#W\nI was just getting down on myself.")),
VARIANT(/* == */ 3, _(" $n0, I believed in\nyou, and that's what got me this far.")),
VARIANT(/* == */ 3, _(" And that's not changing.\nI have faith in you, $n0...")),
VARIANT_DEFAULT(_(" ............#W\nSure, that's right.")),
VARIANT_DEFAULT(_(" There isn't any point in\nwondering about what might happen.\nNot after coming this far.")),
VARIANT_DEFAULT(_(" Sorry, $n0.#W\nI was just feeling sorry for myself.")),
VARIANT_DEFAULT(_(" I have faith in you, \n$n0.\nThat's what brought me here.")),
VARIANT_DEFAULT(_(" And that's not changing.\nI still have faith in you, $n0...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'll go wherever you go.")),
VARIANT(/* == */ 3, _(" I'll go with you, always.")),
VARIANT_DEFAULT(_(" I'll keep going wherever\nyou go.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(5),
LABEL(4), /* = 0x04 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0001, 0x00000000, 0x00000002, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" .........#WSorry.#W\nI shouldn't have said that.\nIt doesn't help scaring you like that.")),
VARIANT(/* == */ 1, _(" We came out here.\nThere's no point wondering about it.")),
VARIANT(/* == */ 1, _(" Even if we don't know\nwhat's ahead...#W\nWe just have to keep going.")),
VARIANT(/* == */ 1, _(" Don't worry!\nThere's got to be something ahead.")),
VARIANT(/* == */ 1, _(" $n0, I came out\nhere because I believed in you.")),
VARIANT(/* == */ 1, _(" And that's not changing.\nI'll keep believing in you, $n0...")),
VARIANT(/* == */ 3, _(" .........#WI'm sorry.#W\nI shouldn't have said anything to bring\nyou down...")),
VARIANT(/* == */ 3, _(" There isn't any point in\nwondering about what we did.\nNot after all this.")),
VARIANT(/* == */ 3, _(" Even though we don't know\nwhat's ahead...#W\nWe'll find out if we keep moving!")),
VARIANT(/* == */ 3, _(" Don't worry!\nThere's got to be something ahead.")),
VARIANT(/* == */ 3, _(" $n0, I believed in\nyou, and that's what got me this far.")),
VARIANT(/* == */ 3, _(" And that's not changing.\nI have faith in you, $n0...")),
VARIANT_DEFAULT(_(" .........#WI'm sorry.#W\nI said something stupid to frighten you...")),
VARIANT_DEFAULT(_(" There isn't any point in\nwondering about what might happen.\nNot after coming this far.")),
VARIANT_DEFAULT(_(" Even though we don't know\nwhat's ahead...#W\nWe'll only know by pressing on!")),
VARIANT_DEFAULT(_(" Don't worry!\nThere's got to be something ahead.")),
VARIANT_DEFAULT(_(" I have faith in you, \n$n0.\nThat's what brought me here.")),
VARIANT_DEFAULT(_(" And that's not changing.\nI still have faith in you, $n0...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'll go wherever you go.")),
VARIANT(/* == */ 3, _(" I'll go with you, always.")),
VARIANT_DEFAULT(_(" I'll keep going wherever\nyou go.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
LABEL(5), /* = 0x05 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Yes...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("($n1 trusts me without any\ndoubt.)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(I can't afford to be indecisive.)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(I have to believe in myself more.)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
BGM_FADEOUT(30),
FANFARE_PLAY2(476),
{ 0x28, 0x01, 0x0007, 0x00000004, 0x00806040, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x28, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x27, 0x01, 0x0007, 0x0000000c, 0x00806040, NULL },
{ 0x54, 0x00, 0x0300, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x15, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(...#WWh-what?#W What was that?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(476),
{ 0x28, 0x01, 0x0007, 0x00000004, 0x00806040, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x28, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x27, 0x01, 0x0007, 0x0000000c, 0x00806040, NULL },
{ 0x54, 0x00, 0x0300, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(...D-dizzy?#W Or what?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0001, 0x00000000, 0x00000002, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Huh?#W What's the matter?\n$n0?")),
VARIANT_DEFAULT(_(" Huh?#W Is something wrong?\n$n0?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(476),
{ 0x28, 0x01, 0x0007, 0x00000004, 0x00806040, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x28, 0x01, 0x0007, 0x00000008, 0x00806040, NULL },
{ 0x27, 0x01, 0x0007, 0x0000000c, 0x00806040, NULL },
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00000000, NULL },
{ 0x54, 0x00, 0x0300, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...Finally.") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...Finally, you have arrived...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Someone...#W\nSomeone is talking to me...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("($n1...?#W No.\nThis voice isn't $n1...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(This voice...#W\nI've heard it somewhere...)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(477),
SELECT_ENTITIES(-1, 1),
{ 0x27, 0x01, 0x0005, 0x00000030, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Finally...") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" You have arrived...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g1_s0_lives1_dlg0[] = { /* 0x821ec08 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000005d, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(QUESTION_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g1_s0_lives2_dlg0[] = { /* 0x821ed08 */
DEBUGINFO,
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g1_s1_lives0_dlg0[] = { /* 0x821ed78 */
DEBUGINFO,
{ 0x54, 0x00, 0x001f, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs170_g2_s0_station_sref_script[] = { /* 0x821edd8 */
DEBUGINFO,
SELECT_MAP(170),
SELECT_ENTITIES(-1, 0),
{ 0x27, 0x00, 0x0005, 0x00000020, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x01, 0x0078, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs170_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs170_g2_s0_station_sref_script }; /* 0x821ee58 */
static const struct ScriptCommand s_gs170_g2_s0_lives0_dlg0[] = { /* 0x821ee64 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I am so glad.#W\nFinally, we get to meet.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("...You're...#W What...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0001, 0x00000000, 0x00000002, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, $n0.\nWhat's up with you?")),
VARIANT(/* == */ 1, _(" Talking to yourself like\nthat...")),
VARIANT_DEFAULT(_(" $n0, is something\nthe matter?")),
VARIANT_DEFAULT(_(" Why are you talking to\nyourself?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
WAIT(64),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(16),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I cannot be seen by others.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I am visible only to you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(64),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" A little farther ahead...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There is a jagged mountain\nrange topped by #CDMt. Freeze#R.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Inside its peak...#W\nNinetales lives.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0000, 0x0000000c, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("...Ninetales?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Ninetales awaits your\narrival.") },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Beware...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("Oh! W-wait...!") },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
WAIT(60),
{ 0x2e, 0x15, 0x0000, 0x00000005, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("..................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, $n0!\nCome on, $n0!")),
VARIANT(/* == */ 1, _(" What were you doing?#W\nWhat just happened to you...?")),
VARIANT_DEFAULT(_(" Hey, $n0!\n$n0!")),
VARIANT_DEFAULT(_(" What's the matter?#W\nWhat happened...?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g2_s0_lives1_dlg0[] = { /* 0x821f534 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g2_s0_lives2_dlg0[] = { /* 0x821f5e4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs170_g2_s0_lives3_dlg0[] = { /* 0x821f684 */
DEBUGINFO,
{ 0x54, 0x00, 0x001f, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x001f, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 0),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct GroundLivesData s_gs170_g1_s0_lives[] = { /* 0x821f804 */
/* 0 */ { 0, 2, 0, 0, { 100, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 103, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g1_s0_lives1_dlg0,
} },
/* 2 */ { 83, 2, 0, 0, { 96, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g1_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs170_g1_s1_lives[] = { /* 0x821f84c */
/* 0 */ { 82, 6, 0, 0, { 106, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g1_s1_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs170_g2_s0_lives[] = { /* 0x821f864 */
/* 0 */ { 0, 2, 0, 0, { 100, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 5, 0, 0, { 103, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g2_s0_lives1_dlg0,
} },
/* 2 */ { 83, 3, 0, 0, { 96, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g2_s0_lives2_dlg0,
} },
/* 3 */ { 82, 6, 0, 0, { 106, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs170_g2_s0_lives3_dlg0,
} },
};
static const struct GroundEffectData s_gs170_g1_s0_effs[] = { /* 0x821f8c4 */
/* 0 */ { 0, 0, 1, 1, { 103, 15, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs170_g2_s0_effs[] = { /* 0x821f8d0 */
/* 0 */ { 0, 0, 1, 1, { 103, 15, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x821f8dc */
&s_gs170_g0_s0_station_sref,
&s_gs170_g1_s0_station_sref,
&s_gs170_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs170_g0_sectors[] = { /* 0x821f8e8 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs170_g1_sectors[] = { /* 0x821f910 */
{ LPARRAY(s_gs170_g1_s0_lives), 0,NULL, LPARRAY(s_gs170_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs170_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs170_g2_sectors[] = { /* 0x821f960 */
{ LPARRAY(s_gs170_g2_s0_lives), 0,NULL, LPARRAY(s_gs170_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs170_groups[] = { /* 0x821f988 */
{ LPARRAY(s_gs170_g0_sectors) },
{ LPARRAY(s_gs170_g1_sectors) },
{ LPARRAY(s_gs170_g2_sectors) },
};
static const struct GroundLink s_gs170_links[] = { /* 0x821f9a0 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs170 = { LPARRAY(s_gs170_groups), s_gs170_links }; /* 0x821f9a8 */

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,73 @@
static const struct ScriptCommand s_gs172_g0_s0_station_sref_script[] = { /* 0x82298b4 */
DEBUGINFO,
SELECT_MAP(172),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs172_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs172_g0_s0_station_sref_script }; /* 0x8229920 */
static const struct ScriptCommand s_gs172_g1_s0_station_sref_script[] = { /* 0x822992c */
DEBUGINFO,
SELECT_MAP(172),
SELECT_ENTITIES(-1, 0),
{ 0x2d, 0x09, 0x0000, 0x00000022, 0x00000000, NULL },
BGM_SWITCH(22),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" It's a huge tower of\nclouds...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs172_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs172_g1_s0_station_sref_script }; /* 0x8229a20 */
static const struct ScriptCommand s_gs172_g1_s0_eff0_script[] = { /* 0x8229a2c */
DEBUGINFO,
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0xe0, 0x004c, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundEffectData s_gs172_g1_s0_effs[] = { /* 0x8229a9c */
/* 0 */ { 0, 0, 1, 1, { 18, 19, 0, CPOS_HALFTILE }, s_gs172_g1_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8229aa8 */
&s_gs172_g0_s0_station_sref,
&s_gs172_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs172_g0_sectors[] = { /* 0x8229ab0 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs172_g1_sectors[] = { /* 0x8229ad8 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs172_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs172_groups[] = { /* 0x8229b00 */
{ LPARRAY(s_gs172_g0_sectors) },
{ LPARRAY(s_gs172_g1_sectors) },
};
static const struct GroundLink s_gs172_links[] = { /* 0x8229b10 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs172 = { LPARRAY(s_gs172_groups), s_gs172_links }; /* 0x8229b18 */

View File

@@ -0,0 +1,161 @@
static const struct ScriptCommand s_gs173_g0_s0_station_sref_script[] = { /* 0x8229b2c */
DEBUGINFO,
SELECT_MAP(173),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs173_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs173_g0_s0_station_sref_script }; /* 0x8229b98 */
static const struct ScriptCommand s_gs173_g1_s0_station_sref_script[] = { /* 0x8229ba4 */
DEBUGINFO,
SELECT_MAP(173),
SELECT_ENTITIES(-1, -1),
WAIT(60),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000001, NULL },
BGM_SWITCH(19),
FANFARE_PLAY2(508),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
WAIT(240),
FANFARE_FADEOUT2(60, 508),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs173_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs173_g1_s0_station_sref_script }; /* 0x8229c74 */
static const struct ScriptCommand s_gs173_g1_s0_eff0_script[] = { /* 0x8229c80 */
DEBUGINFO,
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs173_g2_s0_station_sref_script[] = { /* 0x8229cd0 */
DEBUGINFO,
SELECT_MAP(173),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(26),
FANFARE_PLAY2(508),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000001, NULL },
{ 0x22, 0x01, 0x0010, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(210),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
FANFARE_FADEOUT2(30, 508),
RET,
};
static const struct ScriptRef s_gs173_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs173_g2_s0_station_sref_script }; /* 0x8229d90 */
static const struct ScriptCommand s_gs173_g2_s0_eff0_script[] = { /* 0x8229d9c */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x30, 0x0300, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs173_g3_s0_station_sref_script[] = { /* 0x8229e1c */
DEBUGINFO,
SELECT_MAP(173),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(26),
{ 0x97, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x00, 0x0005, 0x00000010, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(20),
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(30),
{ 0x28, 0x01, 0x0005, 0x0000002d, 0x00ffffff, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs173_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs173_g3_s0_station_sref_script }; /* 0x8229f4c */
static const struct ScriptCommand s_gs173_g3_s0_eff0_script[] = { /* 0x8229f58 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x18, 0x0400, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs173_g3_s0_eff1_script[] = { /* 0x8229fd8 */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x00000135, 0x00000000, NULL },
HALT,
};
static const struct GroundEffectData s_gs173_g1_s0_effs[] = { /* 0x822a008 */
/* 0 */ { 0, 0, 1, 1, { 17, 41, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs173_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs173_g2_s0_effs[] = { /* 0x822a014 */
/* 0 */ { 0, 0, 1, 1, { 17, 41, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs173_g2_s0_eff0_script },
};
static const struct GroundEffectData s_gs173_g3_s0_effs[] = { /* 0x822a020 */
/* 0 */ { 0, 0, 1, 1, { 17, 36, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs173_g3_s0_eff0_script },
/* 1 */ { 3, 0, 1, 1, { 18, 33, 0, CPOS_HALFTILE }, s_gs173_g3_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822a038 */
&s_gs173_g0_s0_station_sref,
&s_gs173_g1_s0_station_sref,
&s_gs173_g2_s0_station_sref,
&s_gs173_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs173_g0_sectors[] = { /* 0x822a048 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs173_g1_sectors[] = { /* 0x822a070 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs173_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs173_g2_sectors[] = { /* 0x822a098 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs173_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs173_g3_sectors[] = { /* 0x822a0c0 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs173_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs173_groups[] = { /* 0x822a0e8 */
{ LPARRAY(s_gs173_g0_sectors) },
{ LPARRAY(s_gs173_g1_sectors) },
{ LPARRAY(s_gs173_g2_sectors) },
{ LPARRAY(s_gs173_g3_sectors) },
};
static const struct GroundLink s_gs173_links[] = { /* 0x822a108 */
/* link 0 */ { { /*x*/ 18, /*y*/ 6, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs173 = { LPARRAY(s_gs173_groups), s_gs173_links }; /* 0x822a110 */

View File

@@ -0,0 +1,220 @@
static const struct ScriptCommand s_gs174_g0_s0_station_sref_script[] = { /* 0x822a124 */
DEBUGINFO,
SELECT_MAP(174),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs174_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs174_g0_s0_station_sref_script }; /* 0x822a190 */
static const struct ScriptCommand s_gs174_g1_s0_station_sref_script[] = { /* 0x822a19c */
DEBUGINFO,
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
SELECT_MAP(174),
SELECT_ENTITIES(-1, -1),
BGM_STOP,
{ 0x27, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(150),
{ 0x28, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
WAIT(180),
RET,
};
static const struct ScriptRef s_gs174_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs174_g1_s0_station_sref_script }; /* 0x822a24c */
static const struct ScriptCommand s_gs174_g1_s0_lives0_dlg0[] = { /* 0x822a258 */
DEBUGINFO,
{ 0x54, 0x00, 0x0034, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEIN(30, 37),
WAIT(60),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("......") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("............") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("........................") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("...Is this...\na dream...?") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("........................") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("No...#W\nThis is no dream...") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("Yes...#W\nThe star's explosion swallowed me...") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("And I'm now adrift...#W\nas a spirit...") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("..................") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("What's going to happen...?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(485),
{ 0x28, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
WAIT(30),
SELECT_LIVES(-1, 1),
{ 0x27, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(............)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(...This shadow...#W\n$n4...)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Keke! $n0!#W\nDidn't take much to put you down!#W\nServes you right!") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Kekeke!\nNow, what to do with you?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0004, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" I know!") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" I'll drag you into the dark\nworld. That'll do it.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0033, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x36, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0000, 0x00000005, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(............)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Gengar is dragging me...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(...#WGengar said...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(He would drag me into the dark\nworld...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(What is the dark world...?)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Am I going to be abandoned in a world\nI don't know?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0x2e, 0x14, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" ......") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" ............") },
{ 0x3b, 0x36, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0034, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0004, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" ..................#WHunh?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Darn it...\nI took the wrong path...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(......What?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" This isn't like me...#W\nI can't tell which way is which...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0f, 0x0004, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Keh! To heck with this.#W\nI'll just ditch you here...") },
{ 0x2e, 0x15, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" That's it. Good-bye to you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs174_g1_s1_lives0_dlg0[] = { /* 0x822abd8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0080, 0x00000010, 0x00000020, NULL },
{ 0x91, 0x08, 0x000a, 0x00000006, 0x00000000, NULL },
WAIT(60),
{ 0x91, 0x0a, 0x000a, 0x00000002, 0x00000000, NULL },
WAIT(45),
{ 0x54, 0x00, 0x001f, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x06, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x06, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x06, 0x000a, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x06, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x06, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x06, 0x000a, 0x00000002, 0x00000000, NULL },
WAIT(60),
{ 0x89, 0x10, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0099, 0x00000002, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs174_g1_s0_lives[] = { /* 0x822ae98 */
/* 0 */ { 0, 4, 0, 0, { 20, 11, 0, CPOS_HALFTILE }, {
[0] = s_gs174_g1_s0_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs174_g1_s1_lives[] = { /* 0x822aeb0 */
/* 0 */ { 91, 0, 0, 0, { 20, 7, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs174_g1_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs174_g1_s0_effs[] = { /* 0x822aec8 */
/* 0 */ { 0, 0, 1, 1, { 20, 12, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822aed4 */
&s_gs174_g0_s0_station_sref,
&s_gs174_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs174_g0_sectors[] = { /* 0x822aedc */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs174_g1_sectors[] = { /* 0x822af04 */
{ LPARRAY(s_gs174_g1_s0_lives), 0,NULL, LPARRAY(s_gs174_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs174_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs174_groups[] = { /* 0x822af54 */
{ LPARRAY(s_gs174_g0_sectors) },
{ LPARRAY(s_gs174_g1_sectors) },
};
static const struct GroundLink s_gs174_links[] = { /* 0x822af64 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs174 = { LPARRAY(s_gs174_groups), s_gs174_links }; /* 0x822af6c */

View File

@@ -0,0 +1,142 @@
static const struct ScriptCommand s_gs175_g0_s0_station_sref_script[] = { /* 0x822af80 */
DEBUGINFO,
SELECT_MAP(175),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs175_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs175_g0_s0_station_sref_script }; /* 0x822afdc */
static const struct ScriptCommand s_gs175_g1_s0_station_sref_script[] = { /* 0x822afe8 */
DEBUGINFO,
BGM_STOP,
WAIT(180),
SELECT_MAP(175),
SELECT_ENTITIES(-1, 0),
{ 0x3b, 0x36, 0x0000, -0x00000002, 0x00000000, NULL },
{ 0x22, 0x01, 0x00b4, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
WAIT(0),
{ 0x28, 0x01, 0x0001, 0x0000001e, 0x00ffffff, NULL },
WAIT(45),
RET,
LABEL(0), /* = 0x00 */
{ 0x28, 0x01, 0x0001, 0x0000001e, 0x00ffffff, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs175_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs175_g1_s0_station_sref_script }; /* 0x822b0e8 */
static const struct ScriptCommand s_gs175_g1_s0_eff1_script[] = { /* 0x822b0f4 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(40),
BGM_SWITCH(44),
WAIT(300),
{ 0x2b, 0x00, 0x0000, -0x000000c8, 0x0000003c, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(..................)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(What is this...?)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(I'm rising into the sky...)") },
{ 0x2b, 0x00, 0x0000, -0x000000be, 0x0000003c, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Is this my spirit...?)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(I wonder where I'm going?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x2b, 0x00, 0x0000, -0x0000006e, 0x0000003c, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(......!)") },
{ 0x2b, 0x00, 0x0000, -0x000000d2, 0x00000032, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Voices...#W\nI hear voices...)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs175_g2_s0_station_sref_script[] = { /* 0x822b2f4 */
DEBUGINFO,
SELECT_MAP(175),
SELECT_ENTITIES(-1, 0),
{ 0x3b, 0x36, 0x0000, -0x00000002, 0x00000000, NULL },
BGM_STOP,
{ 0x22, 0x01, 0x00b4, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
WAIT(170),
{ 0x28, 0x01, 0x0002, 0x0000003c, 0x00ffffff, NULL },
WAIT(90),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs175_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs175_g2_s0_station_sref_script }; /* 0x822b3c4 */
static const struct ScriptCommand s_gs175_g2_s0_eff1_script[] = { /* 0x822b3d0 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
BGM_SWITCH(45),
WAIT(60),
{ 0x2b, 0x00, 0x0000, 0x000000be, 0x000000be, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("\n#+I don't want to leave...") },
WAIT(100),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("\n#+I want to stay longer...") },
WAIT(100),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("\n#+With my invaluable...") },
WAIT(100),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("\n#+Irreplaceable friend...") },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundEffectData s_gs175_g1_s0_effs[] = { /* 0x822b584 */
/* 0 */ { 0, 0, 1, 1, { 21, 15, 0, CPOS_HALFTILE }, NULL },
/* 1 */ { 3, 4, 2, 1, { 22, 15, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs175_g1_s0_eff1_script },
};
static const struct GroundEffectData s_gs175_g2_s0_effs[] = { /* 0x822b59c */
/* 0 */ { 0, 0, 1, 1, { 21, 18, 0, CPOS_HALFTILE }, NULL },
/* 1 */ { 3, 4, 2, 1, { 22, 15, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs175_g2_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822b5b4 */
&s_gs175_g0_s0_station_sref,
&s_gs175_g1_s0_station_sref,
&s_gs175_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs175_g0_sectors[] = { /* 0x822b5c0 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs175_g1_sectors[] = { /* 0x822b5e8 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs175_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs175_g2_sectors[] = { /* 0x822b610 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs175_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs175_groups[] = { /* 0x822b638 */
{ LPARRAY(s_gs175_g0_sectors) },
{ LPARRAY(s_gs175_g1_sectors) },
{ LPARRAY(s_gs175_g2_sectors) },
};
static const struct GroundLink s_gs175_links[] = { /* 0x822b650 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs175 = { LPARRAY(s_gs175_groups), s_gs175_links }; /* 0x822b658 */

View File

@@ -0,0 +1,143 @@
static const struct ScriptCommand s_gs176_g0_s0_station_sref_script[] = { /* 0x822b66c */
DEBUGINFO,
BGM_STOP,
SELECT_MAP(176),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs176_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs176_g0_s0_station_sref_script }; /* 0x822b6d8 */
static const struct ScriptCommand s_gs176_g1_s0_station_sref_script[] = { /* 0x822b6e4 */
DEBUGINFO,
SELECT_MAP(176),
SELECT_ENTITIES(-1, 0),
{ 0x3b, 0x36, 0x0000, -0x00000002, 0x00000000, NULL },
{ 0x27, 0x01, 0x0001, 0x0000001e, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000078, 0x00ffffff, NULL },
WAIT(90),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x01, 0x0001, 0x0000000f, 0x00ffffff, NULL },
WAIT(90),
{ 0x3c, 0x2e, 0x0000, 0x00000000, 0x000000c8, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000001, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000002, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000003, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000004, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000005, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000006, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000007, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000008, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000009, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000a, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000b, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000c, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000d, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000e, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000000f, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000010, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000011, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000012, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000013, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000014, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000015, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000016, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000017, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000018, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x00000019, 0x000000b5, NULL },
WAIT(45),
{ 0x3c, 0x2e, 0x0000, 0x0000001a, 0x000000b5, NULL },
WAIT(120),
BGM_FADEOUT(330),
{ 0x23, 0x01, 0x0078, 0x00000000, 0x00000000, NULL },
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(210),
RET,
};
static const struct ScriptRef s_gs176_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs176_g1_s0_station_sref_script }; /* 0x822bb44 */
static const struct ScriptCommand s_gs176_g1_s0_eff1_script[] = { /* 0x822bb50 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0x2b, 0x00, 0x0000, 0x000000b4, 0x000000b4, NULL },
WAIT(60),
{ 0x39, 0x00, 0x005a, 0x00000000, 0x00000000, _("#+Your friend is heartbroken...") },
WAIT(80),
{ 0x39, 0x00, 0x005a, 0x00000000, 0x00000000, _("#+A true friend...\n#+A friend for life...") },
WAIT(80),
{ 0x39, 0x00, 0x005a, 0x00000000, 0x00000000, _("#+You finally realize it now...") },
WAIT(80),
{ 0x39, 0x00, 0x005a, 0x00000000, 0x00000000, _("#+If you wish...\n#+And wish very strongly...") },
WAIT(80),
{ 0x39, 0x00, 0x005a, 0x00000000, 0x00000000, _("#+Perhaps you will meet again.") },
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundEffectData s_gs176_g1_s0_effs[] = { /* 0x822bd4c */
/* 0 */ { 0, 0, 1, 1, { 21, 15, 0, CPOS_HALFTILE }, NULL },
/* 1 */ { 3, 4, 2, 1, { 22, 15, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs176_g1_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822bd64 */
&s_gs176_g0_s0_station_sref,
&s_gs176_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs176_g0_sectors[] = { /* 0x822bd6c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs176_g1_sectors[] = { /* 0x822bd94 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs176_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs176_groups[] = { /* 0x822bdbc */
{ LPARRAY(s_gs176_g0_sectors) },
{ LPARRAY(s_gs176_g1_sectors) },
};
static const struct GroundLink s_gs176_links[] = { /* 0x822bdcc */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs176 = { LPARRAY(s_gs176_groups), s_gs176_links }; /* 0x822bdd4 */

View File

@@ -0,0 +1,84 @@
static const struct ScriptCommand s_gs177_g0_s0_station_sref_script[] = { /* 0x822bde8 */
DEBUGINFO,
SELECT_MAP(177),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs177_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs177_g0_s0_station_sref_script }; /* 0x822be54 */
static const struct ScriptCommand s_gs177_g1_s0_station_sref_script[] = { /* 0x822be60 */
DEBUGINFO,
SELECT_MAP(177),
SELECT_ENTITIES(-1, -1),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe0, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
WAIT(240),
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
{ 0x38, 0x00, -0x0001, 0x00000000, 0x00000000, _("\n") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x23, 0x01, 0x0078, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0x2d, 0x09, 0x0000, 0x00000001, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0001, 0x00000022, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+The story of $n0 and\n#+$n1 ends here.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+But $t isn't done yet!\n#+There are many rescues to be done!") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+A new adventure begins!") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+The legendary Pokémon are set\n#+to make their appearance!") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Don't go away!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x3b, 0x09, 0x0000, 0x00000000, 0x00000000, NULL },
UPDATE_VARINT(CALC_SET, GROUND_PLACE, 11),
ASK1(FALSE, /*default*/ -1, /* speaker */ -1, _("Would you like to save your adventure?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("No.")),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
{ 0x3c, 0x0e, 0x0000, 0x00000000, 0x00000000, NULL },
LABEL(1), /* = 0x01 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs177_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs177_g1_s0_station_sref_script }; /* 0x822c1ac */
static const struct GroundEffectData s_gs177_g1_s0_effs[] = { /* 0x822c1b8 */
/* 0 */ { 0, 0, 1, 1, { 21, 15, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822c1c4 */
&s_gs177_g0_s0_station_sref,
&s_gs177_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs177_g0_sectors[] = { /* 0x822c1cc */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs177_g1_sectors[] = { /* 0x822c1f4 */
{ 0,NULL, 0,NULL, LPARRAY(s_gs177_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs177_groups[] = { /* 0x822c21c */
{ LPARRAY(s_gs177_g0_sectors) },
{ LPARRAY(s_gs177_g1_sectors) },
};
static const struct GroundLink s_gs177_links[] = { /* 0x822c22c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs177 = { LPARRAY(s_gs177_groups), s_gs177_links }; /* 0x822c234 */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,833 @@
static const struct ScriptCommand s_gs178_g0_s0_station_sref_script[] = { /* 0x822c248 */
DEBUGINFO,
SELECT_MAP(178),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs178_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs178_g0_s0_station_sref_script }; /* 0x822c2b4 */
static const struct ScriptCommand s_gs178_g1_s0_station_sref_script[] = { /* 0x822c2c0 - PART 1 0:04:05-0:06:38 */
DEBUGINFO,
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
BGM_STOP,
{ 0x23, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(178),
WAIT(100),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Where am I?") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Am I dreaming this?") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+I feel a pleasant breeze.") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+...I hear a voice from somewhere...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+I wonder who it is?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ......") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ............") },
MSG_VAR(2, PARTNER_TALK_KIND, -1),
VARIANT(/* == */ 1, _(" ...Hey.")),
VARIANT(/* == */ 1, _(" ...Hey, wake up.#W\nWake up already.")),
VARIANT_DEFAULT(_(" ...Excuse me.")),
VARIANT_DEFAULT(_(" ...Please, wake up.#W\nCome on, wake up.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
BGM_FADEIN(60, 101),
{ 0x22, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x39, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x02, 0x00, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs178_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs178_g1_s0_station_sref_script }; /* 0x822c5d8 */
static const struct ScriptCommand s_gs178_g1_s0_lives0_dlg0[] = { /* 0x822c5e4 - PART 1 0:04:23-0:06:38 - Player script - why/how is $n3 set here? */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Oh, good! You finally came to!")),
VARIANT_DEFAULT(_(" You're finally awake! Great!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Wh-where is this...?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(50),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You were passed out here.\nI'm glad you woke up!")),
VARIANT(/* == */ 3, _(" I found you passed out here.\nI'm glad you came to!")),
VARIANT_DEFAULT(_(" You were passed out here.\nI'm glad to see you awake!")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'm $n1.\nGlad to meet you!")),
VARIANT(/* == */ 3, _(" I'm $n1.\nHappy to meet you!")),
VARIANT_DEFAULT(_(" I'm $n1.\nGlad to meet you!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...So, who might you be?#W\nI don't think I've seen your face around\nhere.")),
VARIANT(/* == */ 3, _(" ...And, you are?#W\nI don't think I've seen you around before.")),
VARIANT_DEFAULT(_(" ...And, you are?#W\nI've never seen you around before.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah?#W\nYou say you're a human?")),
VARIANT(/* == */ 1, _(" But any which way I look\nat you, you're a normal $m0.")),
VARIANT(/* == */ 3, _(" Huh?#W\nDid you say human?")),
VARIANT(/* == */ 3, _(" But you look like a normal\n$m0 from every angle?")),
VARIANT_DEFAULT(_(" Huh?#W\nYou're a human?")),
VARIANT_DEFAULT(_(" But you look like a normal\n$m0 in every way.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
FANFARE_STOP2(469),
WAIT(40),
FANFARE_PLAY2(482),
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe2, 0x00, 0x01e2, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0000, 0x0000000c, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(It... It's true...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(I have turned into\na $m0!)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x15, 0x0000, 0x00000004, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(...But why?\nI don't remember anything...)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You're...#W\nSome kind of weird...")),
VARIANT(/* == */ 1, _(" So, what's your name?\nWhat do you call yourself?")),
VARIANT_DEFAULT(_(" Um...#W\nYou're kind of weird...")),
VARIANT_DEFAULT(_(" Your name?#W\nWhat's your name?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(My name...?#W\nThat's right, my name is...)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x3b, 0x16, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x3d, 0x00, 0x0000, 0x00000001, 0x00000000, NULL },
WAIT(20),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Uh-huh... $n0.#W\nThat's...")),
VARIANT(/* == */ 3, _(" OK.\nYou're named $n0?#W\nWell...")),
VARIANT_DEFAULT(_(" Oh.\n$n0's your name?#W\nWell...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000a, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" A funny name!")),
VARIANT(/* == */ 3, _(" Isn't it a funny name!")),
VARIANT_DEFAULT(_(" It's a funny name!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x06, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
WAIT(45),
{ 0x91, 0x06, 0x000a, 0x00000002, 0x00000000, NULL },
BGM_FADEOUT(60),
WAIT(60),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Somebody!\nPlease! Help me!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah?\nI hear shouting over there...")),
VARIANT_DEFAULT(_(" Huh? I hear shouts from\nover there...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_LIVES(-1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(20),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What's the matter?")),
VARIANT_DEFAULT(_(" What's wrong?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
BGM_SWITCH(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It's horrible!\nMy $n3 fell into a cavern!\nMy poor baby!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(12),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" A huge fissure opened in\nthe ground, and my $n3 fell in!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" He's too young to crawl out\nby himself!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" When I went to get my\nbaby, Pokémon suddenly attacked me!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh? You were attacked?#W\nBy other Pokémon?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" They must be enraged by\nthe fissure...and out of control!\nThat's what I think.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I'm not strong enough to\nfend off those wild Pokémon...#W\nWhat will become of my baby?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Oh! What am I to do?!\nOh dear, oh dear...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We can't just do nothing!\nLet's go help this kid!")),
VARIANT_DEFAULT(_(" This sounds bad!\nWe have to go help!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x0180, 0x00000008, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000009, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000a, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g1_s0_lives1_dlg0[] = { /* 0x822d950 - PART 1 0:04:23-0:06:38 - Partner script */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x01, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
WAIT(1),
FANFARE_STOP2(465),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
WAIT(5),
FANFARE_STOP2(469),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe2, 0x00, 0x01d6, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_HAPPY_FUNC),
WAIT(5),
CALL_SCRIPT(SMILE_START_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
{ 0xe2, 0x00, 0x01d2, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(463),
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe2, 0x00, 0x01cf, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000b, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000c, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000d, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g1_s1_lives0_dlg0[] = { /* 0x822dc90 - PART 1 0:05:55-0:06:38 - Butterfree */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000036, 0x00000000, NULL },
FANFARE_PLAY2(450),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000006, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000007, 0x00000000, NULL },
{ 0x91, 0x06, 0x0001, 0x00000000, 0x00000000, NULL },
FANFARE_STOP2(450),
{ 0xe5, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
{ 0x8b, 0x1e, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(0),
};
static const struct ScriptCommand s_gs178_g2_s0_station_sref_script[] = { /* 0x822de50 - PART 1 0:11:37-0:12:15 - After Tiny Woods death */
DEBUGINFO,
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
BGM_STOP,
WAIT(60),
SELECT_MAP(178),
{ 0x2d, 0x09, 0x0000, 0x00000035, 0x00000000, NULL },
{ 0x2e, 0x0b, 0x0000, -0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" ...Hello?#W\nHello!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
{ 0x22, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x39, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs178_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs178_g2_s0_station_sref_script }; /* 0x822df54 */
static const struct ScriptCommand s_gs178_g2_s0_lives0_dlg0[] = { /* 0x822df60 - PART 1 0:11:39-0:12:15 - Player */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000036, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(1),
CALL_SCRIPT(WAKEUP_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0002, 0x00000002, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(1),
{ 0x91, 0x08, 0x0001, 0x00000006, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(1),
{ 0x91, 0x08, 0x0002, 0x00000002, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(50),
FANFARE_STOP2(468),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Oh, my goodness!\nI'm so glad you came to!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wh-where...?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" In the forest.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You two ran off to rescue\nmy poor $n3, but...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...We ended up back here...")),
VARIANT_DEFAULT(_(" ...We somehow ended up\nback here...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I guess if we're defeated\nin there, we don't get to advance.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" It's a mysterious dungeon,\nI guess.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Ohh!\nIs my poor $n3 safe?!\nOh dear, oh dear...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
WAIT(30),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That's right!\nWe have to help that kid, and now!")),
VARIANT_DEFAULT(_(" That's right!\nWe've got to hurry!")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's roll, $n0!")),
VARIANT_DEFAULT(_(" $n0! Let's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x0180, 0x00000008, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000009, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000a, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g2_s0_lives1_dlg0[] = { /* 0x822e5fc - PART 1 0:11:39-0:12:15 - Partner */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
{ 0xe5, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000006, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(1),
{ 0x91, 0x08, 0x0002, 0x00000002, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(1),
{ 0x91, 0x08, 0x0001, 0x00000006, 0x00000000, NULL },
FANFARE_PLAY2(468),
WAIT(50),
FANFARE_STOP2(468),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000004, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0xe2, 0x00, 0x01d5, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000b, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000c, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x0000000d, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g2_s0_lives2_dlg0[] = { /* 0x822e89c - PART 1 0:11:39-0:12:15 - Butterfree */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
{ 0x8b, 0x1e, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x8b, 0x1e, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(0),
};
static const struct ScriptCommand s_gs178_g3_s0_station_sref_script[] = { /* 0x822e95c - PART 1 0:17:17-0:18:51 - Post-Tiny Woods cutscene */
DEBUGINFO,
{ 0x3b, 0x39, 0x0004, 0x00000000, 0x00000000, NULL },
SELECT_MAP(178),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(103),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs178_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs178_g3_s0_station_sref_script }; /* 0x822ea0c */
static const struct ScriptCommand s_gs178_g3_s0_lives0_dlg0[] = { /* 0x822ea18 - PART 1 0:17:17-0:18:51 - Player */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" My baby's safe...#W\nI'm sorry, I don't know how I could ever\nthank you properly...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000009, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Aww, don't worry, lady.#W\nThere have been a lot of quakes and\nfissures lately. It's dangerous.")),
VARIANT(/* == */ 1, _(" I'm glad your little guy's\nnot hurt, honestly.")),
VARIANT_DEFAULT(_(" Oh, that's OK!#W\nIt has been dangerous lately with sudden\nquakes and fissures like that one.")),
VARIANT_DEFAULT(_(" It was great to find your\nlittle boy unharmed.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Please, may I have your\nnames at least?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'm $n1.")),
VARIANT(/* == */ 3, _(" I'm $n1.")),
VARIANT_DEFAULT(_(" I'm $n1.")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" And this is $n0.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0003, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ............#W\nCool...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(1),
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
WAIT(30),
FANFARE_STOP2(470),
{ 0x2e, 0x15, 0x0000, 0x00000004, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(He's, uh...#W Staring at me adoringly...)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Those sparkly eyes...\nIt's a little embarrassing...)") },
{ 0x2e, 0x15, 0x0000, 0x00000001, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(But, this doesn't feel bad, either.\nIt's like I'm a hero.)") },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(Helping Pokémon in trouble might be\na good experience.)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Thank you!\n$n1 and $n0!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I know it isn't really\nenough, but this is a token of our\nthanks. Please accept it.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x3c, 0x2c, 0x0000, 0x00000037, 0x00000000, NULL },
WAIT(10),
{ 0x3c, 0x2c, 0x0000, 0x00000042, 0x00000001, NULL },
WAIT(10),
{ 0x3c, 0x2c, 0x0000, 0x0000003f, 0x00000001, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Thank you so much.\nGood-bye.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, thanks for helping me\nout.")),
VARIANT_DEFAULT(_(" Thank you for helping!")),
{ 0x91, 0x08, 0x0001, 0x00000002, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You're pretty tough.\nI respect that.")),
VARIANT(/* == */ 1, _(" So, uh...\nWhat are you going to do?\nAfter this, I mean.")),
VARIANT_DEFAULT(_(" You're very tough.\nI was sure impressed.")),
VARIANT_DEFAULT(_(" So...\nWhat are you going to do?\nDo you have any plans?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0000, 0x00000004, 0x00000000, NULL },
{ 0x33, 0x00, 0x0000, 0x00000000, 0x00000000, _("(............)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...#WSay, $n0.#W\nIf you don't have anywhere to stay,\nwhy don't you come with me?")),
VARIANT_DEFAULT(_(" ...#WListen, $n0.#W\nIf you don't have a place to stay, you\nshould come with me.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x000a, 0x00000002, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000010, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g3_s0_lives1_dlg0[] = { /* 0x822f68c - PART 1 0:17:17-0:18:51 - Partner */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x0100, 0x00000011, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs178_g3_s0_lives2_dlg0[] = { /* 0x822f84c - PART 1 0:17:17-0:18:34 - Butterfree */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0080, 0x00000000, 0x00000008, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0080, 0x00000000, -0x00000008, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x95, 0x08, 0x000a, 0x0000000e, 0x00000000, NULL },
FANFARE_PLAY2(450),
{ 0x6b, 0x00, 0x0100, 0x0000000e, 0x00000000, NULL },
FANFARE_STOP2(450),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs178_g3_s0_lives3_dlg0[] = { /* 0x822f94c - PART 1 0:17:17-0:18:34 - Caterpie */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(457),
CALL_SCRIPT(JUMP_ANGRY_FUNC),
WAIT(20),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x95, 0x08, 0x000a, 0x0000000f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x0000000f, 0x00000000, NULL },
END_DELETE,
};
static const struct GroundLivesData s_gs178_g1_s0_lives[] = { /* 0x822fa0c */
/* 0 */ { 0, 0, 0, 0, { 25, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 29, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs178_g1_s1_lives[] = { /* 0x822fa3c */
/* 0 */ { 53, 2, 0, 0, { 9, 23, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g1_s1_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs178_g2_s0_lives[] = { /* 0x822fa54 */
/* 0 */ { 0, 0, 0, 0, { 25, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 29, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g2_s0_lives1_dlg0,
} },
/* 2 */ { 53, 0, 0, 0, { 27, 21, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g2_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs178_g3_s0_lives[] = { /* 0x822fa9c */
/* 0 */ { 0, 4, 0, 0, { 25, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 29, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g3_s0_lives1_dlg0,
} },
/* 2 */ { 53, 0, 0, 0, { 29, 21, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g3_s0_lives2_dlg0,
} },
/* 3 */ { 54, 0, 0, 0, { 25, 21, 0, CPOS_HALFTILE }, {
[0] = s_gs178_g3_s0_lives3_dlg0,
} },
};
static const struct GroundEffectData s_gs178_g1_s0_effs[] = { /* 0x822fafc */
/* 0 */ { 0, 0, 1, 1, { 27, 23, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs178_g2_s0_effs[] = { /* 0x822fb08 */
/* 0 */ { 0, 0, 1, 1, { 27, 23, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs178_g3_s0_effs[] = { /* 0x822fb14 */
/* 0 */ { 0, 0, 1, 1, { 27, 23, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x822fb20 */
&s_gs178_g0_s0_station_sref,
&s_gs178_g1_s0_station_sref,
&s_gs178_g2_s0_station_sref,
&s_gs178_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs178_g0_sectors[] = { /* 0x822fb30 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs178_g1_sectors[] = { /* 0x822fb58 */
{ LPARRAY(s_gs178_g1_s0_lives), 0,NULL, LPARRAY(s_gs178_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs178_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs178_g2_sectors[] = { /* 0x822fba8 */
{ LPARRAY(s_gs178_g2_s0_lives), 0,NULL, LPARRAY(s_gs178_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs178_g3_sectors[] = { /* 0x822fbd0 */
{ LPARRAY(s_gs178_g3_s0_lives), 0,NULL, LPARRAY(s_gs178_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs178_groups[] = { /* 0x822fbf8 */
{ LPARRAY(s_gs178_g0_sectors) },
{ LPARRAY(s_gs178_g1_sectors) },
{ LPARRAY(s_gs178_g2_sectors) },
{ LPARRAY(s_gs178_g3_sectors) },
};
static const struct GroundLink s_gs178_links[] = { /* 0x822fc18 */
/* link 0 */ { { /*x*/ 12, /*y*/ 20, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 14, /*y*/ 20, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 16, /*y*/ 22, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 18, /*y*/ 22, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 4 */ { { /*x*/ 21, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 5 */ { { /*x*/ 23, /*y*/ 19, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 6 */ { { /*x*/ 25, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 7 */ { { /*x*/ 27, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 8 */ { { /*x*/ 20, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 9 */ { { /*x*/ 13, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 10 */ { { /*x*/ 6, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 11 */ { { /*x*/ 23, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 12 */ { { /*x*/ 16, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 13 */ { { /*x*/ 9, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 14 */ { { /*x*/ 52, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE|CPOS_CURRENT }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 15 */ { { /*x*/ 49, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE|CPOS_CURRENT }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 16 */ { { /*x*/ 49, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE|CPOS_CURRENT }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 17 */ { { /*x*/ 52, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE|CPOS_CURRENT }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs178 = { LPARRAY(s_gs178_groups), s_gs178_links }; /* 0x822fca8 */

View File

@@ -0,0 +1,147 @@
static const struct ScriptCommand s_gs179_g0_s0_station_sref_script[] = { /* 0x822fcbc */
DEBUGINFO,
SELECT_MAP(179),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs179_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs179_g0_s0_station_sref_script }; /* 0x822fd28 */
static const struct ScriptCommand s_gs179_g1_s0_station_sref_script[] = { /* 0x822fd34 - PART 1 0:16:37-0:17:16 - Tiny Woods end room */
DEBUGINFO,
SELECT_MAP(179),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs179_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs179_g1_s0_station_sref_script }; /* 0x822fdc4 */
static const struct ScriptCommand s_gs179_g1_s0_lives0_dlg0[] = { /* 0x822fdd0 - PART 1 0:16:37-0:17:16 - Player */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x02, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000042, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Waaaaah...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Mommy...\nWhere are you...? Sniffle...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" We came to rescue you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Huh?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Your mom's waiting.\nLet's get you out!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" OK.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs179_g1_s0_lives1_dlg0[] = { /* 0x82300a8 - PART 1 0:16:37-0:17:16 - Partner */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs179_g1_s0_lives2_dlg0[] = { /* 0x8230108 - PART 1 0:16:37-0:17:16 - Caterpie */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000003e, 0x00000000, NULL },
FANFARE_PLAY2(457),
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x01c9, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_HAPPY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs179_g1_s0_lives[] = { /* 0x8230218 */
/* 0 */ { 0, 4, 0, 0, { 20, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs179_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 24, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs179_g1_s0_lives1_dlg0,
} },
/* 2 */ { 54, 4, 0, 0, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs179_g1_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs179_g1_s0_effs[] = { /* 0x8230260 */
/* 0 */ { 0, 0, 1, 1, { 22, 21, CPOS_HALFTILE, 0 }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x823026c */
&s_gs179_g0_s0_station_sref,
&s_gs179_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs179_g0_sectors[] = { /* 0x8230274 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs179_g1_sectors[] = { /* 0x823029c */
{ LPARRAY(s_gs179_g1_s0_lives), 0,NULL, LPARRAY(s_gs179_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs179_groups[] = { /* 0x82302c4 */
{ LPARRAY(s_gs179_g0_sectors) },
{ LPARRAY(s_gs179_g1_sectors) },
};
static const struct GroundLink s_gs179_links[] = { /* 0x82302d4 */
/* link 0 */ { { /*x*/ 20, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 24, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs179 = { LPARRAY(s_gs179_groups), s_gs179_links }; /* 0x82302e4 */

View File

@@ -0,0 +1,523 @@
static const struct ScriptCommand s_gs180_g0_s0_station_sref_script[] = { /* 0x82302f8 */
DEBUGINFO,
SELECT_MAP(180),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs180_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs180_g0_s0_station_sref_script }; /* 0x8230364 */
static const struct ScriptCommand s_gs180_g1_s0_station_sref_script[] = { /* 0x8230370 */
DEBUGINFO,
SELECT_MAP(180),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(14),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000001, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs180_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs180_g1_s0_station_sref_script }; /* 0x82303f0 */
static const struct ScriptCommand s_gs180_g1_s0_eff0_script[] = { /* 0x82303fc */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs180_g1_s0_lives0_dlg0[] = { /* 0x823047c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x0a, 0x0000, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" OH, YOU ARE HERE.\nBZBZBZZ!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" MY FRIENDS ARE IN THIS\nCAVERN. BZBZBZZ.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" MY FRIENDS SHOULD BE\nON B$d0F. PLEASE HELP THEM!\nBZBZBZZZT!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x002f, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x08, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g1_s0_lives1_dlg0[] = { /* 0x8230758 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x002f, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x08, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(15),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g1_s0_lives2_dlg0[] = { /* 0x82308a8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0080, -0x00000010, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000041, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g1_s0_lives3_dlg0[] = { /* 0x8230948 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0080, 0x00000010, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000040, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g2_s0_station_sref_script[] = { /* 0x82309d8 */
DEBUGINFO,
SELECT_MAP(180),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(14),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000001, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs180_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs180_g2_s0_station_sref_script }; /* 0x8230a58 */
static const struct ScriptCommand s_gs180_g2_s0_eff0_script[] = { /* 0x8230a64 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs180_g2_s0_lives0_dlg0[] = { /* 0x8230ae4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x0000003c, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" The $n2 are in\nthere somewhere.") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's give it our best\nand rescue them $n0!")),
VARIANT_DEFAULT(_(" Let's do our best to rescue\nthem, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000001, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g2_s0_lives1_dlg0[] = { /* 0x8230d64 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000001, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g2_s0_lives2_dlg0[] = { /* 0x8230e64 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x14, 0x0002, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g2_s0_lives3_dlg0[] = { /* 0x8230ef4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x14, 0x0001, 0x00000005, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_station_sref_script[] = { /* 0x8230f74 */
DEBUGINFO,
SELECT_MAP(180),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(103),
WAIT(30),
{ 0x27, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs180_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs180_g3_s0_station_sref_script }; /* 0x8231014 */
static const struct ScriptCommand s_gs180_g3_s0_lives0_dlg0[] = { /* 0x8231020 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0x2e, 0x03, 0x0003, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0004, 0x00000001, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0005, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" OUR BODIES SEPARATED.\nBZBZBZZ. REJOICE! BZBZBZZT!") },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" YAY! BZBZBZZT!") },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" YAY! BZBZBZZT!") },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" BE THANKFUL, YOU TWO.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" YOU ARE OUR HERO.\nTHANK YOU. BZBZBZZ!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x3c, 0x2b, 0x0000, 0x00000003, 0x00000001, NULL },
{ 0x3c, 0x2c, 0x0000, 0x0000003a, 0x00000001, NULL },
{ 0x3c, 0x2c, 0x0000, 0x0000003f, 0x00000001, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_lives1_dlg0[] = { /* 0x8231478 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_lives2_dlg0[] = { /* 0x8231518 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_lives3_dlg0[] = { /* 0x82315e8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_lives4_dlg0[] = { /* 0x8231718 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs180_g3_s0_lives5_dlg0[] = { /* 0x82318d8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs180_g1_s0_lives[] = { /* 0x82319f8 */
/* 0 */ { 0, 4, 0, 0, { 23, 19, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 27, 19, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g1_s0_lives1_dlg0,
} },
/* 2 */ { 64, 4, 0, 0, { 23, 16, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g1_s0_lives2_dlg0,
} },
/* 3 */ { 65, 4, 0, 0, { 27, 16, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g1_s0_lives3_dlg0,
} },
};
static const struct GroundLivesData s_gs180_g2_s0_lives[] = { /* 0x8231a58 */
/* 0 */ { 0, 4, 0, 0, { 23, 19, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 27, 19, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g2_s0_lives1_dlg0,
} },
/* 2 */ { 64, 4, 0, 0, { 21, 16, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g2_s0_lives2_dlg0,
} },
/* 3 */ { 65, 4, 0, 0, { 29, 16, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g2_s0_lives3_dlg0,
} },
};
static const struct GroundLivesData s_gs180_g3_s0_lives[] = { /* 0x8231ab8 */
/* 0 */ { 0, 4, 0, 0, { 23, 20, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 27, 20, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives1_dlg0,
} },
/* 2 */ { 64, 0, 0, 0, { 26, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives2_dlg0,
} },
/* 3 */ { 65, 0, 0, 0, { 29, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives3_dlg0,
} },
/* 4 */ { 61, 0, 0, 0, { 23, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives4_dlg0,
} },
/* 5 */ { 62, 0, 0, 0, { 21, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs180_g3_s0_lives5_dlg0,
} },
};
static const struct GroundEffectData s_gs180_g1_s0_effs[] = { /* 0x8231b48 */
/* 0 */ { 0, 0, 1, 1, { 25, 18, 0, CPOS_HALFTILE }, s_gs180_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs180_g2_s0_effs[] = { /* 0x8231b54 */
/* 0 */ { 0, 0, 1, 1, { 25, 18, 0, CPOS_HALFTILE }, s_gs180_g2_s0_eff0_script },
};
static const struct GroundEffectData s_gs180_g3_s0_effs[] = { /* 0x8231b60 */
/* 0 */ { 0, 0, 1, 1, { 25, 18, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8231b6c */
&s_gs180_g0_s0_station_sref,
&s_gs180_g1_s0_station_sref,
&s_gs180_g2_s0_station_sref,
&s_gs180_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs180_g0_sectors[] = { /* 0x8231b7c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs180_g1_sectors[] = { /* 0x8231ba4 */
{ LPARRAY(s_gs180_g1_s0_lives), 0,NULL, LPARRAY(s_gs180_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs180_g2_sectors[] = { /* 0x8231bcc */
{ LPARRAY(s_gs180_g2_s0_lives), 0,NULL, LPARRAY(s_gs180_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs180_g3_sectors[] = { /* 0x8231bf4 */
{ LPARRAY(s_gs180_g3_s0_lives), 0,NULL, LPARRAY(s_gs180_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs180_groups[] = { /* 0x8231c1c */
{ LPARRAY(s_gs180_g0_sectors) },
{ LPARRAY(s_gs180_g1_sectors) },
{ LPARRAY(s_gs180_g2_sectors) },
{ LPARRAY(s_gs180_g3_sectors) },
};
static const struct GroundLink s_gs180_links[] = { /* 0x8231c3c */
/* link 0 */ { { /*x*/ 24, /*y*/ 10, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 24, /*y*/ 10, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 18, /*y*/ 33, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 31, /*y*/ 33, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs180 = { LPARRAY(s_gs180_groups), s_gs180_links }; /* 0x8231c5c */

View File

@@ -0,0 +1,128 @@
static const struct ScriptCommand s_gs181_g0_s0_station_sref_script[] = { /* 0x8231c70 */
DEBUGINFO,
SELECT_MAP(181),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs181_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs181_g0_s0_station_sref_script }; /* 0x8231cdc */
static const struct ScriptCommand s_gs181_g1_s0_station_sref_script[] = { /* 0x8231ce8 */
DEBUGINFO,
SELECT_MAP(181),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs181_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs181_g1_s0_station_sref_script }; /* 0x8231d78 */
static const struct ScriptCommand s_gs181_g1_s0_lives0_dlg0[] = { /* 0x8231d84 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x00cc, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs181_g1_s0_lives1_dlg0[] = { /* 0x8231f0c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000003, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs181_g1_s0_lives2_dlg0[] = { /* 0x8231f9c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs181_g1_s0_lives3_dlg0[] = { /* 0x8231fdc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs181_g1_s0_lives[] = { /* 0x823201c */
/* 0 */ { 0, 4, 0, 0, { 20, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs181_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 24, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs181_g1_s0_lives1_dlg0,
} },
/* 2 */ { 61, 7, 0, 0, { 22, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs181_g1_s0_lives2_dlg0,
} },
/* 3 */ { 62, 1, 0, 0, { 23, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs181_g1_s0_lives3_dlg0,
} },
};
static const struct GroundEffectData s_gs181_g1_s0_effs[] = { /* 0x823207c */
/* 0 */ { 0, 0, 1, 1, { 22, 20, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8232088 */
&s_gs181_g0_s0_station_sref,
&s_gs181_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs181_g0_sectors[] = { /* 0x8232090 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs181_g1_sectors[] = { /* 0x82320b8 */
{ LPARRAY(s_gs181_g1_s0_lives), 0,NULL, LPARRAY(s_gs181_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs181_groups[] = { /* 0x82320e0 */
{ LPARRAY(s_gs181_g0_sectors) },
{ LPARRAY(s_gs181_g1_sectors) },
};
static const struct GroundLink s_gs181_links[] = { /* 0x82320f0 */
/* link 0 */ { { /*x*/ 20, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 20, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 24, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 24, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs181 = { LPARRAY(s_gs181_groups), s_gs181_links }; /* 0x8232110 */

View File

@@ -0,0 +1,328 @@
static const struct ScriptCommand s_gs182_g0_s0_station_sref_script[] = { /* 0x8232124 */
DEBUGINFO,
SELECT_MAP(182),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs182_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs182_g0_s0_station_sref_script }; /* 0x8232190 */
static const struct ScriptCommand s_gs182_g1_s0_station_sref_script[] = { /* 0x823219c */
DEBUGINFO,
SELECT_MAP(182),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(120),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs182_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs182_g1_s0_station_sref_script }; /* 0x823221c */
static const struct ScriptCommand s_gs182_g1_s0_lives0_dlg0[] = { /* 0x8232228 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000042, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000044, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
WAIT(15),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So, this is it...\n#CDMt. Steel#R...")),
VARIANT(/* == */ 1, _(" $n3's been taken\nto the peak here...")),
VARIANT_DEFAULT(_(" Here we are...\n#CDMt. Steel#R...")),
VARIANT_DEFAULT(_(" So, $n3 was\nwhisked to its peak...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" That's right!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
WAIT(60),
{ 0x2d, 0x0a, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The peak is $d0F!\nThank you for helping! Farewell!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ......#W\nWell, I guess we go...")),
VARIANT_DEFAULT(_(" ......#W\nUh... Let's go.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(45),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs182_g1_s0_lives1_dlg0[] = { /* 0x82326cc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs182_g1_s1_lives0_dlg0[] = { /* 0x823282c */
DEBUGINFO,
{ 0x57, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(454),
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(486),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x57, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs182_g2_s0_station_sref_script[] = { /* 0x823290c */
DEBUGINFO,
SELECT_MAP(182),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(120),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs182_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs182_g2_s0_station_sref_script }; /* 0x823297c */
static const struct ScriptCommand s_gs182_g2_s0_lives0_dlg0[] = { /* 0x8232988 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000042, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000044, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We'll take another shot at\n#CDMt. Steel#R.")),
VARIANT(/* == */ 1, _(" We'll rescue $n3\nno matter what it takes!")),
VARIANT_DEFAULT(_(" We have to make another\nattempt at #CDMt. Steel#R.")),
VARIANT_DEFAULT(_(" Whatever it takes,\nlet's rescue $n3!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" That's the spirit!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
WAIT(60),
{ 0x2d, 0x0a, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The peak is $d0F!\nThank you for helping! Farewell!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ......#W\nWell, here we go...")),
VARIANT_DEFAULT(_(" ......#W\nUh... Let's go.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(45),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000001, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs182_g2_s0_lives1_dlg0[] = { /* 0x8232e30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, 0x00000064, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000064, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000001, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs182_g2_s1_lives0_dlg0[] = { /* 0x8232fc0 */
DEBUGINFO,
{ 0x57, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(454),
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(486),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x57, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct GroundLivesData s_gs182_g1_s0_lives[] = { /* 0x82330a0 */
/* 0 */ { 0, 2, 0, 0, { 20, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs182_g1_s1_lives[] = { /* 0x82330d0 */
/* 0 */ { 66, 0, 0, 0, { 22, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g1_s1_lives0_dlg0,
} },
};
static const struct GroundLivesData s_gs182_g2_s0_lives[] = { /* 0x82330e8 */
/* 0 */ { 0, 2, 0, 0, { 20, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g2_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs182_g2_s1_lives[] = { /* 0x8233118 */
/* 0 */ { 66, 0, 0, 0, { 22, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs182_g2_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs182_g1_s0_effs[] = { /* 0x8233130 */
/* 0 */ { 0, 0, 1, 1, { 22, 23, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs182_g2_s0_effs[] = { /* 0x823313c */
/* 0 */ { 0, 0, 1, 1, { 22, 23, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8233148 */
&s_gs182_g0_s0_station_sref,
&s_gs182_g1_s0_station_sref,
&s_gs182_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs182_g0_sectors[] = { /* 0x8233154 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs182_g1_sectors[] = { /* 0x823317c */
{ LPARRAY(s_gs182_g1_s0_lives), 0,NULL, LPARRAY(s_gs182_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs182_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs182_g2_sectors[] = { /* 0x82331cc */
{ LPARRAY(s_gs182_g2_s0_lives), 0,NULL, LPARRAY(s_gs182_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
{ LPARRAY(s_gs182_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs182_groups[] = { /* 0x823321c */
{ LPARRAY(s_gs182_g0_sectors) },
{ LPARRAY(s_gs182_g1_sectors) },
{ LPARRAY(s_gs182_g2_sectors) },
};
static const struct GroundLink s_gs182_links[] = { /* 0x8233234 */
/* link 0 */ { { /*x*/ 22, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 22, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs182 = { LPARRAY(s_gs182_groups), s_gs182_links }; /* 0x8233244 */

View File

@@ -0,0 +1,296 @@
static const struct ScriptCommand s_gs183_g0_s0_station_sref_script[] = { /* 0x8233258 */
DEBUGINFO,
SELECT_MAP(183),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs183_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs183_g0_s0_station_sref_script }; /* 0x82332c4 */
static const struct ScriptCommand s_gs183_g1_s0_station_sref_script[] = { /* 0x82332d0 */
DEBUGINFO,
SELECT_MAP(183),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs183_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs183_g1_s0_station_sref_script }; /* 0x8233350 */
static const struct ScriptCommand s_gs183_g1_s0_eff0_script[] = { /* 0x823335c */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x1c, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs183_g1_s0_lives0_dlg0[] = { /* 0x82333ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0f, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Grr... I can't keep up!#W\nI'll flee for now!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey!\nWe sent $n3 packing!")),
VARIANT(/* == */ 1, _(" You're safe now.\nCome on down!")),
VARIANT_DEFAULT(_(" Hey there!\nWe chased $n3 off!")),
VARIANT_DEFAULT(_(" It's OK now.\nCome down over here.")),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I can't...\nI'm too scared to move...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" OK, no sweat.#W\nWe'll go to you. Just wait.")),
VARIANT_DEFAULT(_(" OK, no problem.#W\nWe'll come to you. Just wait.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...Whoa.") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wow. This is some cliff...\nI can't see the bottom.")),
VARIANT_DEFAULT(_(" Sheesh! Look at this cliff...\nI can't see the bottom.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n0, what'll\nwe do?\nWe can't get across this.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0c, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" BZBZBZZ!") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey! It's those $n4\nfrom that rescue!")),
VARIANT_DEFAULT(_(" Oh, hi!\nYou're the $n4 we saved!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0c, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0004, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" WE GOT WORD OF THIS.#W\nWE CAN RESCUE DIGLETT FROM THE\nSKY. BZBZBZZ!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" HOLD ON TO US TIGHT.\nBZBZBZZZ!") },
{ 0x2e, 0x0d, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0004, -0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" DON'T BE SCARED.\nWE WON'T MAKE THE MISTAKE OF\nZAPPING YOU. BZBZBZZT!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs183_g1_s0_lives1_dlg0[] = { /* 0x8233bec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x62, 0x00, 0x0080, 0x00000000, 0x00000008, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0080, 0x00000000, -0x00000008, NULL },
{ 0x54, 0x00, 0x0028, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(463),
{ 0x56, 0x00, 0x0000, 0x0000005b, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs183_g1_s0_lives2_dlg0[] = { /* 0x8233d8c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs183_g1_s0_lives3_dlg0[] = { /* 0x8233e3c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(459),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000045, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs183_g1_s1_lives0_dlg0[] = { /* 0x8233eec */
DEBUGINFO,
{ 0x5b, 0x00, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x0000005a, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(483),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000004, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000044, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x004c, 0x00000000, -0x00000010, NULL },
{ 0x93, 0x04, 0x000a, 0x00000044, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs183_g1_s1_lives1_dlg0[] = { /* 0x823405c */
DEBUGINFO,
{ 0x5b, 0x00, 0x0000, 0x00000001, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x0000005a, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000003, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000044, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x004c, 0x00000000, -0x00000010, NULL },
{ 0x93, 0x04, 0x000a, 0x00000044, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs183_g1_s0_lives[] = { /* 0x823418c */
/* 0 */ { 0, 4, 0, 0, { 26, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 30, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s0_lives1_dlg0,
} },
/* 2 */ { 68, 0, 0, 0, { 28, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s0_lives2_dlg0,
} },
/* 3 */ { 69, 0, 0, 0, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s0_lives3_dlg0,
} },
};
static const struct GroundLivesData s_gs183_g1_s1_lives[] = { /* 0x82341ec */
/* 0 */ { 61, 0, 0, 0, { 27, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s1_lives0_dlg0,
} },
/* 1 */ { 62, 0, 0, 0, { 30, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs183_g1_s1_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs183_g1_s0_effs[] = { /* 0x823421c */
/* 0 */ { 0, 0, 1, 1, { 28, 39, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs183_g1_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8234228 */
&s_gs183_g0_s0_station_sref,
&s_gs183_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs183_g0_sectors[] = { /* 0x8234230 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs183_g1_sectors[] = { /* 0x8234258 */
{ LPARRAY(s_gs183_g1_s0_lives), 0,NULL, LPARRAY(s_gs183_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs183_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs183_groups[] = { /* 0x82342a8 */
{ LPARRAY(s_gs183_g0_sectors) },
{ LPARRAY(s_gs183_g1_sectors) },
};
static const struct GroundLink s_gs183_links[] = { /* 0x82342b8 */
/* link 0 */ { { /*x*/ 29, /*y*/ 36, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 30, /*y*/ 32, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 27, /*y*/ 32, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 31, /*y*/ 28, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 4 */ { { /*x*/ 26, /*y*/ 28, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs183 = { LPARRAY(s_gs183_groups), s_gs183_links }; /* 0x82342e0 */

View File

@@ -0,0 +1,183 @@
static const struct ScriptCommand s_gs184_g0_s0_station_sref_script[] = { /* 0x82342f4 */
DEBUGINFO,
SELECT_MAP(184),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs184_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs184_g0_s0_station_sref_script }; /* 0x8234360 */
static const struct ScriptCommand s_gs184_g1_s0_station_sref_script[] = { /* 0x823436c */
DEBUGINFO,
SELECT_MAP(184),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(15),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000004, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs184_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs184_g1_s0_station_sref_script }; /* 0x82343ec */
static const struct ScriptCommand s_gs184_g1_s0_lives0_dlg0[] = { /* 0x82343f8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x0000005e, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005b, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is it.\n$n2 is lost in these woods.")),
VARIANT(/* == */ 1, _(" $n3's crew\nshould have a head start on us.")),
VARIANT(/* == */ 1, _(" We'd better hurry.")),
VARIANT(/* == */ 3, _(" This is it.\n$n2 is lost somewhere in these\nwoods.")),
VARIANT(/* == */ 3, _(" $n3's gang should\nalready be here.")),
VARIANT(/* == */ 3, _(" We ought to hurry.")),
VARIANT_DEFAULT(_(" This must be it.\n$n2 is lost somewhere in these\nwoods.")),
VARIANT_DEFAULT(_(" $n3's gang should\nbe in there already.")),
VARIANT_DEFAULT(_(" We need to hurry.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs184_g1_s0_lives1_dlg0[] = { /* 0x8234714 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000001, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs184_g2_s0_station_sref_script[] = { /* 0x82347a4 */
DEBUGINFO,
SELECT_MAP(184),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(15),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000004, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs184_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs184_g2_s0_station_sref_script }; /* 0x8234824 */
static const struct ScriptCommand s_gs184_g2_s0_lives0_dlg0[] = { /* 0x8234830 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x0000005b, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's move it, $n0!")),
VARIANT(/* == */ 1, _(" Even while we're dawdling\nhere, $n2's team...")),
VARIANT(/* == */ 1, _(" Hurry! Chop, chop!")),
VARIANT(/* == */ 3, _(" Let's hurry, $n0!")),
VARIANT(/* == */ 3, _(" While we're stuck\nback here, $n2's gang will be...")),
VARIANT(/* == */ 3, _(" We have to hurry!")),
VARIANT_DEFAULT(_(" Let's hustle, $n0!")),
VARIANT_DEFAULT(_(" We're still stuck back here\nwhile $n2's gang is...")),
VARIANT_DEFAULT(_(" Come on, hurry!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs184_g2_s0_lives1_dlg0[] = { /* 0x8234ae8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0180, 0x00000001, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs184_g1_s0_lives[] = { /* 0x8234b58 */
/* 0 */ { 0, 4, 0, 0, { 26, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs184_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 30, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs184_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs184_g2_s0_lives[] = { /* 0x8234b88 */
/* 0 */ { 0, 2, 0, 0, { 26, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs184_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 30, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs184_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs184_g1_s0_effs[] = { /* 0x8234bb8 */
/* 0 */ { 0, 0, 1, 1, { 28, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs184_g2_s0_effs[] = { /* 0x8234bc4 */
/* 0 */ { 0, 0, 1, 1, { 28, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8234bd0 */
&s_gs184_g0_s0_station_sref,
&s_gs184_g1_s0_station_sref,
&s_gs184_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs184_g0_sectors[] = { /* 0x8234bdc */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs184_g1_sectors[] = { /* 0x8234c04 */
{ LPARRAY(s_gs184_g1_s0_lives), 0,NULL, LPARRAY(s_gs184_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs184_g2_sectors[] = { /* 0x8234c2c */
{ LPARRAY(s_gs184_g2_s0_lives), 0,NULL, LPARRAY(s_gs184_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs184_groups[] = { /* 0x8234c54 */
{ LPARRAY(s_gs184_g0_sectors) },
{ LPARRAY(s_gs184_g1_sectors) },
{ LPARRAY(s_gs184_g2_sectors) },
};
static const struct GroundLink s_gs184_links[] = { /* 0x8234c6c */
/* link 0 */ { { /*x*/ 26, /*y*/ 9, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 30, /*y*/ 9, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs184 = { LPARRAY(s_gs184_groups), s_gs184_links }; /* 0x8234c7c */

View File

@@ -0,0 +1,281 @@
static const struct ScriptCommand s_gs185_g0_s0_station_sref_script[] = { /* 0x8234c90 */
DEBUGINFO,
SELECT_MAP(185),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs185_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs185_g0_s0_station_sref_script }; /* 0x8234cfc */
static const struct ScriptCommand s_gs185_g1_s0_station_sref_script[] = { /* 0x8234d08 */
DEBUGINFO,
SELECT_MAP(185),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs185_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs185_g1_s0_station_sref_script }; /* 0x8234d88 */
static const struct ScriptCommand s_gs185_g1_s0_lives0_dlg0[] = { /* 0x8234d94 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x0000005e, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0003, 0x00000043, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Owowowow...#W\nYou'll pay for this!\nDon't you forget it!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000009, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Well, those pests are gone.\nLet's find $n2.")),
VARIANT_DEFAULT(_(" No one should hold us back\nnow. Let's find $n2.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Um, excuse me...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x93, 0x04, 0x0002, 0x0000005e, 0x00000000, NULL },
{ 0xe2, 0x00, 0x01d1, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0002, 0x00000000, -0x00000003, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Did you maybe come looking\nfor me?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" You must be $n2.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Let's get you home.\nCaterpie was worried about you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yay!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I was scared, so I kept my\nshell hardened...and waited and waited.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Thank you!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives1_dlg0[] = { /* 0x823531c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x93, 0x04, 0x0001, 0x0000005e, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives2_dlg0[] = { /* 0x82353ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(455),
CALL_SCRIPT(SMILE_END_FUNC),
WAIT(10),
CALL_SCRIPT(JUMP_HAPPY_FUNC),
WAIT(16),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives3_dlg0[] = { /* 0x823550c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000047, 0x00000000, NULL },
FANFARE_PLAY2(457),
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x01c9, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives4_dlg0[] = { /* 0x82355ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives5_dlg0[] = { /* 0x823565c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives6_dlg0[] = { /* 0x82356cc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x0000005e, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives7_dlg0[] = { /* 0x823576c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x0000005e, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives8_dlg0[] = { /* 0x823580c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs185_g1_s0_lives9_dlg0[] = { /* 0x823583c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs185_g1_s0_lives[] = { /* 0x823586c */
/* 0 */ { 0, 4, 0, 0, { 32, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 37, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives1_dlg0,
} },
/* 2 */ { 94, 0, 0, 0, { 34, 15, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives2_dlg0,
} },
/* 3 */ { 91, 0, 0, 0, { 34, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives3_dlg0,
} },
/* 4 */ { 92, 0, 0, 0, { 39, 28, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives4_dlg0,
} },
/* 5 */ { 93, 0, 0, 0, { 30, 28, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives5_dlg0,
} },
/* 6 */ { 10, 4, 0, 0, { 33, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives6_dlg0,
} },
/* 7 */ { 11, 4, 0, 0, { 36, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives7_dlg0,
} },
/* 8 */ { 12, 4, 0, 0, { 30, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives8_dlg0,
} },
/* 9 */ { 13, 4, 0, 0, { 39, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs185_g1_s0_lives9_dlg0,
} },
};
static const struct GroundEffectData s_gs185_g1_s0_effs[] = { /* 0x823595c */
/* 0 */ { 0, 0, 1, 1, { 34, 30, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8235968 */
&s_gs185_g0_s0_station_sref,
&s_gs185_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs185_g0_sectors[] = { /* 0x8235970 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs185_g1_sectors[] = { /* 0x8235998 */
{ LPARRAY(s_gs185_g1_s0_lives), 0,NULL, LPARRAY(s_gs185_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs185_groups[] = { /* 0x82359c0 */
{ LPARRAY(s_gs185_g0_sectors) },
{ LPARRAY(s_gs185_g1_sectors) },
};
static const struct GroundLink s_gs185_links[] = { /* 0x82359d0 */
/* link 0 */ { { /*x*/ 34, /*y*/ 30, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 13, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 13, /*y*/ 28, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 14, /*y*/ 28, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs185 = { LPARRAY(s_gs185_groups), s_gs185_links }; /* 0x82359f0 */

View File

@@ -0,0 +1,460 @@
static const struct ScriptCommand s_gs186_g0_s0_station_sref_script[] = { /* 0x8235a04 */
DEBUGINFO,
SELECT_MAP(186),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs186_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs186_g0_s0_station_sref_script }; /* 0x8235a70 */
static const struct ScriptCommand s_gs186_g1_s0_station_sref_script[] = { /* 0x8235a7c */
DEBUGINFO,
SELECT_MAP(186),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(113),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000006, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs186_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs186_g1_s0_station_sref_script }; /* 0x8235b0c */
static const struct ScriptCommand s_gs186_g1_s0_eff0_script[] = { /* 0x8235b18 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs186_g1_s0_lives0_dlg0[] = { /* 0x8235ba8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x0000005b, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew, this is some cliff.")),
VARIANT_DEFAULT(_(" Wow! This cliff is steep!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So your friend $n2\nis somewhere deep in this canyon?")),
VARIANT_DEFAULT(_(" Your friend $n2\nis lost deep in this canyon?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yes...\nI'm sorry to ask, but please help.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, no problem.")),
VARIANT_DEFAULT(_(" It'll be fine.")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's roll, $n0!")),
VARIANT_DEFAULT(_(" Let's go, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x10, 0x0100, 0x00000004, 0x00000000, NULL },
FANFARE_PLAY2(464),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...Wait!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
FANFARE_PLAY2(463),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah? What's up?")),
VARIANT_DEFAULT(_(" Yes? What is it?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0d, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There's something I forgot\nto mention...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This canyon is known as\nthe #CDSilent Chasm#R, but...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It's rumored that an amazing\nmonster sleeps here.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(473),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" M...#Wmonster?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yes, but!#W\nIt's only folklore!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It's also true that\nShiftry hasn't returned...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I just thought I should\nlet you know...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000006, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Owowow!\nMy stomach! It hurts...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Oh!#W\nWhat's wrong?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
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...")),
VARIANT_DEFAULT(_(" It's my stomach!\nIt suddenly cramped up! Owowow...")),
VARIANT_DEFAULT(_(" I think my breakfast was\nspoiled or something...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, $n0, you too,\nright?")),
VARIANT_DEFAULT(_(" Say, $n0, you're\nfeeling sick too, aren't you?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
ASK3_VAR(FALSE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" $n0, you have\na stomachache too, don't you?")),
VARIANT_DEFAULT(_(" $n0, your stomach\nhurts too, doesn't it?")),
CHOICE(/* label */ 12, _("It's true! It's tearing me up!")),
CHOICE(/* label */ 13, _("Huh? I'm perfectly fine.")),
LABEL(12), /* = 0x0c */
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(457),
{ 0x56, 0x00, 0x0000, 0x00000047, 0x00000000, NULL },
{ 0x54, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" See...\n$n0 is in pain too.")),
VARIANT(/* == */ 1, _(" Sorry, but we can't handle\nthis rescue...")),
VARIANT_DEFAULT(_(" See...\n$n0 is hurting too.")),
VARIANT_DEFAULT(_(" I'm sorry, but we won't\nbe able to handle this rescue...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Is that so?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But $n0...") },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Hasn't had anything to\neat yet this morning.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
FANFARE_PLAY2(470),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Owowow...#W\nI guess the cramping settled down...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(45),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hahahahaha...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(16),
LABEL(13), /* = 0x0d */
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh...?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(457),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000003, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" What's wrong with you,\n$n0?!\nBack me up here!")),
VARIANT(/* == */ 1, _(" You're my partner!\nYou have to catch my drift better!")),
VARIANT_DEFAULT(_(" What's the matter,\n$n0?!\nI need you to back me!")),
VARIANT_DEFAULT(_(" If you're my partner, you\nneed to read my cues better!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Wh-why this sudden\noutburst, $n1?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Don't you have a\nstomachache?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Uh, yeah...")),
VARIANT(/* == */ 1, _(" Owowow...#W\nI guess the cramping settled down...")),
VARIANT_DEFAULT(_(" Uh, yes...")),
VARIANT_DEFAULT(_(" Owowow...#W\nI guess the cramping settled down...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hahahahaha...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
LABEL(16), /* = 0x10 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So, this monster.\nWhat is it like?")),
VARIANT_DEFAULT(_(" So, anyway, you said there\nmay be a monster.\nWhat is it like?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I don't know very much\nat all...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It is an old folktale.\nI wouldn't know if it existed or not.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right...#W\nThere's nothing we can do about that.")),
VARIANT(/* == */ 1, _(" We'll just have to hope the\nmonster doesn't really exist.")),
VARIANT_DEFAULT(_(" OK...#W\nWell, it can't be helped.")),
VARIANT_DEFAULT(_(" Let's just hope that monster\ndoesn't exist.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2d, 0x0a, 0x0000, 0x00000006, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" My friend Jumpluff should\nbe around B$d0F.#W\nPlease take care!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" You bet we will!")),
VARIANT_DEFAULT(_(" OK! Gotcha!")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's roll, $n0!")),
VARIANT_DEFAULT(_(" Let's get going,\n$n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x005f, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs186_g1_s0_lives1_dlg0[] = { /* 0x8237410 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
WAIT(16),
{ 0x91, 0x08, 0x0001, 0x00000005, 0x00000000, NULL },
WAIT(12),
{ 0x91, 0x08, 0x0002, 0x00000007, 0x00000000, NULL },
WAIT(12),
{ 0x91, 0x08, 0x0001, 0x00000005, 0x00000000, NULL },
WAIT(12),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
WAIT(8),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x0a, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
CALL_SCRIPT(QUESTION_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
WAIT(30),
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(45),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 1),
LABEL(0), /* = 0x00 */
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_ANGRY_FUNC),
CALL_SCRIPT(ANGRY_START_FUNC),
WAIT(45),
CALL_SCRIPT(ANGRY_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(60),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
LABEL(1), /* = 0x01 */
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000001, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs186_g1_s0_lives2_dlg0[] = { /* 0x8237920 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x89, 0x04, 0x0100, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000047, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
{ 0x91, 0x04, 0x0002, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
{ 0x91, 0x04, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs186_g1_s0_lives[] = { /* 0x8237a90 */
/* 0 */ { 0, 5, 0, 0, { 28, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs186_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 7, 0, 0, { 23, 16, 0, CPOS_HALFTILE }, {
[0] = s_gs186_g1_s0_lives1_dlg0,
} },
/* 2 */ { 78, 7, 0, 0, { 32, 13, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs186_g1_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs186_g1_s0_effs[] = { /* 0x8237ad8 */
/* 0 */ { 0, 0, 1, 1, { 18, 16, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs186_g1_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8237ae4 */
&s_gs186_g0_s0_station_sref,
&s_gs186_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs186_g0_sectors[] = { /* 0x8237aec */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs186_g1_sectors[] = { /* 0x8237b14 */
{ LPARRAY(s_gs186_g1_s0_lives), 0,NULL, LPARRAY(s_gs186_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs186_groups[] = { /* 0x8237b3c */
{ LPARRAY(s_gs186_g0_sectors) },
{ LPARRAY(s_gs186_g1_sectors) },
};
static const struct GroundLink s_gs186_links[] = { /* 0x8237b4c */
/* link 0 */ { { /*x*/ 29, /*y*/ 10, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 28, /*y*/ 9, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 28, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs186 = { LPARRAY(s_gs186_groups), s_gs186_links }; /* 0x8237b64 */

View File

@@ -0,0 +1,378 @@
static const struct ScriptCommand s_gs187_g0_s0_station_sref_script[] = { /* 0x8237b78 */
DEBUGINFO,
SELECT_MAP(187),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs187_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs187_g0_s0_station_sref_script }; /* 0x8237be4 */
static const struct ScriptCommand s_gs187_g1_s0_station_sref_script[] = { /* 0x8237bf0 */
DEBUGINFO,
SELECT_MAP(187),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs187_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs187_g1_s0_station_sref_script }; /* 0x8237c90 */
static const struct ScriptCommand s_gs187_g1_s0_eff0_script[] = { /* 0x8237c9c */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x44, 0x01cc, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs187_g1_s0_lives0_dlg0[] = { /* 0x8237d1c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(32),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n2's friend is\nsupposed to be around here, right?")),
VARIANT_DEFAULT(_(" Isn't this the place?\nWhere $n2's friend is supposed\nto be?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh, hey!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" We came for you!\nAre you all right?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0e, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yes...\nI'm fine, but...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Great!\nYour friend is waiting for you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" $n3 is in the\nback...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh? $n3?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
WAIT(5),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
WAIT(40),
{ 0x91, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Let's go!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x3c, 0x01cc, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey! Are you all right?\nGet it together!")),
VARIANT_DEFAULT(_(" Listen! Are you OK?\nSnap out of it!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0e, 0x0003, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ...Urrrgh.\nForget about me...") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Get away from here!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Get...#W\nGet away?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_STOP,
FANFARE_PLAY2(502),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x27, 0x01, 0x0005, 0x00000003, 0x00777700, NULL },
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x27, 0x01, 0x0005, 0x00000003, 0x00777700, NULL },
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wh-what happened?!\nIt's pitch-black! I can't see!")),
VARIANT_DEFAULT(_(" Wh-what's going on?!\nWhy did it turn pitch-black?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
FANFARE_PLAY2(474),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaoooooh!") },
WAIT(90),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" It's coming!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(502),
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x28, 0x00, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Move aside, you!") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" He dared to disturb my sleep!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(502),
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x28, 0x00, 0x0005, 0x00000002, 0x00777700, NULL },
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I have no mercy for meddlers!\nAnd that includes you!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x00, 0x0005, 0x00000020, 0x00000000, NULL },
WAIT(32),
FANFARE_PLAY2(517),
{ 0x28, 0x01, 0x0005, 0x00000010, 0x00ffffff, NULL },
WAIT(32),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaooooh!") },
WAIT(90),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x27, 0x00, 0x0005, 0x00000010, 0x00ffffff, NULL },
WAIT(64),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
WAIT(8),
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(30),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Shi-$n3's gone!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
WAIT(15),
BGM_SWITCH(9),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I am $n6!\nThe embodiment of lightning!") },
{ 0x2e, 0x0e, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0006, 0x00000000, 0x00000000, _(" If you wish to save\n$n3, then scale #CDMt. Thunder#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n6...") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" So that's the legendary\nmonster...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs187_g1_s0_lives1_dlg0[] = { /* 0x82389a8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0100, 0x00000004, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x3c, 0x01cc, 0x00000004, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs187_g1_s0_lives2_dlg0[] = { /* 0x8238b68 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x3c, 0x01cc, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs187_g1_s0_lives3_dlg0[] = { /* 0x8238cb8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x3c, 0x01cc, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
WAIT(7),
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
WAIT(15),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs187_g1_s0_lives4_dlg0[] = { /* 0x8238e18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x60, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x46, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs187_g1_s0_lives5_dlg0[] = { /* 0x8238ee8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs187_g1_s1_lives0_dlg0[] = { /* 0x8238f38 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0100, 0x00000008, 0x00000000, NULL },
WAIT(16),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaoooooooh!") },
FANFARE_PLAY2(459),
{ 0x70, 0x00, 0x0400, 0x00000080, 0x00000000, NULL },
WAIT(90),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct GroundLivesData s_gs187_g1_s0_lives[] = { /* 0x8239018 */
/* 0 */ { 0, 4, 0, 0, { 20, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 24, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 19, 47, 0, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 25, 47, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives3_dlg0,
} },
/* 4 */ { 95, 0, 0, 0, { 22, 13, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives4_dlg0,
} },
/* 5 */ { 85, 2, 0, 0, { 22, 11, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s0_lives5_dlg0,
} },
};
static const struct GroundLivesData s_gs187_g1_s1_lives[] = { /* 0x82390a8 */
/* 0 */ { 96, 0, 0, 0, { 22, 9, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs187_g1_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs187_g1_s0_effs[] = { /* 0x82390c0 */
/* 0 */ { 0, 0, 1, 1, { 22, 29, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs187_g1_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82390cc */
&s_gs187_g0_s0_station_sref,
&s_gs187_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs187_g0_sectors[] = { /* 0x82390d4 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs187_g1_sectors[] = { /* 0x82390fc */
{ LPARRAY(s_gs187_g1_s0_lives), 0,NULL, LPARRAY(s_gs187_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs187_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs187_groups[] = { /* 0x823914c */
{ LPARRAY(s_gs187_g0_sectors) },
{ LPARRAY(s_gs187_g1_sectors) },
};
static const struct GroundLink s_gs187_links[] = { /* 0x823915c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs187 = { LPARRAY(s_gs187_groups), s_gs187_links }; /* 0x8239164 */

View File

@@ -0,0 +1,236 @@
static const struct ScriptCommand s_gs188_g0_s0_station_sref_script[] = { /* 0x8239178 */
DEBUGINFO,
SELECT_MAP(188),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs188_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs188_g0_s0_station_sref_script }; /* 0x82391e4 */
static const struct ScriptCommand s_gs188_g1_s0_station_sref_script[] = { /* 0x82391f0 */
DEBUGINFO,
SELECT_MAP(188),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(111),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000007, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs188_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs188_g1_s0_station_sref_script }; /* 0x8239280 */
static const struct ScriptCommand s_gs188_g1_s0_eff0_script[] = { /* 0x823928c */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs188_g1_s0_lives0_dlg0[] = { /* 0x82392cc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000060, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000058, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0004, 0x00000055, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This must be the foot of\n#CDMt. Thunder#R...")),
VARIANT(/* == */ 1, _(" I wonder if $n3's\nteam is already on the way...")),
VARIANT_DEFAULT(_(" This is the foot of\n#CDMt. Thunder#R.")),
VARIANT_DEFAULT(_(" I wonder...\nIs $n3's team already on\ntheir way?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n2, huh...#W\nIt sounds really tough.")),
VARIANT_DEFAULT(_(" $n2...#W\nIt sounds very tough...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Brr... I'm shaking...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But I can't be spooked\nby this.")),
VARIANT(/* == */ 1, _(" Our mission is to rescue\n$n4.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT(/* == */ 3, _(" I shouldn't get all scared\nnow!")),
VARIANT(/* == */ 3, _(" Our objective is to rescue\n$n4.")),
VARIANT(/* == */ 3, _(" $n0, let's do our\nbest!")),
VARIANT_DEFAULT(_(" I can't be scared now.")),
VARIANT_DEFAULT(_(" Our objective is simple.\nWe're rescuing $n4.")),
VARIANT_DEFAULT(_(" $n0, let's try\nour best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs188_g1_s0_lives1_dlg0[] = { /* 0x8239824 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
WAIT(8),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs188_g2_s0_station_sref_script[] = { /* 0x8239954 */
DEBUGINFO,
SELECT_MAP(188),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(111),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000007, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs188_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs188_g2_s0_station_sref_script }; /* 0x82399e4 */
static const struct ScriptCommand s_gs188_g2_s0_eff0_script[] = { /* 0x82399f0 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs188_g2_s0_lives0_dlg0[] = { /* 0x8239a30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000055, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0!\nThis time, we're gonna rescue\n$n2!")),
VARIANT(/* == */ 1, _(" Let's give it our best!")),
VARIANT_DEFAULT(_(" $n0!\nWe'll rescue $n2 this time for\nsure!")),
VARIANT_DEFAULT(_(" Let's work hard at it!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs188_g2_s0_lives1_dlg0[] = { /* 0x8239c48 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(8),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs188_g1_s0_lives[] = { /* 0x8239d08 */
/* 0 */ { 0, 2, 0, 0, { 23, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs188_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 27, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs188_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs188_g2_s0_lives[] = { /* 0x8239d38 */
/* 0 */ { 0, 2, 0, 0, { 23, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs188_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 27, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs188_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs188_g1_s0_effs[] = { /* 0x8239d68 */
/* 0 */ { 0, 0, 1, 1, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs188_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs188_g2_s0_effs[] = { /* 0x8239d74 */
/* 0 */ { 0, 0, 1, 1, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs188_g2_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8239d80 */
&s_gs188_g0_s0_station_sref,
&s_gs188_g1_s0_station_sref,
&s_gs188_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs188_g0_sectors[] = { /* 0x8239d8c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs188_g1_sectors[] = { /* 0x8239db4 */
{ LPARRAY(s_gs188_g1_s0_lives), 0,NULL, LPARRAY(s_gs188_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs188_g2_sectors[] = { /* 0x8239ddc */
{ LPARRAY(s_gs188_g2_s0_lives), 0,NULL, LPARRAY(s_gs188_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs188_groups[] = { /* 0x8239e04 */
{ LPARRAY(s_gs188_g0_sectors) },
{ LPARRAY(s_gs188_g1_sectors) },
{ LPARRAY(s_gs188_g2_sectors) },
{},
};
static const struct GroundLink s_gs188_links[] = { /* 0x8239e24 */
/* link 0 */ { { /*x*/ 23, /*y*/ 18, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 27, /*y*/ 18, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 25, /*y*/ 11, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs188 = { LPARRAY(s_gs188_groups), s_gs188_links }; /* 0x8239e3c */

View File

@@ -0,0 +1,265 @@
static const struct ScriptCommand s_gs189_g0_s0_station_sref_script[] = { /* 0x8239e50 */
DEBUGINFO,
SELECT_MAP(189),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_GT, 17, /* to label */ 0),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(1),
LABEL(1), /* = 0x01 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 2),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 4),
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 5),
JUMP_LABEL(5),
LABEL(2), /* = 0x02 */
SELECT_LIVES(0, 3),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 4),
JUMP_LABEL(6),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 1),
JUMP_LABEL(6),
LABEL(6), /* = 0x06 */
BGM_SWITCH(111),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs189_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs189_g0_s0_station_sref_script }; /* 0x823a06c */
static const struct ScriptCommand s_gs189_g0_s0_evt0_sref_script[] = { /* 0x823a078 */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Would you like to go on?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x02, 0x00, 0x001e, 0x00000008, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs189_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs189_g0_s0_evt0_sref_script }; /* 0x823a164 */
static const struct ScriptCommand s_gs189_g0_s0_evt1_sref_script[] = { /* 0x823a170 */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
};
static const struct ScriptRef s_gs189_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs189_g0_s0_evt1_sref_script }; /* 0x823a270 */
static const struct ScriptCommand s_gs189_g0_s0_obj0_dlg2[] = { /* 0x823a27c */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs189_g0_s1_lives0_dlg0[] = { /* 0x823a29c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g0_s1_lives1_dlg0[] = { /* 0x823a2dc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g0_s3_lives0_dlg0[] = { /* 0x823a31c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g0_s3_lives1_dlg0[] = { /* 0x823a35c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g0_s4_lives0_dlg0[] = { /* 0x823a39c */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g0_s4_lives1_dlg0[] = { /* 0x823a3cc */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs189_g1_s0_station_sref_script[] = { /* 0x823a3fc */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 189),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 189),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(189),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(111),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs189_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs189_g1_s0_station_sref_script }; /* 0x823a4cc */
static const struct ScriptCommand s_gs189_g1_s0_lives0_dlg0[] = { /* 0x823a4d8 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nThings didn't go right for us...")),
VARIANT_DEFAULT(_(" Hmm...#W\nThings didn't turn out in our favor...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But we should be getting\nclose.#W\nLet's keep going hard at it!")),
VARIANT_DEFAULT(_(" But we shouldn't be far.#W\nLet's keep doing our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs189_g1_s0_lives1_dlg0[] = { /* 0x823a72c */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs189_g0_s0_lives[] = { /* 0x823a7dc */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs189_g0_s1_lives[] = { /* 0x823a7f4 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs189_g0_s3_lives[] = { /* 0x823a824 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs189_g0_s4_lives[] = { /* 0x823a854 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs189_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs189_g1_s0_lives[] = { /* 0x823a884 */
/* 0 */ { 0, 2, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs189_g1_s0_lives0_dlg0,
} },
/* 1 */ { 7, 6, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs189_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs189_g0_s0_objs[] = { /* 0x823a8b4 */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs189_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs189_g1_s0_effs[] = { /* 0x823a8cc */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs189_g0_s0_evts[] = { /* 0x823a8d8 */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs189_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs189_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x823a8f0 */
&s_gs189_g0_s0_station_sref,
&s_gs189_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs189_g0_sectors[] = { /* 0x823a8f8 */
{ LPARRAY(s_gs189_g0_s0_lives), LPARRAY(s_gs189_g0_s0_objs), 0,NULL, LPARRAY(s_gs189_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs189_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs189_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs189_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs189_g1_sectors[] = { /* 0x823a9c0 */
{ LPARRAY(s_gs189_g1_s0_lives), 0,NULL, LPARRAY(s_gs189_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs189_groups[] = { /* 0x823a9e8 */
{ LPARRAY(s_gs189_g0_sectors) },
{ LPARRAY(s_gs189_g1_sectors) },
};
static const struct GroundLink s_gs189_links[] = { /* 0x823a9f8 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs189 = { LPARRAY(s_gs189_groups), s_gs189_links }; /* 0x823aa00 */

View File

@@ -0,0 +1,689 @@
static const struct ScriptCommand s_gs190_g0_s0_station_sref_script[] = { /* 0x823aa14 */
DEBUGINFO,
SELECT_MAP(190),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs190_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs190_g0_s0_station_sref_script }; /* 0x823aa80 */
static const struct ScriptCommand s_gs190_g1_s0_station_sref_script[] = { /* 0x823aa8c */
DEBUGINFO,
SELECT_MAP(190),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs190_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs190_g1_s0_station_sref_script }; /* 0x823ab1c */
static const struct ScriptCommand s_gs190_g1_s0_eff0_script[] = { /* 0x823ab28 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x48, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x40, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s0_lives0_dlg0[] = { /* 0x823ac18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0006, 0x00000055, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _("Gyaoooh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Wh-what is going on...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Urrggh!#W\nUwoah!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(479),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" You want more?\nI'll take you on!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Enough!#W\nThat's enough fighting.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I've calmed down.\nTake $n6 back.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You kids...\nYou've impressed me.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But...#W\nThings won't be this easy next time.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I will go all out next time,\nso you'd best be prepared!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Until then, you'd better\nhone your skills!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
FANFARE_PLAY2(481),
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Look!\nThere's $n6!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0020, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000055, 0x00000000, NULL },
WAIT(16),
{ 0x2e, 0x0c, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Are you OK?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0006, 0x00000000, 0x00000000, _(" Ungh... Uh, yeah...#W\nSomehow, I am...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I'm glad you're safe!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" But that was an eye-opener.") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" Driving off that\n$n2.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" I agree.") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" You're awfully strong for\na plain $m0.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(32),
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(32),
{ 0x2e, 0x02, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ......") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" I sensed it when we first\nmet...") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Perhaps...#W\nYou aren't a Pokémon, are you?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wow!\nHow can you tell that?!") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" But you're right.\n$n0 isn't a Pokémon.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n0 is a human.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(473),
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0006, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0006, 0x00000000, 0x00000000, _(" What?!") },
{ 0x2e, 0x0c, 0x0004, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" A human?!") },
{ 0x2e, 0x02, 0x0005, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" Is that possible?\nCan something like that happen?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0 doesn't really\nknow what happened, either.")),
VARIANT(/* == */ 1, _(" $n0 just woke up\none morning here as a Pokémon...")),
VARIANT(/* == */ 1, _(" ...And doesn't remember\na thing about being a human.")),
VARIANT_DEFAULT(_(" $n0 doesn't\nunderstand very much, either.")),
VARIANT_DEFAULT(_(" $n0 woke up\none morning here as a Pokémon...")),
VARIANT_DEFAULT(_(" ...And doesn't remember\nanything about being a human.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
FANFARE_PLAY2(463),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Oh, that's right!#W\nLombre was saying something in the\nsquare.")),
VARIANT(/* == */ 1, _(" He said $n3\nknows everything.")),
VARIANT(/* == */ 1, _(" $n3, do you know\nwhy $n0 became a Pokémon?")),
VARIANT_DEFAULT(_(" Oh, wait!#W\nLombre said something in the square!")),
VARIANT_DEFAULT(_(" He said $n3 knows\neverything!")),
VARIANT_DEFAULT(_(" $n3, could you\nfigure out why $n0 became a\nPokémon?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ......") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" No...#W\nI can't determine that.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x03, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh...\nI thought you would know...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" However...#W\nThere is a way for unveiling the truth.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x03, 0x0001, 0x0000000b, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh, really? How?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Make way to the\n#C5Hill of the Ancients#R.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" There, you will find a\nPokémon that stares into the sun all day...") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" A Pokémon who is said to\nsee into the future.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Xatu is his name.#W\nHe should shed light on your puzzling\nfriend.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" OK!\nSo we should go see Xatu.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0, let's roll!\nWe're going to the #C5Hill of the Ancients#R!")),
VARIANT(/* == */ 1, _(" There's no time to lose!\nWe'd better go back quick!")),
VARIANT_DEFAULT(_(" $n0, let's go!\nOff to the #C5Hill of the Ancients#R!")),
VARIANT_DEFAULT(_(" We can't waste any time!\nLet's go back quick!")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Shiftry, you too.#W\nLet's hurry back.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0e, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0006, 0x00000000, 0x00000000, _(" Uh... Yeah...#W\nI guess we should...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0!")),
VARIANT_DEFAULT(_(" $n0!")),
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(464),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Don't just stand around.\nLet's go back.")),
VARIANT_DEFAULT(_(" Don't just stand there.\nLet's go home.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
WAIT(30),
BGM_FADEOUT(120),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x89, 0xb8, 0x0080, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x0e, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Alakazam.#W\nI know you.") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" I don't think you're \ncompletely ignorant about this.") },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" ......#W\nYou know something, don't you?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0f, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" There is something that\nconcerns me.#W\nBut it should go unspoken for now.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ...For their sake...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs190_g1_s0_lives1_dlg0[] = { /* 0x823c670 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0020, 0x00000001, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000055, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_HAPPY_FUNC),
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(30),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x90, 0x0080, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s0_lives2_dlg0[] = { /* 0x823c940 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000010, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x60, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x90, 0x0080, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s0_lives3_dlg0[] = { /* 0x823cac0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000010, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x60, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x90, 0x0080, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s0_lives4_dlg0[] = { /* 0x823cc40 */
DEBUGINFO,
{ 0x54, 0x00, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(479),
{ 0x56, 0x00, 0x0000, 0x00000062, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(491),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000061, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_STOP2(491),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(32),
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0100, 0x00000008, 0x00000000, NULL },
WAIT(8),
FANFARE_PLAY2(459),
{ 0x70, 0x00, 0x0400, 0x00000080, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s0_lives5_dlg0[] = { /* 0x823ce70 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(8),
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0020, 0x00000002, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000055, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs190_g1_s0_lives6_dlg0[] = { /* 0x823d050 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(8),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(7),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x84, 0x00, 0x0180, 0x00000022, -0x0000001a, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0020, 0x00000003, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs190_g1_s0_lives7_dlg0[] = { /* 0x823d280 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(8),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0020, 0x00000004, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000055, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs190_g1_s0_eff1_script[] = { /* 0x823d460 */
DEBUGINFO,
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000001b, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs190_g1_s1_lives0_dlg0[] = { /* 0x823d4c0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x90, 0x0080, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct GroundLivesData s_gs190_g1_s0_lives[] = { /* 0x823d610 */
/* 0 */ { 0, 3, 0, 0, { 24, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 5, 0, 0, { 32, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives1_dlg0,
} },
/* 2 */ { 10, 2, 0, 0, { 21, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives2_dlg0,
} },
/* 3 */ { 11, 6, 0, 0, { 35, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives3_dlg0,
} },
/* 4 */ { 96, 0, 0, 0, { 28, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives4_dlg0,
} },
/* 5 */ { 88, 4, 0, 0, { 28, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives5_dlg0,
} },
/* 6 */ { 89, 4, 0, 0, { 24, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives6_dlg0,
} },
/* 7 */ { 90, 4, 0, 0, { 32, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs190_g1_s0_lives7_dlg0,
} },
};
static const struct GroundLivesData s_gs190_g1_s1_lives[] = { /* 0x823d6d0 */
/* 0 */ { 85, 7, 0, 0, { 28, 17, CPOS_HALFTILE, 0 }, {
[0] = s_gs190_g1_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs190_g1_s0_effs[] = { /* 0x823d6e8 */
/* 0 */ { 0, 0, 1, 1, { 29, 11, 0, CPOS_HALFTILE }, s_gs190_g1_s0_eff0_script },
/* 1 */ { 4, 0, 1, 1, { 28, 20, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs190_g1_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x823d700 */
&s_gs190_g0_s0_station_sref,
&s_gs190_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs190_g0_sectors[] = { /* 0x823d708 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs190_g1_sectors[] = { /* 0x823d730 */
{ LPARRAY(s_gs190_g1_s0_lives), 0,NULL, LPARRAY(s_gs190_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs190_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs190_groups[] = { /* 0x823d780 */
{ LPARRAY(s_gs190_g0_sectors) },
{ LPARRAY(s_gs190_g1_sectors) },
};
static const struct GroundLink s_gs190_links[] = { /* 0x823d790 */
/* link 0 */ { { /*x*/ 29, /*y*/ 20, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 32, /*y*/ 17, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 24, /*y*/ 17, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 25, /*y*/ 15, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 4 */ { { /*x*/ 25, /*y*/ 19, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 5 */ { { /*x*/ 32, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 6 */ { { /*x*/ 32, /*y*/ 21, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs190 = { LPARRAY(s_gs190_groups), s_gs190_links }; /* 0x823d7c8 */

View File

@@ -0,0 +1,203 @@
static const struct ScriptCommand s_gs191_g0_s0_station_sref_script[] = { /* 0x823d7dc */
DEBUGINFO,
SELECT_MAP(191),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs191_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs191_g0_s0_station_sref_script }; /* 0x823d848 */
static const struct ScriptCommand s_gs191_g1_s0_station_sref_script[] = { /* 0x823d854 */
DEBUGINFO,
SELECT_MAP(191),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(20),
{ 0x22, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000009, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs191_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs191_g1_s0_station_sref_script }; /* 0x823d8d4 */
static const struct ScriptCommand s_gs191_g1_s0_lives0_dlg0[] = { /* 0x823d8e0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000058, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000061, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" This is the #CDGreat Canyon#R...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" The peak is called the\n#C5Hill of the Ancients#R.") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0x2d, 0x0a, 0x0000, 0x00000009, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n2 said that\nthe #C5Hill of the Ancients#R is on $d0F.")),
VARIANT(/* == */ 1, _(" That's where we'll find\n$n3.#W\n$n0, let's give it our best!")),
VARIANT_DEFAULT(_(" According to $n2,\nthe #C5Hill of the Ancients#R is on $d0F.")),
VARIANT_DEFAULT(_(" $n3 should be\nthere.#W\n$n0, let's do our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0028, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs191_g1_s0_lives1_dlg0[] = { /* 0x823dc10 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x69, 0x00, 0x0100, 0x000000e8, 0x00000068, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(20),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs191_g2_s0_station_sref_script[] = { /* 0x823dd20 */
DEBUGINFO,
SELECT_MAP(191),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(20),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x00000009, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs191_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs191_g2_s0_station_sref_script }; /* 0x823dda0 */
static const struct ScriptCommand s_gs191_g2_s0_lives0_dlg0[] = { /* 0x823ddac */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000058, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000061, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0!\nThis time we'll make it to the peak,\nall right?")),
VARIANT(/* == */ 1, _(" We'll meet $n3\nand ask about you, $n0.")),
VARIANT(/* == */ 1, _(" Let's give it our best!")),
VARIANT_DEFAULT(_(" $n0!\nLet's make it to the peak this time!")),
VARIANT_DEFAULT(_(" We have to meet\n$n3 and get some information\non you, $n0.")),
VARIANT_DEFAULT(_(" Let's do our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0028, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs191_g2_s0_lives1_dlg0[] = { /* 0x823e038 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000004, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs191_g1_s0_lives[] = { /* 0x823e0f8 */
/* 0 */ { 0, 4, 0, 0, { 26, 29, 0, CPOS_HALFTILE }, {
[0] = s_gs191_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 29, 0, CPOS_HALFTILE }, {
[0] = s_gs191_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs191_g2_s0_lives[] = { /* 0x823e128 */
/* 0 */ { 0, 4, 0, 0, { 26, 29, 0, CPOS_HALFTILE }, {
[0] = s_gs191_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 29, 0, CPOS_HALFTILE }, {
[0] = s_gs191_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs191_g1_s0_effs[] = { /* 0x823e158 */
/* 0 */ { 0, 0, 1, 1, { 30, 15, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs191_g2_s0_effs[] = { /* 0x823e164 */
/* 0 */ { 0, 0, 1, 1, { 30, 15, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x823e170 */
&s_gs191_g0_s0_station_sref,
&s_gs191_g1_s0_station_sref,
&s_gs191_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs191_g0_sectors[] = { /* 0x823e17c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs191_g1_sectors[] = { /* 0x823e1a4 */
{ LPARRAY(s_gs191_g1_s0_lives), 0,NULL, LPARRAY(s_gs191_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs191_g2_sectors[] = { /* 0x823e1cc */
{ LPARRAY(s_gs191_g2_s0_lives), 0,NULL, LPARRAY(s_gs191_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs191_groups[] = { /* 0x823e1f4 */
{ LPARRAY(s_gs191_g0_sectors) },
{ LPARRAY(s_gs191_g1_sectors) },
{ LPARRAY(s_gs191_g2_sectors) },
};
static const struct GroundLink s_gs191_links[] = { /* 0x823e20c */
/* link 0 */ { { /*x*/ 31, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 26, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 29, /*y*/ 6, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 30, /*y*/ 7, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 4 */ { { /*x*/ 30, /*y*/ 11, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs191 = { LPARRAY(s_gs191_groups), s_gs191_links }; /* 0x823e234 */

View File

@@ -0,0 +1,974 @@
static const struct ScriptCommand s_gs192_g0_s0_station_sref_script[] = { /* 0x823e248 */
DEBUGINFO,
SELECT_MAP(192),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs192_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs192_g0_s0_station_sref_script }; /* 0x823e2b4 */
static const struct ScriptCommand s_gs192_g1_s0_station_sref_script[] = { /* 0x823e2c0 */
DEBUGINFO,
SELECT_MAP(192),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs192_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs192_g1_s0_station_sref_script }; /* 0x823e360 */
static const struct ScriptCommand s_gs192_g1_s0_lives0_dlg0[] = { /* 0x823e36c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#W\nWhat is it?#W\nHave you reason to see me?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
WAIT(45),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Hm! This...#W\nThis is a #CIClear Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...#WI see.#W\nAbout the mirage Pokémon...#W\nThat is what you wish to know?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _(" #C6#RKwaaaaah!") },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
WAIT(60),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" .......#W\nThe mirage Pokémon...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I know...#W\nLittle about it...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ........................") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ....................................\n................................................\n................................................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe2, 0x00, 0x01d6, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" However!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There are Pokémon that\nlive, breathe, and prosper with\nthe very land.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" They...#W\nrage with the eruptions of volcanoes...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Roar as one with thunder...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" And race with the north\nwind.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" They are said to be\nshadows.\nShadows of the mirage Pokémon.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" To the northwest, there lies\na large island.") },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" An island known as the\n“Three Fields.”") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There is one such field.\nThe #CDFiery Field#R!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" One of the Pokémon...\nA shadow of the mirage...is there.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Go.\nYou must go to the #CDFiery Field#R.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The answers you seek...\nPerhaps they await you there.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
BGM_STOP,
FANFARE_PLAY(205),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+the #CDFiery Field#R!") },
{ 0xe1, 0x00, 0x00cd, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g1_s0_lives1_dlg0[] = { /* 0x823ec7c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe2, 0x00, 0x01d1, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(474),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_station_sref_script[] = { /* 0x823edfc */
DEBUGINFO,
SELECT_MAP(192),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(90),
RET,
};
static const struct ScriptRef s_gs192_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs192_g2_s0_station_sref_script }; /* 0x823ee8c */
static const struct ScriptCommand s_gs192_g2_s0_eff0_script[] = { /* 0x823ee98 */
DEBUGINFO,
WAIT(1),
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0200, 0x0000000a, 0x00000000, NULL },
WAIT(80),
{ 0x86, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0200, 0x0000000a, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0200, 0x0000000d, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_lives0_dlg0[] = { /* 0x823ef68 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Yes! We finally made it to\nthe top, $n0!")),
VARIANT_DEFAULT(_(" Yes! We've finally made it\nto the top, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x08, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So this is the #C5Hill of\nthe Ancients#R...")),
VARIANT_DEFAULT(_(" This is the #C5Hill of the\nAncients#R...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Look!\nOver there!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n0!#W\nIs that $n2 over there?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x003c, 0x00000002, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(20),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Excuse me?#W\nAre you maybe $n2?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ......") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hello?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Maybe he doesn't hear me?\nHello?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ..................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(40),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hellooooooooooooooo?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ........................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" It's useless.\nHe's not responding at all.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Maybe he's sleeping while\non his feet?") },
{ 0x2e, 0x15, 0x0001, -0x00000002, 0x00000000, NULL },
ASK3_VAR(FALSE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT_DEFAULT(_(" $n0, what should\nwe do?")),
CHOICE(/* label */ 2, _("Tickle him.")),
CHOICE(/* label */ 3, _("Attack him.")),
LABEL(2), /* = 0x02 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah? Tickle him?#W\n...OK. I'll try it.")),
VARIANT_DEFAULT(_(" Huh? Tickle him?#W\n...OK. It's worth a try.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, 0x0000001e, 0x0000001e, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Tickle, tickle, tickle.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2b, 0x00, 0x0000, 0x0000001e, 0x0000001e, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Tickle, tickle, tickle, tickle,\ntickle, tickle.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ....................................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2b, 0x00, 0x0000, 0x00000014, 0x00000014, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Tickle, tickle, tickle, tickle,\ntickle, tickle, tickle, tickle, tickle, tickle,\ntickle, tickle, tickle, tickle, tickle, tickle.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ................................................\n............................................................\n............................................................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, 0x0000001e, 0x0000001e, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Tickle, tickle, tickle......") },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Gasp, gasp...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" It's useless, $n0.\nI'm not getting any response.")),
VARIANT_DEFAULT(_(" It's no good, $n0.\nHe's not responding.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Snort...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Snort...#W Giggle...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Bufufufufufufufufu...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" He finally started laughing...")),
VARIANT(/* == */ 1, _(" Maybe...#W\nIs he just dense?")),
VARIANT_DEFAULT(_(" He's finally laughing now...")),
VARIANT_DEFAULT(_(" Is he...#W\njust dense?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
BGM_STOP,
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Kwaaaaaaaaah!") },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yikes!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
JUMP_LABEL(4),
LABEL(3), /* = 0x03 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah?\nWe're gonna attack?")),
VARIANT_DEFAULT(_(" Huh?\nWe're going to attack?!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Uh, no!\nNo way!") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I mean, he's kind of creepy!") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" It'd be scary for\nsure!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...#WOh, all right. \nYou really want me to do this.")),
VARIANT_DEFAULT(_(" ...#WFine, then.\nI'll do it, OK?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
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!")),
VARIANT_DEFAULT(_(" If anything happens\nto me, you have to help me.\nI'm counting on you.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
BGM_FADEOUT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x05, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2b, 0x00, 0x0000, 0x0000002d, 0x0000003c, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000003, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right. Counting down.#W\nThree...#W Two...#W One...#W Now...!")),
VARIANT_DEFAULT(_(" OK. Counting down.#W\nThree...#W Two...#W One...#W Now...!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Kwaaaaaaaaah!") },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x8b, 0x0a, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yikes!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
JUMP_LABEL(4),
LABEL(4), /* = 0x04 */
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Witness it...") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" The sinking of the sun...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
BGM_FADEIN(60, 6),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Indeed.") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I am $n2.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You discerned my true\nidentity...#W\nYou are not an ordinary sort...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Guessed your identity?\nThat's a bit much.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...No.\nI can tell this.") },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You there.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You are no ordinary\nPokémon.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You are...#W\nhuman, yes?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(466),
CALL_SCRIPT(NOTICE_FUNC),
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh?!\nHow can you tell that?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" All day...\nI stare at the sun unblinking.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It gives me sight for\nall things.") },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The past and the future, too.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Then, you've got to tell us,\n$n2!")),
VARIANT_DEFAULT(_(" If you know, please tell us,\n$n2!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is my friend\n$n0...")),
VARIANT(/* == */ 1, _(" My friend woke up one\nmorning as a Pokémon.")),
VARIANT(/* == */ 1, _(" Without remembering\nanything as a human being, too.")),
VARIANT_DEFAULT(_(" Next to me is my friend\n$n0...")),
VARIANT_DEFAULT(_(" My friend woke up one\nmorning as a Pokémon.")),
VARIANT_DEFAULT(_(" And, without any memory as\na human.")),
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n2, you can tell,\ncan't you?#W\nCan't you tell us?")),
VARIANT_DEFAULT(_(" $n2, you can tell,\ncan't you?#W\nPlease tell us.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ..................") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The calamities of nature.\nThere have been many in recent times.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" They occur because the\nworld's balance is upset.") },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" And your becoming a\nPokémon...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" They are tied together.\nInseparably so.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x03, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wait. $n0\nbecoming a Pokémon and...#Wthe natural\ndisasters...#Ware related?!") },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What do you mean?!") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What does $n0\nhave to do with the natural disasters\nwe've been seeing?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ........................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000003, 0x00000000, NULL },
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!")),
VARIANT_DEFAULT(_(" What is it?!")),
VARIANT_DEFAULT(_(" Why did you clam up?!\nPlease, tell us! Please!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There are bigger concerns...#W\nI am afraid...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The world's balance...\nIt must be restored.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Or the unthinkable shall\nbefall our world.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wh-#Wwhat did you say?")),
VARIANT(/* == */ 1, _(" The world...#W\nThe unthinkable is going to happen?")),
VARIANT_DEFAULT(_(" Huh...?#W\nYou're serious?!")),
VARIANT_DEFAULT(_(" The world...#W\nThe unthinkable is coming?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Every day I see it.\nThe same future every day...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I dread it...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Xa-$n2...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I fear it...#W\nThe world's destruction.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
SELECT_LIVES(-1, 1),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" The world's destruction...?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(150),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Kekeh!\nIsn't that a surprise!") },
{ 0x2e, 0x02, 0x0003, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" That $n0...\nwas human...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0003, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" That's going to be useful!\nThis should be interesting! Kekeh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_lives1_dlg0[] = { /* 0x8241890 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0080, 0x00000000, -0x00000010, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(463),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x003c, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0028, 0x00000005, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
WAIT(10),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0028, 0x00000006, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(60),
{ 0x7a, 0x00, 0x0028, 0x00000007, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(457),
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0028, 0x00000008, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(60),
{ 0x7a, 0x00, 0x0028, 0x00000009, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000020, 0x00000003, NULL },
WAIT(15),
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0028, 0x00000006, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0x6a, 0x00, 0x0100, -0x00000004, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0x6a, 0x00, 0x0100, -0x00000004, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(469),
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0x6a, 0x00, 0x0100, -0x00000004, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(469),
WAIT(30),
FANFARE_PLAY2(469),
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0x6a, 0x00, 0x0100, -0x00000004, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000047, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
CALL_SCRIPT(SWEAT_FUNC),
WAIT(60),
{ 0x6a, 0x00, 0x0100, 0x00000000, 0x00000012, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 1),
LABEL(0), /* = 0x00 */
FANFARE_PLAY2(473),
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0f, 0x0001, 0x00000005, 0x00000000, NULL },
WAIT(60),
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
FANFARE_PLAY2(457),
{ 0x56, 0x00, 0x0000, 0x00000047, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0028, 0x00000005, 0x00000000, NULL },
{ 0x8b, 0x0a, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(100),
{ 0x54, 0x00, 0x0029, 0x00000000, 0x00000000, NULL },
WAIT(100),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0x6a, 0x00, 0x0100, 0x00000018, 0x00000002, NULL },
{ 0x8b, 0x0a, 0x0005, 0x00000000, 0x00000000, NULL },
LABEL(1), /* = 0x01 */
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x0014, 0x00000005, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(457),
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe2, 0x00, 0x01c9, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(473),
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe2, 0x00, 0x01d9, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_lives2_dlg0[] = { /* 0x82422c0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x003c, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 1),
LABEL(0), /* = 0x00 */
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
LABEL(1), /* = 0x01 */
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_lives3_dlg0[] = { /* 0x82423f0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x7a, 0x00, 0x003c, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 1),
LABEL(0), /* = 0x00 */
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
LABEL(1), /* = 0x01 */
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s0_lives4_dlg0[] = { /* 0x8242520 */
DEBUGINFO,
{ 0x52, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 0),
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
WAIT(100),
CALL_SCRIPT(SMILE_END_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
FANFARE_PLAY2(474),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs192_g2_s1_lives0_dlg0[] = { /* 0x8242850 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_START_FUNC),
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SMILE_END_FUNC),
WAIT(30),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x0000000b, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs192_g1_s0_lives[] = { /* 0x8242990 */
/* 0 */ { 0, 4, 0, 0, { 20, 41, 0, CPOS_HALFTILE }, {
[0] = s_gs192_g1_s0_lives0_dlg0,
} },
/* 1 */ { 97, 4, 0, 0, { 20, 35, 0, CPOS_HALFTILE }, {
[0] = s_gs192_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs192_g2_s0_lives[] = { /* 0x82429c0 */
/* 0 */ { 0, 4, 0, 0, { 16, 53, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 23, 53, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 17, 59, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 22, 59, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s0_lives3_dlg0,
} },
/* 4 */ { 97, 4, 0, 0, { 20, 35, 0, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s0_lives4_dlg0,
} },
};
static const struct GroundLivesData s_gs192_g2_s1_lives[] = { /* 0x8242a38 */
/* 0 */ { 91, 4, 0, 0, { 20, 58, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs192_g2_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs192_g1_s0_effs[] = { /* 0x8242a50 */
/* 0 */ { 0, 0, 1, 1, { 20, 35, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs192_g2_s0_effs[] = { /* 0x8242a5c */
/* 0 */ { 0, 0, 1, 1, { 20, 51, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs192_g2_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8242a68 */
&s_gs192_g0_s0_station_sref,
&s_gs192_g1_s0_station_sref,
&s_gs192_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs192_g0_sectors[] = { /* 0x8242a74 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs192_g1_sectors[] = { /* 0x8242a9c */
{ LPARRAY(s_gs192_g1_s0_lives), 0,NULL, LPARRAY(s_gs192_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs192_g2_sectors[] = { /* 0x8242ac4 */
{ LPARRAY(s_gs192_g2_s0_lives), 0,NULL, LPARRAY(s_gs192_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
{ LPARRAY(s_gs192_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs192_groups[] = { /* 0x8242b14 */
{ LPARRAY(s_gs192_g0_sectors) },
{ LPARRAY(s_gs192_g1_sectors) },
{ LPARRAY(s_gs192_g2_sectors) },
{},
};
static const struct GroundLink s_gs192_links[] = { /* 0x8242b34 */
/* link 0 */ { { /*x*/ 20, /*y*/ 38, /*flags*/ 0, 0 }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 23, /*y*/ 37, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 16, /*y*/ 37, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 3 */ { { /*x*/ 17, /*y*/ 42, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 4 */ { { /*x*/ 22, /*y*/ 42, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 5 */ { { /*x*/ 20, /*y*/ 37, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 6 */ { { /*x*/ 23, /*y*/ 35, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 7 */ { { /*x*/ 20, /*y*/ 33, /*flags*/ 0, 0 }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 8 */ { { /*x*/ 16, /*y*/ 35, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 9 */ { { /*x*/ 19, /*y*/ 37, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 10 */ { { /*x*/ 20, /*y*/ 34, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 11 */ { { /*x*/ 20, /*y*/ 70, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 12 */ { { /*x*/ 20, /*y*/ 51, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 13 */ { { /*x*/ 20, /*y*/ 57, /*flags*/ CPOS_HALFTILE, 0 }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs192 = { LPARRAY(s_gs192_groups), s_gs192_links }; /* 0x8242ba4 */

View File

@@ -0,0 +1,748 @@
static const struct ScriptCommand s_gs193_g0_s0_station_sref_script[] = { /* 0x8242bb8 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
EXECUTE_STATION(12, 0, 0),
LABEL(0), /* = 0x00 */
SELECT_MAP(193),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 11, /* to label */ 1),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
CALL_STATION( 3, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 10, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 12, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 11, /* to label */ 6),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 2),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(102),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs193_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs193_g0_s0_station_sref_script }; /* 0x8242e54 */
static const struct ScriptCommand s_gs193_g0_s0_obj0_dlg2[] = { /* 0x8242e60 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_AND_WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs193_g0_s1_lives0_dlg0[] = { /* 0x8242e80 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s1_lives1_dlg0[] = { /* 0x8242ec0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s2_lives0_dlg0[] = { /* 0x8242f00 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s2_lives1_dlg0[] = { /* 0x8242f40 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s3_lives0_dlg0[] = { /* 0x8242f80 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s3_lives1_dlg0[] = { /* 0x8242fc0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s4_lives0_dlg0[] = { /* 0x8243000 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s4_lives1_dlg0[] = { /* 0x8243030 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs193_g0_s5_obj0_dlg2[] = { /* 0x8243060 */
DEBUGINFO,
JUMP_SCRIPT(WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs193_g0_s5_obj1_dlg2[] = { /* 0x8243080 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs193_g1_s0_station_sref_script[] = { /* 0x82430a0 */
DEBUGINFO,
SELECT_MAP(193),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(24),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x0000, 0x0000000a, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs193_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs193_g1_s0_station_sref_script }; /* 0x8243130 */
static const struct ScriptCommand s_gs193_g1_s0_lives0_dlg0[] = { /* 0x824313c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
WAIT(120),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x08, 0x0001, 0x00000000, 0x00000000, NULL },
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(102),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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...")),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So many places are hit\nby the natural disasters...")),
VARIANT(/* == */ 1, _(" I bet there are many\nPokémon that need help.")),
VARIANT(/* == */ 1, _(" I'd really like to get back to\ndoing our rescue work...")),
VARIANT_DEFAULT(_(" All sorts of places have\nbeen affected by the natural disasters.")),
VARIANT_DEFAULT(_(" I'm sure many Pokémon are\nsuffering because of the calamities.")),
VARIANT_DEFAULT(_(" I wish we could get back to\ndoing our rescue work...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Sorry, I shouldn't complain.\nWe have to get away now, period.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh? I hear voices...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
WAIT(20),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I think they went this way.") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" They can't get away.\nNot from all of us.") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" We have to get rid of $n0\nquickly...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(455),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whoa!\nThey're catching up to us already?")),
VARIANT(/* == */ 1, _(" $n0, we have to\nroll.")),
VARIANT_DEFAULT(_(" Aww, no!\nAre they catching up to us?")),
VARIANT_DEFAULT(_(" $n0, we'd better\ngo.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs193_g1_s0_lives1_dlg0[] = { /* 0x824389c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x02, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x91, 0x02, 0x0002, 0x00000007, 0x00000000, NULL },
{ 0x91, 0x02, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x91, 0x02, 0x0002, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs193_g2_s0_station_sref_script[] = { /* 0x8243a1c */
DEBUGINFO,
SELECT_MAP(193),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(102),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
CALL_STATION( 3, 0),
RET,
};
static const struct ScriptRef s_gs193_g2_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs193_g2_s0_station_sref_script }; /* 0x8243aac */
static const struct ScriptCommand s_gs193_g2_s0_lives0_dlg0[] = { /* 0x8243ab8 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I think we got cocky and\ncareless, $n0.")),
VARIANT(/* == */ 1, _(" Wonder what happened to\nthe Pokémon chasing us?\nAre they in the dungeon?")),
VARIANT(/* == */ 1, _(" Well, running into them\nwould be bad trouble.\nLet's get through this...and fast.")),
VARIANT_DEFAULT(_(" I guess we got a little\ncareless, $n0.")),
VARIANT_DEFAULT(_(" I wonder what became of\nthe Pokémon chasing us?\nAre they in the dungeon?")),
VARIANT_DEFAULT(_(" We sure don't want to run\ninto them.\nLet's get through this quickly.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs193_g2_s0_lives1_dlg0[] = { /* 0x8243e64 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs193_g3_s0_station_sref_script[] = { /* 0x8243f34 */
DEBUGINFO,
SELECT_ENTITIES(-1, -1),
RET_DIRECT,
};
static const struct ScriptRef s_gs193_g3_s0_station_sref = { 403, 8, NULL /* STATION_CONTROL */, s_gs193_g3_s0_station_sref_script }; /* 0x8243f64 */
static const struct ScriptCommand s_gs193_g3_s0_lives0_dlg1[] = { /* 0x8243f70 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x00000200, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x00000400, 0x00000000, NULL },
JUMP_SCRIPT(LIVES_MOVE_NORMAL),
};
static const struct ScriptCommand s_gs193_g3_s0_lives0_dlg2[] = { /* 0x8243fb0 */
DEBUGINFO,
EXECUTE_STATION(-1, 3, 1),
HALT,
};
static const struct ScriptCommand s_gs193_g3_s0_evt0_sref_script[] = { /* 0x8243fe0 */
DEBUGINFO,
EXECUTE_STATION(-1, 3, 1),
HALT,
};
static const struct ScriptRef s_gs193_g3_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs193_g3_s0_evt0_sref_script }; /* 0x8244010 */
static const struct ScriptCommand s_gs193_g3_s1_station_sref_script[] = { /* 0x824401c */
DEBUGINFO,
SELECT_ENTITIES(-1, 1),
CANCEL_ENTITIES(-1, 0),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs193_g3_s1_station_sref = { 401, 7, NULL /* EVENT_WAKEUP */, s_gs193_g3_s1_station_sref_script }; /* 0x824406c */
static const struct ScriptCommand s_gs193_g3_s1_lives0_dlg0[] = { /* 0x8244078 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x8e, 0x01, 0x0000, 0x00000022, 0x00000000, NULL },
ASK3_VAR(FALSE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" Hey, $n0.\nAre you all ready?")),
VARIANT_DEFAULT(_(" Hi, $n0.\nAre you ready?")),
CHOICE(/* label */ 0, _("All set!")),
CHOICE(/* label */ 1, _("Not yet.")),
LABEL(1), /* = 0x01 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right.\nWe'll go when you're ready.")),
VARIANT_DEFAULT(_(" OK.\nLet's go when you're ready.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
ASK3( TRUE, /*default*/ 0, /* speaker */ 1, _(" Which way should we go?")),
CHOICE(/* label */ 2, _("Lapis Cave.")),
CHOICE(/* label */ 3, _("Rock Path.")),
JUMP_LABEL(1),
LABEL(2), /* = 0x02 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll out!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 4),
COND_EQUAL(3, /* to label */ 4),
COND_EQUAL(2, /* to label */ 4),
COND_EQUAL(5, /* to label */ 4),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x23, 0x00, 0x0046, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
JUMP_LABEL(5),
LABEL(4), /* = 0x04 */
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0046, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
LABEL(5), /* = 0x05 */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x07, 0x00, 0x001e, 0x0000000a, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
LABEL(3), /* = 0x03 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll out!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(2, /* to label */ 6),
COND_EQUAL(3, /* to label */ 6),
COND_EQUAL(4, /* to label */ 6),
COND_EQUAL(5, /* to label */ 6),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x00, 0x0046, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
JUMP_LABEL(7),
LABEL(6), /* = 0x06 */
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x00, 0x0046, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
LABEL(7), /* = 0x07 */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x06, 0x00, 0x001e, 0x0000004e, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptCommand s_gs193_g3_s1_lives1_dlg0[] = { /* 0x8244648 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x00000400, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x8e, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(0),
COND_EQUAL(0, /* to label */ 0),
COND_EQUAL(1, /* to label */ 0),
COND_EQUAL(7, /* to label */ 0),
COND_EQUAL(6, /* to label */ 0),
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
LABEL(0), /* = 0x00 */
{ 0x91, 0x04, 0x000b, 0x00000003, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs193_g4_s0_station_sref_script[] = { /* 0x8244768 */
DEBUGINFO,
SELECT_MAP(193),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(102),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
CALL_STATION( 3, 0),
RET,
};
static const struct ScriptRef s_gs193_g4_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs193_g4_s0_station_sref_script }; /* 0x82447f8 */
static const struct ScriptCommand s_gs193_g4_s0_lives0_dlg0[] = { /* 0x8244804 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x89, 0x20, 0x0100, 0x00000007, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What the...?#W\nIsn't this where we started from?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(468),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#W\nI guess that path just loops back to the\nstart.")),
VARIANT(/* == */ 1, _(" If we want to move on,\nI think our only choice is the #CDLapis Cave#R.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" ............#W\nI guess that path we took just loops back\nto where it started.")),
VARIANT_DEFAULT(_(" It looks like we have to go\nthrough the #CDLapis Cave#R to move on.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs193_g4_s0_lives1_dlg0[] = { /* 0x8244bb4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x30, 0x0100, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe5, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs193_g5_s0_station_sref_script[] = { /* 0x8244c94 */
DEBUGINFO,
SELECT_MAP(193),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(102),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
CALL_STATION( 3, 0),
RET,
};
static const struct ScriptRef s_gs193_g5_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs193_g5_s0_station_sref_script }; /* 0x8244d24 */
static const struct ScriptCommand s_gs193_g5_s0_lives0_dlg0[] = { /* 0x8244d30 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We have to get through this\nfast, or they'll catch up to us.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" If we don't get through here\nfast, they'll catch up to us.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs193_g5_s0_lives1_dlg0[] = { /* 0x8244f58 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs193_g0_s0_lives[] = { /* 0x8245028 */
/* 0 */ { 144, 0, 0, 0, { 10, 21, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs193_g0_s1_lives[] = { /* 0x8245040 */
/* 0 */ { 0, 2, 0, 0, { 7, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 2, 0, 0, { 3, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g0_s2_lives[] = { /* 0x8245070 */
/* 0 */ { 0, 0, 0, 0, { 34, 21, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s2_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 34, 19, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s2_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g0_s3_lives[] = { /* 0x82450a0 */
/* 0 */ { 0, 2, 0, 0, { 7, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 2, 0, 0, { 3, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g0_s4_lives[] = { /* 0x82450d0 */
/* 0 */ { 0, 2, 0, 0, { 7, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 2, 0, 0, { 3, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs193_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g0_s5_lives[] = { /* 0x8245100 */
/* 0 */ { 144, 0, 0, 0, { 10, 21, 0, CPOS_HALFTILE }, {} },
/* 1 */ { 145, 0, 0, 0, { 8, 31, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs193_g1_s0_lives[] = { /* 0x8245130 */
/* 0 */ { 0, 2, 0, 0, { 3, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 8, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g2_s0_lives[] = { /* 0x8245160 */
/* 0 */ { 0, 2, 0, 0, { 22, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 27, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g2_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g3_s0_lives[] = { /* 0x8245190 */
/* 0 */ { 34, 0, 0, 0, { 27, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs193_g3_s0_lives0_dlg1,
[2] = s_gs193_g3_s0_lives0_dlg2,
} },
};
static const struct GroundLivesData s_gs193_g3_s1_lives[] = { /* 0x82451a8 */
/* 0 */ { 0, 2, 0, 0, { 23, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g3_s1_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 27, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g3_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g4_s0_lives[] = { /* 0x82451d8 */
/* 0 */ { 0, 2, 0, 0, { 26, 22, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g4_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 33, 20, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g4_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs193_g5_s0_lives[] = { /* 0x8245208 */
/* 0 */ { 0, 2, 0, 0, { 22, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g5_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 27, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs193_g5_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs193_g0_s0_objs[] = { /* 0x8245238 */
/* 0 */ { 4, 0, 4, 2, { 10, 22, 0, 0 }, {
[2] = s_gs193_g0_s0_obj0_dlg2,
} },
};
static const struct GroundObjectData s_gs193_g0_s5_objs[] = { /* 0x8245250 */
/* 0 */ { 4, 0, 4, 2, { 10, 22, 0, 0 }, {
[2] = s_gs193_g0_s5_obj0_dlg2,
} },
/* 1 */ { 4, 0, 4, 3, { 8, 31, 0, CPOS_HALFTILE }, {
[2] = s_gs193_g0_s5_obj1_dlg2,
} },
};
static const struct GroundEffectData s_gs193_g1_s0_effs[] = { /* 0x8245280 */
/* 0 */ { 0, 0, 1, 1, { 27, 25, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs193_g2_s0_effs[] = { /* 0x824528c */
/* 0 */ { 0, 0, 1, 1, { 24, 24, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs193_g4_s0_effs[] = { /* 0x8245298 */
/* 0 */ { 0, 0, 1, 1, { 24, 24, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs193_g5_s0_effs[] = { /* 0x82452a4 */
/* 0 */ { 0, 0, 1, 1, { 24, 24, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs193_g3_s0_evts[] = { /* 0x82452b0 */
/* 0 */ { 12, 3, 0, 0, { 28, 16, 0, 0 }, &s_gs193_g3_s0_evt0_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82452bc */
&s_gs193_g0_s0_station_sref,
&s_gs193_g1_s0_station_sref,
&s_gs193_g2_s0_station_sref,
&s_gs193_g3_s0_station_sref,
&s_gs193_g3_s1_station_sref,
&s_gs193_g4_s0_station_sref,
&s_gs193_g5_s0_station_sref,
};
static const struct GroundScriptSector s_gs193_g0_sectors[] = { /* 0x82452d8 */
{ LPARRAY(s_gs193_g0_s0_lives), LPARRAY(s_gs193_g0_s0_objs), 0,NULL, 0,NULL, 1,&sStationScripts[0], },
{ LPARRAY(s_gs193_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs193_g0_s2_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs193_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs193_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs193_g0_s5_lives), LPARRAY(s_gs193_g0_s5_objs), 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs193_g1_sectors[] = { /* 0x82453c8 */
{ LPARRAY(s_gs193_g1_s0_lives), 0,NULL, LPARRAY(s_gs193_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs193_g2_sectors[] = { /* 0x82453f0 */
{ LPARRAY(s_gs193_g2_s0_lives), 0,NULL, LPARRAY(s_gs193_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs193_g3_sectors[] = { /* 0x8245418 */
{ LPARRAY(s_gs193_g3_s0_lives), 0,NULL, 0,NULL, LPARRAY(s_gs193_g3_s0_evts), 1,&sStationScripts[3], },
{ LPARRAY(s_gs193_g3_s1_lives), 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[4], },
};
static const struct GroundScriptSector s_gs193_g4_sectors[] = { /* 0x8245468 */
{ LPARRAY(s_gs193_g4_s0_lives), 0,NULL, LPARRAY(s_gs193_g4_s0_effs), 0,NULL, 1,&sStationScripts[5], },
};
static const struct GroundScriptSector s_gs193_g5_sectors[] = { /* 0x8245490 */
{ LPARRAY(s_gs193_g5_s0_lives), 0,NULL, LPARRAY(s_gs193_g5_s0_effs), 0,NULL, 1,&sStationScripts[6], },
};
static const struct GroundScriptGroup s_gs193_groups[] = { /* 0x82454b8 */
{ LPARRAY(s_gs193_g0_sectors) },
{ LPARRAY(s_gs193_g1_sectors) },
{ LPARRAY(s_gs193_g2_sectors) },
{ LPARRAY(s_gs193_g3_sectors) },
{ LPARRAY(s_gs193_g4_sectors) },
{ LPARRAY(s_gs193_g5_sectors) },
};
static const struct GroundLink s_gs193_links[] = { /* 0x82454e8 */
/* link 0 */ { { /*x*/ 25, /*y*/ 26, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 29, /*y*/ 26, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 34, /*y*/ 17, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs193 = { LPARRAY(s_gs193_groups), s_gs193_links }; /* 0x8245500 */

View File

@@ -0,0 +1,148 @@
static const struct ScriptCommand s_gs194_g0_s0_station_sref_script[] = { /* 0x8245514 */
DEBUGINFO,
SELECT_MAP(194),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs194_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs194_g0_s0_station_sref_script }; /* 0x8245580 */
static const struct ScriptCommand s_gs194_g1_s0_station_sref_script[] = { /* 0x824558c */
DEBUGINFO,
SELECT_MAP(194),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Stop right there!\nDon't let them get away!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Sure. Like we're really\ngoing to wait because they said so.")),
VARIANT_DEFAULT(_(" They expect us to stop and\nwait for them?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs194_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs194_g1_s0_station_sref_script }; /* 0x8245728 */
static const struct ScriptCommand s_gs194_g1_s0_lives0_dlg0[] = { /* 0x8245734 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(45),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000022, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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?")),
VARIANT_DEFAULT(_(" Whew!\nFinally, we made it through that cave.")),
VARIANT_DEFAULT(_(" Where's the Pokémon mob\nthat's after us?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Hey, look! There they are!\nOver there!") },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Catch $n0!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Whoa! Here they come!\nRun!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x89, 0x50, 0x0200, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs194_g1_s0_lives1_dlg0[] = { /* 0x8245ab0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0200, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs194_g1_s0_lives[] = { /* 0x8245c00 */
/* 0 */ { 0, 0, 0, 0, { 10, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs194_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 12, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs194_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs194_g1_s0_effs[] = { /* 0x8245c30 */
/* 0 */ { 0, 0, 1, 1, { 17, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8245c3c */
&s_gs194_g0_s0_station_sref,
&s_gs194_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs194_g0_sectors[] = { /* 0x8245c44 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs194_g1_sectors[] = { /* 0x8245c6c */
{ LPARRAY(s_gs194_g1_s0_lives), 0,NULL, LPARRAY(s_gs194_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs194_groups[] = { /* 0x8245c94 */
{ LPARRAY(s_gs194_g0_sectors) },
{ LPARRAY(s_gs194_g1_sectors) },
};
static const struct GroundLink s_gs194_links[] = { /* 0x8245ca4 */
/* link 0 */ { { /*x*/ 15, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 19, /*y*/ 24, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs194 = { LPARRAY(s_gs194_groups), s_gs194_links }; /* 0x8245cb4 */

View File

@@ -0,0 +1,836 @@
static const struct ScriptCommand s_gs195_g0_s0_station_sref_script[] = { /* 0x8245cc8 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
EXECUTE_STATION(12, 0, 0),
LABEL(0), /* = 0x00 */
SELECT_MAP(195),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 12, /* to label */ 1),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_ENTITIES(2, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 10, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 12, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 11, /* to label */ 6),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 2),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(25),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs195_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs195_g0_s0_station_sref_script }; /* 0x8245f84 */
static const struct ScriptCommand s_gs195_g0_s0_obj0_dlg2[] = { /* 0x8245f90 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_AND_WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs195_g0_s1_lives0_dlg0[] = { /* 0x8245fb0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s1_lives1_dlg0[] = { /* 0x8245ff0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s2_lives0_dlg0[] = { /* 0x8246030 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s2_lives1_dlg0[] = { /* 0x8246070 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s3_lives0_dlg0[] = { /* 0x82460b0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s3_lives1_dlg0[] = { /* 0x82460f0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s4_lives0_dlg0[] = { /* 0x8246130 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s4_lives1_dlg0[] = { /* 0x8246160 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs195_g0_s5_obj0_dlg2[] = { /* 0x8246190 */
DEBUGINFO,
JUMP_SCRIPT(WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs195_g0_s5_obj1_dlg2[] = { /* 0x82461b0 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs195_g1_s0_station_sref_script[] = { /* 0x82461d0 */
DEBUGINFO,
BGM_STOP,
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
SELECT_MAP(195),
SELECT_WEATHER(13),
SELECT_ENTITIES(-1, 0),
WAIT(4),
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Darn it!\nWhere'd they go?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" They had to go this way!\nKeep your eyes open!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Rooooooaaaar!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(503),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Tromp, tromp, tromp, tromp, tromp!") },
WAIT(120),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("........................") },
WAIT(120),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ........................") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...I think...#W\nThey're gone.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_SWITCH(25),
{ 0x3b, 0x3a, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs195_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs195_g1_s0_station_sref_script }; /* 0x82464f8 */
static const struct ScriptCommand s_gs195_g1_s0_eff0_script[] = { /* 0x8246504 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs195_g1_s0_lives0_dlg0[] = { /* 0x8246544 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(30),
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(20),
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
WAIT(10),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But...#W\nThere's no point hiding out here.")),
VARIANT_DEFAULT(_(" But...#W\nThere isn't any point hiding here.")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" We have to get over this\nmountain to get away.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0, we need to\nroll as soon as we're ready.")),
VARIANT_DEFAULT(_(" Let's go as soon as we're\nready, $n0.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs195_g1_s0_lives1_dlg0[] = { /* 0x824696c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x014c, 0x00000003, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000004, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(15),
{ 0x6b, 0x00, 0x0100, 0x00000005, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs195_g2_s0_station_sref_script[] = { /* 0x8246acc */
DEBUGINFO,
SELECT_ENTITIES(-1, -1),
RET_DIRECT,
};
static const struct ScriptRef s_gs195_g2_s0_station_sref = { 403, 8, NULL /* STATION_CONTROL */, s_gs195_g2_s0_station_sref_script }; /* 0x8246afc */
static const struct ScriptCommand s_gs195_g2_s0_lives0_dlg2[] = { /* 0x8246b08 */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptCommand s_gs195_g2_s0_evt0_sref_script[] = { /* 0x8246b38 */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptRef s_gs195_g2_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs195_g2_s0_evt0_sref_script }; /* 0x8246b68 */
static const struct ScriptCommand s_gs195_g2_s1_station_sref_script[] = { /* 0x8246b74 */
DEBUGINFO,
SELECT_ENTITIES(-1, 1),
CANCEL_ENTITIES(-1, 0),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs195_g2_s1_station_sref = { 401, 7, NULL /* EVENT_WAKEUP */, s_gs195_g2_s1_station_sref_script }; /* 0x8246bc4 */
static const struct ScriptCommand s_gs195_g2_s1_lives0_dlg0[] = { /* 0x8246bd0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x8e, 0x01, 0x0000, 0x00000022, 0x00000000, NULL },
ASK3_VAR( TRUE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" $n0, are you ready\nto roll?")),
VARIANT_DEFAULT(_(" $n0, are you\nready?")),
CHOICE(/* label */ 2, _("Yes.")),
CHOICE(/* label */ 3, _("*Not yet.")),
LABEL(3), /* = 0x03 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'll wait while you get ready.")),
VARIANT(/* == */ 1, _(" Other Pokémon are\nwandering about, so make it quick.")),
VARIANT_DEFAULT(_(" I'll be waiting while you get\nready.")),
VARIANT_DEFAULT(_(" Try to be quick.\nOther Pokémon are out looking for us.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
JUMP_SCRIPT(END_TALK),
LABEL(2), /* = 0x02 */
ASK3( TRUE, /*default*/ 0, /* speaker */ 1, _(" Which way should we go?")),
CHOICE(/* label */ 5, _("Mt. Blaze.")),
CHOICE(/* label */ 6, _("Rock Path.")),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll on out!")),
VARIANT(/* == */ 1, _(" It looks like one wicked\nplace, but let's give it our best!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
VARIANT_DEFAULT(_(" It sounds very rough,\nbut let's try our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 7),
COND_EQUAL(3, /* to label */ 7),
COND_EQUAL(5, /* to label */ 7),
WAIT(20),
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
WAIT(20),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
LABEL(8), /* = 0x08 */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x07, 0x00, 0x001e, 0x0000000b, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
LABEL(6), /* = 0x06 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Sure thing!\nLet's roll on out!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 9),
COND_EQUAL(3, /* to label */ 9),
COND_EQUAL(5, /* to label */ 9),
WAIT(20),
BGM_FADEOUT(60),
{ 0x23, 0x00, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
JUMP_LABEL(10),
LABEL(9), /* = 0x09 */
WAIT(20),
BGM_FADEOUT(60),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
LABEL(10), /* = 0x0a */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x06, 0x00, 0x001e, 0x0000004e, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
};
static const struct ScriptCommand s_gs195_g2_s1_lives1_dlg0[] = { /* 0x8247300 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x00000400, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x8e, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(0),
COND_EQUAL(0, /* to label */ 0),
COND_EQUAL(1, /* to label */ 0),
COND_EQUAL(7, /* to label */ 0),
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
LABEL(0), /* = 0x00 */
{ 0x91, 0x04, 0x000b, 0x00000005, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0099, 0x00000006, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs195_g3_s0_station_sref_script[] = { /* 0x8247450 */
DEBUGINFO,
SELECT_MAP(195),
SELECT_WEATHER(13),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(25),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs195_g3_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs195_g3_s0_station_sref_script }; /* 0x82474e0 */
static const struct ScriptCommand s_gs195_g3_s0_lives0_dlg0[] = { /* 0x82474ec */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(463),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x08, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Ssh!#W\nSomeone's coming.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0200, 0x00000007, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000008, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Where are they?\n$n0 and that sidekick.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Do you think they tried getting over\nMt. Blaze?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" No, that's impossible.#W\nNobody could ever get past it.") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" They should be around here still.\nKeep looking!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Rooooooaaaar!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(503),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Tromp, tromp, tromp, tromp, tromp!") },
WAIT(120),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("........................") },
WAIT(120),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ........................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0200, 0x00000007, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
WAIT(10),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000007, 0x00000000, NULL },
WAIT(20),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...Whew.") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs195_g3_s0_lives1_dlg0[] = { /* 0x8247b14 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0200, 0x00000009, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x0000000a, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0200, 0x00000009, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000005, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x91, 0x04, 0x000b, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs195_g4_s0_station_sref_script[] = { /* 0x8247c94 */
DEBUGINFO,
SELECT_MAP(195),
SELECT_WEATHER(13),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(25),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs195_g4_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs195_g4_s0_station_sref_script }; /* 0x8247d24 */
static const struct ScriptCommand s_gs195_g4_s0_lives0_dlg0[] = { /* 0x8247d30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What the...?#W\nIsn't this where we started from?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(468),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#W\nI guess that path just loops back to the\nstart.")),
VARIANT(/* == */ 1, _(" If we want to move on,\nI think our only choice is #CDMt. Blaze#R.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" ............#W\nI guess that path we took just loops back\nto where it started.")),
VARIANT_DEFAULT(_(" It looks like we have to go\nover #CDMt. Blaze#R to move on.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs195_g4_s0_lives1_dlg0[] = { /* 0x82480b4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x40, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe5, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs195_g5_s0_station_sref_script[] = { /* 0x8248194 */
DEBUGINFO,
SELECT_MAP(195),
SELECT_WEATHER(13),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(25),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs195_g5_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs195_g5_s0_station_sref_script }; /* 0x8248224 */
static const struct ScriptCommand s_gs195_g5_s0_lives0_dlg0[] = { /* 0x8248230 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We have to get through this\nfast, or they'll catch up to us.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" If we don't get through here\nfast, they'll catch up to us.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs195_g5_s0_lives1_dlg0[] = { /* 0x8248458 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs195_g0_s0_lives[] = { /* 0x8248528 */
/* 0 */ { 144, 0, 0, 0, { 28, 30, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs195_g0_s1_lives[] = { /* 0x8248540 */
/* 0 */ { 0, 4, 0, 0, { 22, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 22, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g0_s2_lives[] = { /* 0x8248570 */
/* 0 */ { 0, 0, 0, 0, { 22, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s2_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 22, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s2_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g0_s3_lives[] = { /* 0x82485a0 */
/* 0 */ { 0, 4, 0, 0, { 22, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 22, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g0_s4_lives[] = { /* 0x82485d0 */
/* 0 */ { 0, 4, 0, 0, { 22, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 22, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs195_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g0_s5_lives[] = { /* 0x8248600 */
/* 0 */ { 144, 0, 0, 0, { 28, 30, 0, CPOS_HALFTILE }, {} },
/* 1 */ { 145, 0, 0, 0, { 28, 35, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs195_g1_s0_lives[] = { /* 0x8248630 */
/* 0 */ { 0, 3, 0, 0, { 3, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 3, 0, 0, { 4, 36, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g2_s0_lives[] = { /* 0x8248660 */
/* 0 */ { 34, 0, 0, 0, { 24, 26, 0, CPOS_HALFTILE }, {
[2] = s_gs195_g2_s0_lives0_dlg2,
} },
};
static const struct GroundLivesData s_gs195_g2_s1_lives[] = { /* 0x8248678 */
/* 0 */ { 0, 2, 0, 0, { 21, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g2_s1_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g2_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g3_s0_lives[] = { /* 0x82486a8 */
/* 0 */ { 0, 2, 0, 0, { 21, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g3_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g4_s0_lives[] = { /* 0x82486d8 */
/* 0 */ { 0, 2, 0, 0, { 21, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g4_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 22, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g4_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs195_g5_s0_lives[] = { /* 0x8248708 */
/* 0 */ { 0, 2, 0, 0, { 21, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g5_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 24, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs195_g5_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs195_g0_s0_objs[] = { /* 0x8248738 */
/* 0 */ { 4, 0, 4, 3, { 28, 30, 0, CPOS_HALFTILE }, {
[2] = s_gs195_g0_s0_obj0_dlg2,
} },
};
static const struct GroundObjectData s_gs195_g0_s5_objs[] = { /* 0x8248750 */
/* 0 */ { 4, 0, 4, 3, { 28, 30, 0, CPOS_HALFTILE }, {
[2] = s_gs195_g0_s5_obj0_dlg2,
} },
/* 1 */ { 4, 0, 4, 3, { 28, 35, 0, CPOS_HALFTILE }, {
[2] = s_gs195_g0_s5_obj1_dlg2,
} },
};
static const struct GroundEffectData s_gs195_g1_s0_effs[] = { /* 0x8248780 */
/* 0 */ { 0, 0, 1, 1, { 22, 25, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs195_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs195_g3_s0_effs[] = { /* 0x824878c */
/* 0 */ { 0, 0, 1, 1, { 22, 25, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs195_g4_s0_effs[] = { /* 0x8248798 */
/* 0 */ { 0, 0, 1, 1, { 22, 25, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs195_g5_s0_effs[] = { /* 0x82487a4 */
/* 0 */ { 0, 0, 1, 1, { 22, 25, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs195_g2_s0_evts[] = { /* 0x82487b0 */
/* 0 */ { 12, 3, 0, 0, { 17, 19, 0, 0 }, &s_gs195_g2_s0_evt0_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82487bc */
&s_gs195_g0_s0_station_sref,
&s_gs195_g1_s0_station_sref,
&s_gs195_g2_s0_station_sref,
&s_gs195_g2_s1_station_sref,
&s_gs195_g3_s0_station_sref,
&s_gs195_g4_s0_station_sref,
&s_gs195_g5_s0_station_sref,
};
static const struct GroundScriptSector s_gs195_g0_sectors[] = { /* 0x82487d8 */
{ LPARRAY(s_gs195_g0_s0_lives), LPARRAY(s_gs195_g0_s0_objs), 0,NULL, 0,NULL, 1,&sStationScripts[0], },
{ LPARRAY(s_gs195_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs195_g0_s2_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs195_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs195_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs195_g0_s5_lives), LPARRAY(s_gs195_g0_s5_objs), 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs195_g1_sectors[] = { /* 0x82488c8 */
{ LPARRAY(s_gs195_g1_s0_lives), 0,NULL, LPARRAY(s_gs195_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs195_g2_sectors[] = { /* 0x82488f0 */
{ LPARRAY(s_gs195_g2_s0_lives), 0,NULL, 0,NULL, LPARRAY(s_gs195_g2_s0_evts), 1,&sStationScripts[2], },
{ LPARRAY(s_gs195_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptSector s_gs195_g3_sectors[] = { /* 0x8248940 */
{ LPARRAY(s_gs195_g3_s0_lives), 0,NULL, LPARRAY(s_gs195_g3_s0_effs), 0,NULL, 1,&sStationScripts[4], },
};
static const struct GroundScriptSector s_gs195_g4_sectors[] = { /* 0x8248968 */
{ LPARRAY(s_gs195_g4_s0_lives), 0,NULL, LPARRAY(s_gs195_g4_s0_effs), 0,NULL, 1,&sStationScripts[5], },
};
static const struct GroundScriptSector s_gs195_g5_sectors[] = { /* 0x8248990 */
{ LPARRAY(s_gs195_g5_s0_lives), 0,NULL, LPARRAY(s_gs195_g5_s0_effs), 0,NULL, 1,&sStationScripts[6], },
};
static const struct GroundScriptGroup s_gs195_groups[] = { /* 0x82489b8 */
{ LPARRAY(s_gs195_g0_sectors) },
{ LPARRAY(s_gs195_g1_sectors) },
{ LPARRAY(s_gs195_g2_sectors) },
{ LPARRAY(s_gs195_g3_sectors) },
{ LPARRAY(s_gs195_g4_sectors) },
{ LPARRAY(s_gs195_g5_sectors) },
};
static const struct GroundLink s_gs195_links[] = { /* 0x82489e8 */
/* link 0 */ { { /*x*/ 11, /*y*/ 37, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 17, /*y*/ 30, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 21, /*y*/ 26, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 15, /*y*/ 36, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 4 */ { { /*x*/ 21, /*y*/ 29, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 5 */ { { /*x*/ 24, /*y*/ 26, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 6 */ { { /*x*/ 22, /*y*/ 20, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 7 */ { { /*x*/ 11, /*y*/ 37, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 8 */ { { /*x*/ 3, /*y*/ 37, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 9 */ { { /*x*/ 15, /*y*/ 36, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 10 */ { { /*x*/ 4, /*y*/ 36, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs195 = { LPARRAY(s_gs195_groups), s_gs195_links }; /* 0x8248a40 */

View File

@@ -0,0 +1,281 @@
static const struct ScriptCommand s_gs196_g0_s0_station_sref_script[] = { /* 0x8248a54 */
DEBUGINFO,
SELECT_MAP(196),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 12, /* to label */ 0),
COND(JUDGE_GT, 17, /* to label */ 1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 5),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 6),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(7),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 1),
JUMP_LABEL(7),
LABEL(7), /* = 0x07 */
BGM_SWITCH(25),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs196_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs196_g0_s0_station_sref_script }; /* 0x8248cc0 */
static const struct ScriptCommand s_gs196_g0_s0_evt0_sref_script[] = { /* 0x8248ccc */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Keep going?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x02, 0x00, 0x001e, 0x0000000c, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs196_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs196_g0_s0_evt0_sref_script }; /* 0x8248da8 */
static const struct ScriptCommand s_gs196_g0_s0_evt1_sref_script[] = { /* 0x8248db4 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 1, _("Yes.")),
CHOICE(/* label */ 2, _("*No.")),
LABEL(2), /* = 0x02 */
JUMP_SCRIPT(END_TALK),
LABEL(1), /* = 0x01 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
LABEL(0), /* = 0x00 */
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the entrance?")),
CHOICE(/* label */ 3, _("Yes.")),
CHOICE(/* label */ 4, _("*No.")),
LABEL(4), /* = 0x04 */
JUMP_SCRIPT(END_TALK),
LABEL(3), /* = 0x03 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x01, 0x00, 0x001e, 0x000000c3, 0x00000000, NULL },
HALT,
};
static const struct ScriptRef s_gs196_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs196_g0_s0_evt1_sref_script }; /* 0x8248f7c */
static const struct ScriptCommand s_gs196_g0_s0_obj0_dlg2[] = { /* 0x8248f88 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs196_g0_s1_lives0_dlg0[] = { /* 0x8248fa8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g0_s1_lives1_dlg0[] = { /* 0x8248fe8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g0_s3_lives0_dlg0[] = { /* 0x8249028 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g0_s3_lives1_dlg0[] = { /* 0x8249068 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g0_s4_lives0_dlg0[] = { /* 0x82490a8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g0_s4_lives1_dlg0[] = { /* 0x82490d8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs196_g1_s0_station_sref_script[] = { /* 0x8249108 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 196),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 196),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(196),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(25),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs196_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs196_g1_s0_station_sref_script }; /* 0x82491d8 */
static const struct ScriptCommand s_gs196_g1_s0_lives0_dlg0[] = { /* 0x82491e4 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nThat didn't work out...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But we almost made it.#W\nLet's give it our best again!")),
VARIANT_DEFAULT(_(" But we came close.#W\nLet's keep doing our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs196_g1_s0_lives1_dlg0[] = { /* 0x8249404 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs196_g0_s0_lives[] = { /* 0x82494c4 */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs196_g0_s1_lives[] = { /* 0x82494dc */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs196_g0_s3_lives[] = { /* 0x824950c */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs196_g0_s4_lives[] = { /* 0x824953c */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs196_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs196_g1_s0_lives[] = { /* 0x824956c */
/* 0 */ { 0, 2, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs196_g1_s0_lives0_dlg0,
} },
/* 1 */ { 4, 6, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs196_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs196_g0_s0_objs[] = { /* 0x824959c */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs196_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs196_g1_s0_effs[] = { /* 0x82495b4 */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs196_g0_s0_evts[] = { /* 0x82495c0 */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs196_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs196_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82495d8 */
&s_gs196_g0_s0_station_sref,
&s_gs196_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs196_g0_sectors[] = { /* 0x82495e0 */
{ LPARRAY(s_gs196_g0_s0_lives), LPARRAY(s_gs196_g0_s0_objs), 0,NULL, LPARRAY(s_gs196_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs196_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs196_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs196_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs196_g1_sectors[] = { /* 0x82496a8 */
{ LPARRAY(s_gs196_g1_s0_lives), 0,NULL, LPARRAY(s_gs196_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs196_groups[] = { /* 0x82496d0 */
{ LPARRAY(s_gs196_g0_sectors) },
{ LPARRAY(s_gs196_g1_sectors) },
};
static const struct GroundLink s_gs196_links[] = { /* 0x82496e0 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs196 = { LPARRAY(s_gs196_groups), s_gs196_links }; /* 0x82496e8 */

View File

@@ -0,0 +1,451 @@
static const struct ScriptCommand s_gs197_g0_s0_station_sref_script[] = { /* 0x82496fc */
DEBUGINFO,
SELECT_MAP(197),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs197_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs197_g0_s0_station_sref_script }; /* 0x8249768 */
static const struct ScriptCommand s_gs197_g1_s0_station_sref_script[] = { /* 0x8249774 */
DEBUGINFO,
SELECT_MAP(197),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs197_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs197_g1_s0_station_sref_script }; /* 0x82497f4 */
static const struct ScriptCommand s_gs197_g1_s0_eff0_script[] = { /* 0x8249800 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x18, 0x0200, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x30, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs197_g1_s0_lives0_dlg0[] = { /* 0x82498b0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _("Urggggh!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I'm not done!\nI'm not finished yet!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(460),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(455),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x2e, 0x02, 0x0001, 0x00000007, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wait!\nHold it!")),
VARIANT(/* == */ 1, _(" We didn't come to cause any\ntrouble.")),
VARIANT(/* == */ 3, _(" Wait! Please listen!")),
VARIANT(/* == */ 3, _(" We're not here to cause\nany trouble.")),
VARIANT_DEFAULT(_(" Wait! Listen!")),
VARIANT_DEFAULT(_(" We're not here to cause\ntrouble.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We came here because we\nwere chased here.")),
VARIANT(/* == */ 1, _(" And listen, this mountain\nisn't the only place that is suffering.")),
VARIANT(/* == */ 1, _(" Natural disasters are\nbreaking out all over the place.")),
VARIANT(/* == */ 1, _(" We can't do anything to help\nbecause we're on the run now...")),
VARIANT(/* == */ 1, _(" But we want to help\nPokémon that are suffering from these\nnatural disasters.")),
VARIANT(/* == */ 3, _(" We were chased to this\nmountain...")),
VARIANT(/* == */ 3, _(" And you should know, this\nmountain isn't the only place that is\nsuffering.")),
VARIANT(/* == */ 3, _(" Natural calamities are\nhappening in all sorts of places.")),
VARIANT(/* == */ 3, _(" We can't do anything\nbecause we're fugitives now.")),
VARIANT(/* == */ 3, _(" But we want to help\nPokémon in these times of natural\ndisasters.")),
VARIANT_DEFAULT(_(" We're here only because\nwe were chased here.")),
VARIANT_DEFAULT(_(" You have to realize, this\nmountain isn't the only place that's\nsuffering.")),
VARIANT_DEFAULT(_(" Natural calamities are\noccurring all over the place.")),
VARIANT_DEFAULT(_(" We're fugitives now, so\nwe can't do anything...")),
VARIANT_DEFAULT(_(" But we want to help other\nPokémon that are suffering from these\nnatural disasters.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ..................#W\nDo you say that sincerely?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" I'm not lying to you.\nBelieve me.")),
VARIANT(/* == */ 1, _(" If you think I'm lying...#W\nLook at my eyes!")),
VARIANT(/* == */ 3, _(" It's true!\nPlease believe me!")),
VARIANT(/* == */ 3, _(" If you think I'm lying...#W\nPlease, look at my eyes!")),
VARIANT_DEFAULT(_(" It's true!\nPlease believe me!")),
VARIANT_DEFAULT(_(" If you think I'm lying...#W\nLook at my eyes!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ......") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ........................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ....................................") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaaah!") },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
FANFARE_PLAY2(492),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x0000000a, 0x00ffffff, NULL },
WAIT(10),
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x0000000a, 0x00ffffff, NULL },
WAIT(90),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(5),
CALL_SCRIPT(SPREE_START_FUNC),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Aiyiyiyi!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SPREE_END_FUNC),
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WFine.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I trust that you aren't lying.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whew... That was rough...")),
VARIANT(/* == */ 1, _(" I thought I would keel over.")),
VARIANT(/* == */ 3, _(" Whew... My gosh...")),
VARIANT(/* == */ 3, _(" I thought my knees turned\nto jelly.")),
VARIANT_DEFAULT(_(" Whew... That was scary...")),
VARIANT_DEFAULT(_(" It felt like my knees turned\nto jelly.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You may pass.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Get through Mt. Blaze.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" And...#W\nPromise me this.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Promise me that you will\nfind the cause of the calamities that\nwrack our world...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" And stop the disasters\nfrom sowing more destruction and\nsuffering.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(4),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right.\nI promise.")),
VARIANT(/* == */ 1, _(" ...Of course, we can't get\nto that right away, but...")),
VARIANT_DEFAULT(_(" OK. I promise.")),
VARIANT_DEFAULT(_(" ...Of course, that's not\npossible right now, but...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaah!") },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
FANFARE_PLAY2(492),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x0000000a, 0x00ffffff, NULL },
WAIT(10),
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x0000000a, 0x00ffffff, NULL },
WAIT(90),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000007, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Whoa, whoa, whoa!\nWe'll get to it! Right away!")),
VARIANT(/* == */ 3, _(" Aiyiyi!\nWe will! We will do it right away!")),
VARIANT_DEFAULT(_(" Waaah!\nWe will! We'll get on it!")),
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" We're fugitives, so we can't\nget to it right away...")),
VARIANT(/* == */ 1, _(" But we're a rescue team.")),
VARIANT(/* == */ 1, _(" We'll get to the bottom of\nwhat's causing the natural disasters.#W\nI promise.")),
VARIANT(/* == */ 3, _(" We're being chased, so we\ncan't get on it right away...")),
VARIANT(/* == */ 3, _(" But we're a rescue team.")),
VARIANT(/* == */ 3, _(" We'll get to the bottom of\nwhat's causing the natural calamities.#W\nI promise.")),
VARIANT_DEFAULT(_(" We're being hunted, so we\ncan't get to it right away...")),
VARIANT_DEFAULT(_(" But we're a rescue team.")),
VARIANT_DEFAULT(_(" We'll investigate what's\nbehind the natural calamities.#W\nI promise.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#W\nI will hold you to that promise.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You've made me believe that\nyou will honor that promise.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" If you do not forget...#W\nthe courage you showed in facing me.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(474),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaaaaaaah!") },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
WAIT(80),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Waaaah!\nIs...is there anything else?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SPREE_END_FUNC),
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" No.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I was only preparing to\ntake off.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(470),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
WAIT(15),
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh...\n(Does it need to do that?)") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Farewell!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaaaaah!") },
FANFARE_PLAY2(459),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(100),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(470),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000b, 0x00000006, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Whew...") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000007, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Awww, sheesh, that was\nscary!")),
VARIANT_DEFAULT(_(" Ewwwwwww, that was\nscary!")),
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But I'm glad $n2\nunderstood us. Really.")),
VARIANT(/* == */ 1, _(" So, anyway...#W\nWe should get off Mt. Blaze ourselves.")),
VARIANT(/* == */ 3, _(" But it's really great that\n$n2 understood us.")),
VARIANT(/* == */ 3, _(" Anyway...#W\nWe should get off Mt. Blaze, too.")),
VARIANT_DEFAULT(_(" But I'm glad $n2\nunderstood us. That was key.")),
VARIANT_DEFAULT(_(" Anyway...#W\nLet's get off Mt. Blaze ourselves.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
BGM_FADEOUT(150),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs197_g1_s0_lives1_dlg0[] = { /* 0x824b53c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SPREE_START_FUNC),
WAIT(15),
CALL_SCRIPT(SPREE_END_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SWEAT_FUNC),
WAIT(30),
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs197_g1_s0_lives2_dlg0[] = { /* 0x824b75c */
DEBUGINFO,
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
FANFARE_PLAY2(475),
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(45),
FANFARE_PLAY2(475),
{ 0x70, 0x00, 0x0099, 0x00000010, 0x00000000, NULL },
WAIT(16),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(459),
{ 0x70, 0x00, 0x0400, 0x00000080, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs197_g1_s0_eff1_script[] = { /* 0x824b9ec */
DEBUGINFO,
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000172, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000172, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs197_g1_s0_eff2_script[] = { /* 0x824ba7c */
DEBUGINFO,
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000172, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000172, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs197_g1_s0_lives[] = { /* 0x824bb0c */
/* 0 */ { 0, 4, 0, 0, { 37, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs197_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs197_g1_s0_lives1_dlg0,
} },
/* 2 */ { 101, 0, 0, 0, { 34, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs197_g1_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs197_g1_s0_effs[] = { /* 0x824bb54 */
/* 0 */ { 0, 0, 1, 1, { 34, 24, 0, CPOS_HALFTILE }, s_gs197_g1_s0_eff0_script },
/* 1 */ { 4, 0, 1, 1, { 29, 18, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs197_g1_s0_eff1_script },
/* 2 */ { 4, 0, 1, 1, { 39, 18, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs197_g1_s0_eff2_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x824bb78 */
&s_gs197_g0_s0_station_sref,
&s_gs197_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs197_g0_sectors[] = { /* 0x824bb80 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs197_g1_sectors[] = { /* 0x824bba8 */
{ LPARRAY(s_gs197_g1_s0_lives), 0,NULL, LPARRAY(s_gs197_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs197_groups[] = { /* 0x824bbd0 */
{ LPARRAY(s_gs197_g0_sectors) },
{ LPARRAY(s_gs197_g1_sectors) },
};
static const struct GroundLink s_gs197_links[] = { /* 0x824bbe0 */
/* link 0 */ { { /*x*/ 21, /*y*/ 26, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs197 = { LPARRAY(s_gs197_groups), s_gs197_links }; /* 0x824bbe8 */

View File

@@ -0,0 +1,791 @@
static const struct ScriptCommand s_gs198_g0_s0_station_sref_script[] = { /* 0x824bbfc */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
EXECUTE_STATION(12, 0, 0),
LABEL(0), /* = 0x00 */
SELECT_MAP(198),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 13, /* to label */ 1),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
CALL_STATION( 2, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 10, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 12, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 11, /* to label */ 6),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 2),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(36),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs198_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs198_g0_s0_station_sref_script }; /* 0x824beb8 */
static const struct ScriptCommand s_gs198_g0_s0_obj0_dlg2[] = { /* 0x824bec4 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_AND_WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs198_g0_s1_lives0_dlg0[] = { /* 0x824bee4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s1_lives1_dlg0[] = { /* 0x824bf24 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s2_lives0_dlg0[] = { /* 0x824bf64 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s2_lives1_dlg0[] = { /* 0x824bfa4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s3_lives0_dlg0[] = { /* 0x824bfe4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s3_lives1_dlg0[] = { /* 0x824c024 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g0_s4_lives0_dlg0[] = { /* 0x824c094 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s4_lives1_dlg0[] = { /* 0x824c0c4 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs198_g0_s5_obj0_dlg2[] = { /* 0x824c0f4 */
DEBUGINFO,
JUMP_SCRIPT(WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs198_g0_s5_obj1_dlg2[] = { /* 0x824c114 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs198_g1_s0_station_sref_script[] = { /* 0x824c134 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 198),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 198),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(198),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs198_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs198_g1_s0_station_sref_script }; /* 0x824c204 */
static const struct ScriptCommand s_gs198_g1_s0_eff0_script[] = { /* 0x824c210 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0xc8, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs198_g1_s0_lives0_dlg0[] = { /* 0x824c290 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000004, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(0),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" It's going to be awfully cold.\nIt's not anywhere I really want to go...")),
VARIANT_DEFAULT(_(" It will be horribly cold.\nI'd rather not go if I didn't have to...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But there's no point in us\nsticking around here forever...")),
VARIANT(/* == */ 1, _(" We can only go forward!#W\nWe'll just have to go for it and get\nthrough this, $n0!")),
VARIANT_DEFAULT(_(" But hiding out in this area\nisn't the answer either...")),
VARIANT_DEFAULT(_(" We can only go forward.#W\nWe'll just have to keep our spirits up\nand keep going, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(10),
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g1_s0_lives1_dlg0[] = { /* 0x824c670 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs198_g2_s0_station_sref_script[] = { /* 0x824c6d0 */
DEBUGINFO,
SELECT_ENTITIES(-1, -1),
RET_DIRECT,
};
static const struct ScriptRef s_gs198_g2_s0_station_sref = { 403, 8, NULL /* STATION_CONTROL */, s_gs198_g2_s0_station_sref_script }; /* 0x824c700 */
static const struct ScriptCommand s_gs198_g2_s0_lives0_dlg2[] = { /* 0x824c70c */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptCommand s_gs198_g2_s0_evt0_sref_script[] = { /* 0x824c73c */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptRef s_gs198_g2_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs198_g2_s0_evt0_sref_script }; /* 0x824c76c */
static const struct ScriptCommand s_gs198_g2_s1_station_sref_script[] = { /* 0x824c778 */
DEBUGINFO,
SELECT_ENTITIES(-1, 1),
CANCEL_ENTITIES(-1, 0),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs198_g2_s1_station_sref = { 401, 7, NULL /* EVENT_WAKEUP */, s_gs198_g2_s1_station_sref_script }; /* 0x824c7c8 */
static const struct ScriptCommand s_gs198_g2_s1_lives0_dlg0[] = { /* 0x824c7d4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x8e, 0x01, 0x0000, 0x00000022, 0x00000000, NULL },
ASK3_VAR( TRUE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" $n0, are you ready\nto roll?")),
VARIANT_DEFAULT(_(" $n0, are you\nready?")),
CHOICE(/* label */ 2, _("Yes.")),
CHOICE(/* label */ 3, _("*Not yet.")),
LABEL(3), /* = 0x03 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hah? Not yet?")),
VARIANT(/* == */ 1, _(" All right.\nI'll wait till you're ready.")),
VARIANT_DEFAULT(_(" Huh? Not yet?")),
VARIANT_DEFAULT(_(" OK.\nI'll wait while you get ready.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
JUMP_SCRIPT(END_TALK),
LABEL(2), /* = 0x02 */
ASK3( TRUE, /*default*/ 0, /* speaker */ 1, _(" Which way should we go?")),
CHOICE(/* label */ 5, _("Frosty Forest.")),
CHOICE(/* label */ 6, _("Snow Path.")),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll on out!")),
VARIANT(/* == */ 1, _(" It's freezing cold, but let's\ngive it our best!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
VARIANT_DEFAULT(_(" It's going to be freezing\ncold, but let's try our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 7),
COND_EQUAL(3, /* to label */ 7),
COND_EQUAL(5, /* to label */ 7),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0032, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x86, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0040, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x86, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
LABEL(8), /* = 0x08 */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x07, 0x00, 0x001e, 0x0000000d, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
LABEL(6), /* = 0x06 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Sure thing!\nLet's roll on out!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 9),
COND_EQUAL(3, /* to label */ 9),
COND_EQUAL(5, /* to label */ 9),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0032, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x86, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(10),
LABEL(9), /* = 0x09 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0040, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x86, 0x00, 0x00c0, 0x00000000, 0x00000000, NULL },
LABEL(10), /* = 0x0a */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x06, 0x00, 0x001e, 0x0000004f, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
};
static const struct ScriptCommand s_gs198_g2_s1_lives1_dlg0[] = { /* 0x824cea4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x00000400, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x8e, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(0),
COND_EQUAL(0, /* to label */ 0),
COND_EQUAL(1, /* to label */ 0),
COND_EQUAL(7, /* to label */ 0),
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
LABEL(0), /* = 0x00 */
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x00c0, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs198_g3_s0_station_sref_script[] = { /* 0x824cfe4 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 198),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 198),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(198),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs198_g3_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs198_g3_s0_station_sref_script }; /* 0x824d0b4 */
static const struct ScriptCommand s_gs198_g3_s0_lives0_dlg0[] = { /* 0x824d0c0 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is a tough place...")),
VARIANT_DEFAULT(_(" This is as tough as we\nexpected...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But let's give it our best\nand get through this, $n0!")),
VARIANT_DEFAULT(_(" But let's keep trying our\nbest and get through this, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g3_s0_lives1_dlg0[] = { /* 0x824d364 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs198_g4_s0_station_sref_script[] = { /* 0x824d424 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 198),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 198),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(198),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs198_g4_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs198_g4_s0_station_sref_script }; /* 0x824d4f4 */
static const struct ScriptCommand s_gs198_g4_s0_lives0_dlg0[] = { /* 0x824d500 */
DEBUGINFO,
{ 0x54, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000006, 0x00000000, NULL },
WAIT(30),
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nWe didn't do well at all...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That $n2...\nHe's one tough customer.")),
VARIANT(/* == */ 1, _(" But why aren't we allowed\nto go into this forest?")),
VARIANT(/* == */ 1, _(" ...It doesn't matter anyway.\nLet's give it our best, $n0!")),
VARIANT_DEFAULT(_(" That Pokémon,\n$n2, is pretty tough.")),
VARIANT_DEFAULT(_(" But why are we forbidden\nfrom entering this forest?")),
VARIANT_DEFAULT(_(" It makes no difference.\n$n0, let's try our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g4_s0_lives1_dlg0[] = { /* 0x824d834 */
DEBUGINFO,
{ 0x54, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs198_g5_s0_station_sref_script[] = { /* 0x824d8a4 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 198),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 198),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(198),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs198_g5_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs198_g5_s0_station_sref_script }; /* 0x824d974 */
static const struct ScriptCommand s_gs198_g5_s0_lives0_dlg0[] = { /* 0x824d980 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x10, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What the...?#W\nIsn't this where we started from?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(468),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#W\nI guess that path just loops back to the\nstart.")),
VARIANT(/* == */ 1, _(" If we want to move on,\nI think our only choice is the #CDFrosty\nForest#R.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" ............#W\nI guess that path we took just loops back\nto where it started.")),
VARIANT_DEFAULT(_(" It looks like we have to get\nthrough the #CDFrosty Forest#R to move on.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g5_s0_lives1_dlg0[] = { /* 0x824dd18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe5, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs198_g6_s0_station_sref_script[] = { /* 0x824ddf8 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 198),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 198),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(198),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs198_g6_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs198_g6_s0_station_sref_script }; /* 0x824dec8 */
static const struct ScriptCommand s_gs198_g6_s0_lives0_dlg0[] = { /* 0x824ded4 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000022, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is one harsh place,\nbut let's bear down and get through,\n$n0!")),
VARIANT_DEFAULT(_(" This is a harsh place,\nso let's do our best to get through,\n$n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs198_g6_s0_lives1_dlg0[] = { /* 0x824e0f8 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs198_g0_s0_lives[] = { /* 0x824e1c8 */
/* 0 */ { 144, 0, 0, 0, { 7, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs198_g0_s1_lives[] = { /* 0x824e1e0 */
/* 0 */ { 0, 4, 0, 0, { 17, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 17, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g0_s2_lives[] = { /* 0x824e210 */
/* 0 */ { 0, 0, 0, 0, { 17, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s2_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 17, 30, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s2_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g0_s3_lives[] = { /* 0x824e240 */
/* 0 */ { 0, 4, 0, 0, { 17, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 17, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g0_s4_lives[] = { /* 0x824e270 */
/* 0 */ { 0, 4, 0, 0, { 17, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 17, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs198_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g0_s5_lives[] = { /* 0x824e2a0 */
/* 0 */ { 144, 0, 0, 0, { 7, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
/* 1 */ { 145, 0, 0, 0, { 23, 35, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs198_g1_s0_lives[] = { /* 0x824e2d0 */
/* 0 */ { 0, 4, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 15, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g2_s0_lives[] = { /* 0x824e300 */
/* 0 */ { 34, 6, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[2] = s_gs198_g2_s0_lives0_dlg2,
} },
};
static const struct GroundLivesData s_gs198_g2_s1_lives[] = { /* 0x824e318 */
/* 0 */ { 0, 6, 0, 0, { 15, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g2_s1_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g2_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g3_s0_lives[] = { /* 0x824e348 */
/* 0 */ { 0, 0, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 15, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g3_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g4_s0_lives[] = { /* 0x824e378 */
/* 0 */ { 0, 6, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g4_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 15, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g4_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g5_s0_lives[] = { /* 0x824e3a8 */
/* 0 */ { 0, 6, 0, 0, { 19, 31, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g5_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 15, 30, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g5_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs198_g6_s0_lives[] = { /* 0x824e3d8 */
/* 0 */ { 0, 6, 0, 0, { 19, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g6_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 15, 32, 0, CPOS_HALFTILE }, {
[0] = s_gs198_g6_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs198_g0_s0_objs[] = { /* 0x824e408 */
/* 0 */ { 4, 0, 4, 2, { 8, 32, 0, 0 }, {
[2] = s_gs198_g0_s0_obj0_dlg2,
} },
};
static const struct GroundObjectData s_gs198_g0_s5_objs[] = { /* 0x824e420 */
/* 0 */ { 4, 0, 4, 2, { 8, 32, 0, 0 }, {
[2] = s_gs198_g0_s5_obj0_dlg2,
} },
/* 1 */ { 4, 0, 4, 3, { 23, 35, 0, CPOS_HALFTILE }, {
[2] = s_gs198_g0_s5_obj1_dlg2,
} },
};
static const struct GroundEffectData s_gs198_g1_s0_effs[] = { /* 0x824e450 */
/* 0 */ { 0, 0, 1, 1, { 17, 9, 0, CPOS_HALFTILE }, s_gs198_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs198_g3_s0_effs[] = { /* 0x824e45c */
/* 0 */ { 0, 0, 1, 1, { 17, 33, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs198_g4_s0_effs[] = { /* 0x824e468 */
/* 0 */ { 0, 0, 1, 1, { 17, 33, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs198_g5_s0_effs[] = { /* 0x824e474 */
/* 0 */ { 0, 0, 1, 1, { 17, 33, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs198_g6_s0_effs[] = { /* 0x824e480 */
/* 0 */ { 0, 0, 1, 1, { 17, 33, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs198_g2_s0_evts[] = { /* 0x824e48c */
/* 0 */ { 4, 3, 0, 0, { 15, 27, 0, 0 }, &s_gs198_g2_s0_evt0_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x824e498 */
&s_gs198_g0_s0_station_sref,
&s_gs198_g1_s0_station_sref,
&s_gs198_g2_s0_station_sref,
&s_gs198_g2_s1_station_sref,
&s_gs198_g3_s0_station_sref,
&s_gs198_g4_s0_station_sref,
&s_gs198_g5_s0_station_sref,
&s_gs198_g6_s0_station_sref,
};
static const struct GroundScriptSector s_gs198_g0_sectors[] = { /* 0x824e4b8 */
{ LPARRAY(s_gs198_g0_s0_lives), LPARRAY(s_gs198_g0_s0_objs), 0,NULL, 0,NULL, 1,&sStationScripts[0], },
{ LPARRAY(s_gs198_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs198_g0_s2_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs198_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs198_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs198_g0_s5_lives), LPARRAY(s_gs198_g0_s5_objs), 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs198_g1_sectors[] = { /* 0x824e5a8 */
{ LPARRAY(s_gs198_g1_s0_lives), 0,NULL, LPARRAY(s_gs198_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs198_g2_sectors[] = { /* 0x824e5d0 */
{ LPARRAY(s_gs198_g2_s0_lives), 0,NULL, 0,NULL, LPARRAY(s_gs198_g2_s0_evts), 1,&sStationScripts[2], },
{ LPARRAY(s_gs198_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptSector s_gs198_g3_sectors[] = { /* 0x824e620 */
{ LPARRAY(s_gs198_g3_s0_lives), 0,NULL, LPARRAY(s_gs198_g3_s0_effs), 0,NULL, 1,&sStationScripts[4], },
};
static const struct GroundScriptSector s_gs198_g4_sectors[] = { /* 0x824e648 */
{ LPARRAY(s_gs198_g4_s0_lives), 0,NULL, LPARRAY(s_gs198_g4_s0_effs), 0,NULL, 1,&sStationScripts[5], },
};
static const struct GroundScriptSector s_gs198_g5_sectors[] = { /* 0x824e670 */
{ LPARRAY(s_gs198_g5_s0_lives), 0,NULL, LPARRAY(s_gs198_g5_s0_effs), 0,NULL, 1,&sStationScripts[6], },
};
static const struct GroundScriptSector s_gs198_g6_sectors[] = { /* 0x824e698 */
{ LPARRAY(s_gs198_g6_s0_lives), 0,NULL, LPARRAY(s_gs198_g6_s0_effs), 0,NULL, 1,&sStationScripts[7], },
};
static const struct GroundScriptGroup s_gs198_groups[] = { /* 0x824e6c0 */
{ LPARRAY(s_gs198_g0_sectors) },
{ LPARRAY(s_gs198_g1_sectors) },
{ LPARRAY(s_gs198_g2_sectors) },
{ LPARRAY(s_gs198_g3_sectors) },
{ LPARRAY(s_gs198_g4_sectors) },
{ LPARRAY(s_gs198_g5_sectors) },
{ LPARRAY(s_gs198_g6_sectors) },
};
static const struct GroundLink s_gs198_links[] = { /* 0x824e6f8 */
/* link 0 */ { { /*x*/ 17, /*y*/ 27, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs198 = { LPARRAY(s_gs198_groups), s_gs198_links }; /* 0x824e700 */

View File

@@ -0,0 +1,378 @@
static const struct ScriptCommand s_gs199_g0_s0_station_sref_script[] = { /* 0x824e714 */
DEBUGINFO,
SELECT_MAP(199),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 13, /* to label */ 0),
COND(JUDGE_GT, 17, /* to label */ 1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 5),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 6),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(7),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 1),
JUMP_LABEL(7),
LABEL(7), /* = 0x07 */
BGM_SWITCH(104),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs199_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs199_g0_s0_station_sref_script }; /* 0x824e980 */
static const struct ScriptCommand s_gs199_g0_s0_evt0_sref_script[] = { /* 0x824e98c */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Keep going?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x02, 0x00, 0x001e, 0x0000000e, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs199_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs199_g0_s0_evt0_sref_script }; /* 0x824ea68 */
static const struct ScriptCommand s_gs199_g0_s0_evt1_sref_script[] = { /* 0x824ea74 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 1, _("Yes.")),
CHOICE(/* label */ 2, _("*No.")),
LABEL(2), /* = 0x02 */
JUMP_SCRIPT(END_TALK),
LABEL(1), /* = 0x01 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
LABEL(0), /* = 0x00 */
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the entrance?")),
CHOICE(/* label */ 3, _("Yes.")),
CHOICE(/* label */ 4, _("*No.")),
LABEL(4), /* = 0x04 */
JUMP_SCRIPT(END_TALK),
LABEL(3), /* = 0x03 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x01, 0x00, 0x001e, 0x000000c6, 0x00000000, NULL },
HALT,
};
static const struct ScriptRef s_gs199_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs199_g0_s0_evt1_sref_script }; /* 0x824ec3c */
static const struct ScriptCommand s_gs199_g0_s0_obj0_dlg2[] = { /* 0x824ec48 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs199_g0_s1_lives0_dlg0[] = { /* 0x824ec68 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g0_s1_lives1_dlg0[] = { /* 0x824eca8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g0_s3_lives0_dlg0[] = { /* 0x824ece8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g0_s3_lives1_dlg0[] = { /* 0x824ed28 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g0_s4_lives0_dlg0[] = { /* 0x824ed68 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g0_s4_lives1_dlg0[] = { /* 0x824ed98 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs199_g1_s0_station_sref_script[] = { /* 0x824edc8 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 199),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 199),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(199),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(104),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs199_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs199_g1_s0_station_sref_script }; /* 0x824ee98 */
static const struct ScriptCommand s_gs199_g1_s0_lives0_dlg0[] = { /* 0x824eea4 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nThat didn't work out...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is a tough place...")),
VARIANT_DEFAULT(_(" This is as tough as we\nexpected...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But let's give it our best\nand get through this, $n0!")),
VARIANT_DEFAULT(_(" But let's keep trying our\nbest and get through this, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs199_g1_s0_lives1_dlg0[] = { /* 0x824f190 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs199_g2_s0_station_sref_script[] = { /* 0x824f260 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 199),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 199),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(199),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(104),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs199_g2_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs199_g2_s0_station_sref_script }; /* 0x824f330 */
static const struct ScriptCommand s_gs199_g2_s0_lives0_dlg0[] = { /* 0x824f33c */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000066, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nWe didn't do well at all...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That $n2...\nHe's one tough customer.")),
VARIANT(/* == */ 1, _(" But why aren't we allowed\nto go into this forest?")),
VARIANT(/* == */ 1, _(" It doesn't matter anyway.\nLet's give it our best, $n0!")),
VARIANT_DEFAULT(_(" That Pokémon,\n$n2, is pretty tough.")),
VARIANT_DEFAULT(_(" But why are we forbidden\nfrom entering this forest?")),
VARIANT_DEFAULT(_(" It makes no difference.\n$n0, let's try our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs199_g2_s0_lives1_dlg0[] = { /* 0x824f6ac */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs199_g0_s0_lives[] = { /* 0x824f77c */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs199_g0_s1_lives[] = { /* 0x824f794 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs199_g0_s3_lives[] = { /* 0x824f7c4 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs199_g0_s4_lives[] = { /* 0x824f7f4 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs199_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs199_g1_s0_lives[] = { /* 0x824f824 */
/* 0 */ { 0, 0, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs199_g1_s0_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs199_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs199_g2_s0_lives[] = { /* 0x824f854 */
/* 0 */ { 0, 0, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs199_g2_s0_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs199_g2_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs199_g0_s0_objs[] = { /* 0x824f884 */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs199_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs199_g1_s0_effs[] = { /* 0x824f89c */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs199_g2_s0_effs[] = { /* 0x824f8a8 */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs199_g0_s0_evts[] = { /* 0x824f8b4 */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs199_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs199_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x824f8cc */
&s_gs199_g0_s0_station_sref,
&s_gs199_g1_s0_station_sref,
&s_gs199_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs199_g0_sectors[] = { /* 0x824f8d8 */
{ LPARRAY(s_gs199_g0_s0_lives), LPARRAY(s_gs199_g0_s0_objs), 0,NULL, LPARRAY(s_gs199_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs199_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs199_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs199_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs199_g1_sectors[] = { /* 0x824f9a0 */
{ LPARRAY(s_gs199_g1_s0_lives), 0,NULL, LPARRAY(s_gs199_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs199_g2_sectors[] = { /* 0x824f9c8 */
{ LPARRAY(s_gs199_g2_s0_lives), 0,NULL, LPARRAY(s_gs199_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs199_groups[] = { /* 0x824f9f0 */
{ LPARRAY(s_gs199_g0_sectors) },
{ LPARRAY(s_gs199_g1_sectors) },
{ LPARRAY(s_gs199_g2_sectors) },
};
static const struct GroundLink s_gs199_links[] = { /* 0x824fa08 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs199 = { LPARRAY(s_gs199_groups), s_gs199_links }; /* 0x824fa10 */

View File

@@ -0,0 +1,496 @@
static const struct ScriptCommand s_gs200_g0_s0_station_sref_script[] = { /* 0x824fa24 */
DEBUGINFO,
SELECT_MAP(200),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs200_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs200_g0_s0_station_sref_script }; /* 0x824fa90 */
static const struct ScriptCommand s_gs200_g1_s0_station_sref_script[] = { /* 0x824fa9c */
DEBUGINFO,
SELECT_MAP(200),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+And so...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+After getting through the Frosty\n#+Forest, $n0's team...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Headed further north...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+The more they advanced...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+The harsher the conditions became...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x3b, 0x39, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs200_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs200_g1_s0_station_sref_script }; /* 0x824fca8 */
static const struct ScriptCommand s_gs200_g1_s0_lives0_dlg0[] = { /* 0x824fcb4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Please, $n2!")),
VARIANT(/* == */ 1, _(" We have to keep moving.\nWe have to get through this.")),
VARIANT(/* == */ 1, _(" Please, let us pass!")),
VARIANT(/* == */ 3, _(" Please, $n2!")),
VARIANT(/* == */ 3, _(" We have to get through,\nno matter what.")),
VARIANT(/* == */ 3, _(" Please, let us pass!")),
VARIANT_DEFAULT(_(" Please, $n2!")),
VARIANT_DEFAULT(_(" We have to get through.\nNo matter what it takes.")),
VARIANT_DEFAULT(_(" Please, let us pass!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0c, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" No!\nI cannot allow your passage!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Why?#W\nWhy can't we pass?")),
VARIANT_DEFAULT(_(" Why?#W\nWhy can't we pass?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The frigid forest's air...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It has warmed considerably\nin recent times.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" W-warmed up?\n(I'm still freezing, but...)")),
VARIANT(/* == */ 3, _(" W-warmed up?\n(I'm still freezing, but...)")),
VARIANT_DEFAULT(_(" W-warmed up?\n(I'm still freezing, but...)")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The flow of frigid air has\nbeen disturbed in the forest.#W\nSnow has started to melt.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Snow is melting.\nSnow that has never melted before.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This has never happened,\neven once.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Then you appeared in the\nforest.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Is this not your doing?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" W-we don't have anything\nto do with that!\nIt's a coincidence!")),
VARIANT(/* == */ 3, _(" W-we don't have anything\nto do with that!\nIt's a coincidence!")),
VARIANT_DEFAULT(_(" W-we don't have anything\nto do with that!\nIt's a coincidence!")),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, $n2.\nYou have to listen.")),
VARIANT(/* == */ 1, _(" It's not our fault that the\nsnow is melting here.")),
VARIANT(/* == */ 1, _(" It's not just here.#W\nNatural disasters are happening all\nover the place.")),
VARIANT(/* == */ 1, _(" Even if we hadn't come, the\nfrigid air here would have been disturbed.")),
VARIANT(/* == */ 3, _(" Please, $n2.\nListen to me.")),
VARIANT(/* == */ 3, _(" It's not our fault that the\nsnow is melting.")),
VARIANT(/* == */ 3, _(" It's not just here.#W\nRight now, natural calamities are occurring\neverywhere.")),
VARIANT(/* == */ 3, _(" The forest's frigid airflow\nwould have been disturbed even if we\nhadn't come.")),
VARIANT_DEFAULT(_(" Please, $n2.\nHear me out.")),
VARIANT_DEFAULT(_(" It isn't our fault that the\nsnow started melting here.")),
VARIANT_DEFAULT(_(" It's not just here.#W\nNatural calamities are taking place\neverywhere right now.")),
VARIANT_DEFAULT(_(" The forest's frigid airflow\nwould have been disturbed even if we\nhadn't come.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Is that all?#W\nYou expect me to believe that?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(685),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
WAIT(4),
{ 0x28, 0x00, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Waaaaaaaah!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Enough of your foolish talk!#W\nPrepare for your end!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(685),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
WAIT(4),
{ 0x28, 0x00, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ccccff, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
WAIT(15),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(685),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ffffff, NULL },
WAIT(4),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000002, 0x00ffffff, NULL },
WAIT(4),
{ 0x28, 0x01, 0x0005, 0x00000002, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Stop it!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x27, 0x00, 0x0005, 0x00000028, 0x00ffffff, NULL },
SELECT_ENTITIES(-1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" A-Absol!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0d, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x2f, 0x00, 0x0003, -0x00000002, 0x00000002, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" There is nothing false in\nwhat they said.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Calamities are indeed\noccurring in nature everywhere.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Is...\nIs that true?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Yes.") },
BGM_FADEIN(150, 114),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" I have the ability to sense\nnatural disasters.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" The calamities taking place\nnow are of a special nature.\nI've never experienced such before.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#W\nSo, there are calamities besides this...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ..................#WFine.#W\nI will choose to believe you.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You may pass.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n2!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" However!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(SHOCK_FUNC),
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Waah!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You must try to prevent\nthe calamities from spreading.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I'm counting on you!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yup! We promise,\n$n2!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Whew...\nThat was too close...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Thank you.#W\nYou saved us.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0e, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ..................") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Rather than saying thanks,\nfocus on stopping the calamities before\nthey worsen.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" If they are left unchecked,\nworse will befall us...#W\nMy instinct warns me so.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0001, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Groan...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" I sensed the terrible\npower of the natural calamities...") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" I was led here by my\nfeelings of foreboding...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" ............#W\nI think it would be best if we combined\nforces...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" I will join you.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(463),
CALL_SCRIPT(JUMP_HAPPY_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Huh?#W\nYou will? Really?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Really.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" To put an end to the\ncalamities, cooperation is vital.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Let me lend you my powers.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000b, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Sniffle...\nThank you, $n3.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
BGM_STOP,
FANFARE_PLAY(204),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n3 joined the team!") },
{ 0xe1, 0x00, 0x00cc, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x3b, 0x1a, 0x0000, 0x00000000, 0x00000000, NULL },
ASK1(FALSE, /*default*/ -1, /* speaker */ -1, _("Give a nickname to $n3?")),
CHOICE(/* label */ 29, _("*Yes.")),
CHOICE(/* label */ 30, _("No.")),
LABEL(29), /* = 0x1d */
{ 0x3d, 0x00, 0x0000, -0x00000001, 0x00000000, NULL },
LABEL(30), /* = 0x1e */
{ 0x3b, 0x1b, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs200_g1_s0_lives1_dlg0[] = { /* 0x825174c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002d, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(458),
CALL_SCRIPT(JUMP_HAPPY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs200_g1_s0_lives2_dlg0[] = { /* 0x825190c */
DEBUGINFO,
{ 0x54, 0x00, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0800, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0300, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
WAIT(46),
FANFARE_PLAY2(475),
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(475),
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(475),
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(475),
WAIT(32),
{ 0x70, 0x00, 0x0100, 0x00000008, 0x00000000, NULL },
WAIT(8),
FANFARE_PLAY2(459),
{ 0x70, 0x00, 0x0400, 0x00000080, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs200_g1_s1_lives0_dlg0[] = { /* 0x8251cac */
DEBUGINFO,
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x60, 0x01, 0x0000, 0x000000a0, 0x00000000, NULL },
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0800, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(505),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
WAIT(32),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0002, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000001, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs200_g1_s0_lives[] = { /* 0x8251e2c */
/* 0 */ { 0, 4, 0, 0, { 29, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs200_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 37, 29, 0, CPOS_HALFTILE }, {
[0] = s_gs200_g1_s0_lives1_dlg0,
} },
/* 2 */ { 102, 0, 0, 0, { 33, 22, 0, CPOS_HALFTILE }, {
[0] = s_gs200_g1_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs200_g1_s1_lives[] = { /* 0x8251e74 */
/* 0 */ { 83, 2, 0, 0, { 33, 26, 0, CPOS_HALFTILE }, {
[0] = s_gs200_g1_s1_lives0_dlg0,
} },
};
static const struct GroundEffectData s_gs200_g1_s0_effs[] = { /* 0x8251e8c */
/* 0 */ { 0, 0, 1, 1, { 33, 27, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8251e98 */
&s_gs200_g0_s0_station_sref,
&s_gs200_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs200_g0_sectors[] = { /* 0x8251ea0 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs200_g1_sectors[] = { /* 0x8251ec8 */
{ LPARRAY(s_gs200_g1_s0_lives), 0,NULL, LPARRAY(s_gs200_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs200_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs200_groups[] = { /* 0x8251f18 */
{ LPARRAY(s_gs200_g0_sectors) },
{ LPARRAY(s_gs200_g1_sectors) },
};
static const struct GroundLink s_gs200_links[] = { /* 0x8251f28 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs200 = { LPARRAY(s_gs200_groups), s_gs200_links }; /* 0x8251f30 */

View File

@@ -0,0 +1,892 @@
static const struct ScriptCommand s_gs201_g0_s0_station_sref_script[] = { /* 0x8251f44 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
EXECUTE_STATION(12, 0, 0),
LABEL(0), /* = 0x00 */
SELECT_MAP(201),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 14, /* to label */ 1),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 10, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 12, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 11, /* to label */ 6),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 2),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(36),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs201_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs201_g0_s0_station_sref_script }; /* 0x8252210 */
static const struct ScriptCommand s_gs201_g0_s0_obj0_dlg2[] = { /* 0x825221c */
DEBUGINFO,
JUMP_SCRIPT(SAVE_AND_WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs201_g0_s1_lives0_dlg0[] = { /* 0x825223c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s1_lives1_dlg0[] = { /* 0x825227c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s2_lives0_dlg0[] = { /* 0x82522bc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s2_lives1_dlg0[] = { /* 0x82522fc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s3_lives0_dlg0[] = { /* 0x825233c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s3_lives1_dlg0[] = { /* 0x825237c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s4_lives0_dlg0[] = { /* 0x82523bc */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s4_lives1_dlg0[] = { /* 0x82523ec */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs201_g0_s5_obj0_dlg2[] = { /* 0x825241c */
DEBUGINFO,
JUMP_SCRIPT(WAREHOUSE_POINT),
};
static const struct ScriptCommand s_gs201_g0_s5_obj1_dlg2[] = { /* 0x825243c */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs201_g1_s0_station_sref_script[] = { /* 0x825245c */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 201),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 201),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(201),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs201_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs201_g1_s0_station_sref_script }; /* 0x825253c */
static const struct ScriptCommand s_gs201_g1_s0_lives0_dlg0[] = { /* 0x8252548 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000052, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000063, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x02, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ...OK.\nSo that's what happened...")),
VARIANT(/* == */ 1, _(" $n2 appeared to\nyou...")),
VARIANT(/* == */ 1, _(" So that's why you were\nlooking so stunned.")),
VARIANT_DEFAULT(_(" ...Oh.\nSo something like that happened.")),
VARIANT_DEFAULT(_(" $n2 appeared to\nyou...")),
VARIANT_DEFAULT(_(" That's why you were\nlooking so stunned earlier.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But, wow...\n$n3 isn't just a legend.\nIt really exists...")),
VARIANT_DEFAULT(_(" I'm amazed, though...\n$n3 isn't just a legend.\nIt really exists...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" And that $n3 is\nat the peak way up there.")),
VARIANT_DEFAULT(_(" And that $n3 is up\nat the peak...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000008, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Sniffle...#W\n$n0!")),
VARIANT(/* == */ 1, _(" All the effort we put into\ngetting here...\nIt's finally going to pay off!")),
VARIANT(/* == */ 1, _(" We'll meet $n3\nand get the truth!")),
VARIANT_DEFAULT(_(" Sniffle...#W\n$n0!")),
VARIANT_DEFAULT(_(" All the effort we put into\ngetting here...\nIt's finally going to bear fruit!")),
VARIANT_DEFAULT(_(" We'll meet $n3\nand get the truth!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
ASK3_VAR(FALSE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" We'll finally clear your\nreputation, $n0!#W\nThat'll be great!")),
VARIANT_DEFAULT(_(" We'll finally get rid of the\nsuspicions others have about you,\n$n0!#W Awesome!")),
CHOICE(/* label */ 2, _("........................")),
CHOICE(/* label */ 2, _("........................")),
LABEL(2), /* = 0x02 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hey, $n0...")),
VARIANT(/* == */ 1, _(" You don't need to look so\nworried.#W\nIt'll be OK.")),
VARIANT(/* == */ 1, _(" $n0, I can\nunderstand how it'd be scary for you to\nmeet $n3.")),
VARIANT(/* == */ 1, _(" The heartless human who\nabandoned $n2...#W\nHow that might be you...")),
VARIANT(/* == */ 1, _(" I bet you're scared,\nthinking that.")),
VARIANT_DEFAULT(_(" Listen, $n0...")),
VARIANT_DEFAULT(_(" ...Don't be so worried.#W\nIt will be all right.")),
VARIANT_DEFAULT(_(" It's only natural that you\nwould be scared of meeting $n3,\n$n0.")),
VARIANT_DEFAULT(_(" The heartless human who\nabandoned $n2...#W\nIt may be you...")),
VARIANT_DEFAULT(_(" I can understand how\nyou could think that.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
ASK3(FALSE, /*default*/ -1, /* speaker */ 1, _(" But that's impossible.\nYou're not that human--I'm sure.")),
CHOICE(/* label */ 4, _("How can you say that?")),
CHOICE(/* label */ 4, _("You believe so much in me?")),
LABEL(4), /* = 0x04 */
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hmm...?#W Well, there was\na time when I had some doubts...#W\nBut now...") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...I wonder why?#W\nI really don't know why.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But it doesn't matter now.#W\n$n0, you're a really good sort.")),
VARIANT(/* == */ 1, _(" You know, before...")),
VARIANT(/* == */ 1, _(" When I first got the idea\nto start this rescue team...")),
VARIANT(/* == */ 1, _(" I met you in the Tiny\nWoods, $n0.")),
VARIANT(/* == */ 1, _(" Now that I think about it,\nthere was something different about you.\nJust a feeling.")),
VARIANT(/* == */ 3, _(" But it doesn't matter.\nI know you're a good sort, $n0...")),
VARIANT(/* == */ 3, _(" Do you remember...?")),
VARIANT(/* == */ 3, _(" When I first got the idea to\nstart a rescue team...")),
VARIANT(/* == */ 3, _(" I met you in the Tiny\nWoods, $n0...")),
VARIANT(/* == */ 3, _(" Even back then, I sensed\nthere was something different about you.")),
VARIANT_DEFAULT(_(" But it's all right.#W\n$n0, you're a really good sort.")),
VARIANT_DEFAULT(_(" You know, before...")),
VARIANT_DEFAULT(_(" When I first got the idea\nto start a rescue team...")),
VARIANT_DEFAULT(_(" I met you in the Tiny\nWoods, $n0.")),
VARIANT_DEFAULT(_(" Now that I think about it,\nthere was something different about you.")),
{ 0x2e, 0x15, 0x0001, 0x00000001, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is kind of weird,\nisn't it?#W\nBut I believe in you, $n0.")),
VARIANT(/* == */ 3, _(" It is weird, isn't it?#W\nBut I believe in you, $n0.")),
VARIANT_DEFAULT(_(" It is strange, isn't it?#W\nBut, $n0, I believe in you.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Anyway, we'll know the\ntruth when we get to the peak.") },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs201_g1_s0_lives1_dlg0[] = { /* 0x825366c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000005d, 0x00000000, NULL },
WAIT(100),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
CALL_SCRIPT(JUMP_ANGRY_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
CALL_SCRIPT(QUESTION_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g2_s0_station_sref_script[] = { /* 0x825380c */
DEBUGINFO,
SELECT_ENTITIES(-1, -1),
RET_DIRECT,
};
static const struct ScriptRef s_gs201_g2_s0_station_sref = { 403, 8, NULL /* STATION_CONTROL */, s_gs201_g2_s0_station_sref_script }; /* 0x825383c */
static const struct ScriptCommand s_gs201_g2_s0_lives0_dlg2[] = { /* 0x8253848 */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptCommand s_gs201_g2_s0_evt0_sref_script[] = { /* 0x8253878 */
DEBUGINFO,
EXECUTE_STATION(-1, 2, 1),
HALT,
};
static const struct ScriptRef s_gs201_g2_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs201_g2_s0_evt0_sref_script }; /* 0x82538a8 */
static const struct ScriptCommand s_gs201_g2_s1_station_sref_script[] = { /* 0x82538b4 */
DEBUGINFO,
SELECT_ENTITIES(-1, 1),
CANCEL_ENTITIES(-1, 0),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs201_g2_s1_station_sref = { 401, 7, NULL /* EVENT_WAKEUP */, s_gs201_g2_s1_station_sref_script }; /* 0x8253904 */
static const struct ScriptCommand s_gs201_g2_s1_lives0_dlg0[] = { /* 0x8253910 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x8e, 0x01, 0x0000, 0x00000022, 0x00000000, NULL },
ASK3_VAR( TRUE, /*default*/ -1, /* speaker */ 1, PARTNER_TALK_KIND),
VARIANT(/* == */ 1, _(" Hey, $n0.\nAre you all ready?")),
VARIANT_DEFAULT(_(" Hi, $n0.\nAre you ready?")),
CHOICE(/* label */ 2, _("All set!")),
CHOICE(/* label */ 3, _("Not yet.")),
LABEL(3), /* = 0x03 */
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Hmm? Is that so?") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" OK.\nLet's go when you're ready.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
JUMP_SCRIPT(END_TALK),
LABEL(2), /* = 0x02 */
ASK3( TRUE, /*default*/ 0, /* speaker */ 1, _(" Which way should we go?")),
CHOICE(/* label */ 5, _("Mt. Freeze.")),
CHOICE(/* label */ 6, _("Snow Path.")),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll out!")),
VARIANT(/* == */ 1, _(" We want the peak.\nLet's give it our best!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
VARIANT_DEFAULT(_(" Let's do our best to reach\nthe peak!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 7),
COND_EQUAL(3, /* to label */ 7),
COND_EQUAL(5, /* to label */ 7),
COND_EQUAL(2, /* to label */ 7),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
LABEL(8), /* = 0x08 */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x07, 0x00, 0x001e, 0x0000000f, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
LABEL(6), /* = 0x06 */
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right!\nLet's roll out!")),
VARIANT_DEFAULT(_(" OK!\nLet's go!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(34),
COND_EQUAL(4, /* to label */ 9),
COND_EQUAL(3, /* to label */ 9),
COND_EQUAL(5, /* to label */ 9),
COND_EQUAL(2, /* to label */ 9),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(10),
LABEL(9), /* = 0x09 */
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
LABEL(10), /* = 0x0a */
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x06, 0x00, 0x001e, 0x0000004f, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 3),
HALT,
};
static const struct ScriptCommand s_gs201_g2_s1_lives1_dlg0[] = { /* 0x8253f50 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x00000400, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x8e, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CJUMP_UNK_C8(0),
COND_EQUAL(0, /* to label */ 0),
COND_EQUAL(1, /* to label */ 0),
COND_EQUAL(7, /* to label */ 0),
COND_EQUAL(6, /* to label */ 0),
WAIT(15),
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
LABEL(0), /* = 0x00 */
{ 0x54, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g3_s0_station_sref_script[] = { /* 0x82540c0 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 201),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 201),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(201),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs201_g3_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs201_g3_s0_station_sref_script }; /* 0x82541a0 */
static const struct ScriptCommand s_gs201_g3_s0_lives0_dlg0[] = { /* 0x82541ac */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Darn...#W\nThat didn't go well.")),
VARIANT_DEFAULT(_(" Ouch...#W\nThat turned out badly.")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is one seriously\nrough neighborhood...")),
VARIANT(/* == */ 1, _(" But let's storm our way\nto the peak, $n0!")),
VARIANT_DEFAULT(_(" This is a seriously tough\nchallenge, but...")),
VARIANT_DEFAULT(_(" Let's be sure to reach the\npeak, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs201_g3_s0_lives1_dlg0[] = { /* 0x8254430 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g4_s0_station_sref_script[] = { /* 0x8254500 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 201),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 201),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(201),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs201_g4_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs201_g4_s0_station_sref_script }; /* 0x82545e0 */
static const struct ScriptCommand s_gs201_g4_s0_lives0_dlg0[] = { /* 0x82545ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x30, 0x0080, 0x00000007, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What the...?#W\nIsn't this where we started from?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(468),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" ............#W\nI guess that path just loops back to the\nstart.")),
VARIANT(/* == */ 1, _(" If we want to move on,\nI think our only choice is #CDMt. Freeze#R.")),
VARIANT(/* == */ 1, _(" $n0, let's give it\nour best!")),
VARIANT_DEFAULT(_(" ............#W\nI guess that path we took just loops back\nto where it started.")),
VARIANT_DEFAULT(_(" It looks like we have to get\nover #CDMt. Freeze#R to move on.")),
VARIANT_DEFAULT(_(" $n0, let's do our\nbest!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs201_g4_s0_lives1_dlg0[] = { /* 0x825492c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0080, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g5_s0_station_sref_script[] = { /* 0x8254a0c */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 201),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 201),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(201),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(36),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
RET,
};
static const struct ScriptRef s_gs201_g5_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs201_g5_s0_station_sref_script }; /* 0x8254aec */
static const struct ScriptCommand s_gs201_g5_s0_lives0_dlg0[] = { /* 0x8254af8 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Urrggh...#W\nWe couldn't get through...")),
VARIANT_DEFAULT(_(" Ouch...#W\nWe couldn't break through...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This is one harsh place,\nbut let's bear down and get through,\n$n0!")),
VARIANT_DEFAULT(_(" This is a harsh place,\nso let's do our best to get through,\n$n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs201_g5_s0_lives1_dlg0[] = { /* 0x8254d64 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g6_s0_station_sref_script[] = { /* 0x8254e34 */
DEBUGINFO,
SELECT_MAP(201),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(115),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs201_g6_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs201_g6_s0_station_sref_script }; /* 0x8254ea4 */
static const struct ScriptCommand s_gs201_g6_s0_eff0_script[] = { /* 0x8254eb0 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs201_g6_s0_lives0_dlg0[] = { /* 0x8254f30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x40, 0x0080, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You're going to #CDMt. Freeze#R?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Don't forget to take me,\nkekeh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs201_g6_s0_lives1_dlg0[] = { /* 0x825508c */
DEBUGINFO,
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x86, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0080, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs201_g0_s0_lives[] = { /* 0x825514c */
/* 0 */ { 144, 0, 0, 0, { 10, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs201_g0_s1_lives[] = { /* 0x8255164 */
/* 0 */ { 0, 4, 0, 0, { 16, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 16, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g0_s2_lives[] = { /* 0x8255194 */
/* 0 */ { 0, 0, 0, 0, { 27, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s2_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 27, 20, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s2_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g0_s3_lives[] = { /* 0x82551c4 */
/* 0 */ { 0, 4, 0, 0, { 16, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 16, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g0_s4_lives[] = { /* 0x82551f4 */
/* 0 */ { 0, 4, 0, 0, { 16, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 16, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g0_s5_lives[] = { /* 0x8255224 */
/* 0 */ { 144, 0, 0, 0, { 10, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
/* 1 */ { 145, 0, 0, 0, { 25, 30, 0, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs201_g1_s0_lives[] = { /* 0x8255254 */
/* 0 */ { 0, 6, 0, 0, { 21, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 2, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g2_s0_lives[] = { /* 0x8255284 */
/* 0 */ { 34, 0, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[2] = s_gs201_g2_s0_lives0_dlg2,
} },
};
static const struct GroundLivesData s_gs201_g2_s1_lives[] = { /* 0x825529c */
/* 0 */ { 0, 0, 0, 0, { 21, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g2_s1_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g2_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g3_s0_lives[] = { /* 0x82552cc */
/* 0 */ { 0, 0, 0, 0, { 21, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g3_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g4_s0_lives[] = { /* 0x82552fc */
/* 0 */ { 0, 0, 0, 0, { 24, 21, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g4_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 18, 22, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g4_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g5_s0_lives[] = { /* 0x825532c */
/* 0 */ { 0, 0, 0, 0, { 21, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g5_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs201_g5_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs201_g6_s0_lives[] = { /* 0x825535c */
/* 0 */ { 0, 4, 0, 0, { 21, 27, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g6_s0_lives0_dlg0,
} },
/* 1 */ { 91, 4, 0, 0, { 16, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs201_g6_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs201_g0_s0_objs[] = { /* 0x825538c */
/* 0 */ { 4, 0, 5, 2, { 10, 19, CPOS_HALFTILE, 0 }, {
[2] = s_gs201_g0_s0_obj0_dlg2,
} },
};
static const struct GroundObjectData s_gs201_g0_s5_objs[] = { /* 0x82553a4 */
/* 0 */ { 4, 0, 5, 2, { 10, 19, CPOS_HALFTILE, 0 }, {
[2] = s_gs201_g0_s5_obj0_dlg2,
} },
/* 1 */ { 4, 0, 4, 3, { 25, 30, 0, CPOS_HALFTILE }, {
[2] = s_gs201_g0_s5_obj1_dlg2,
} },
};
static const struct GroundEffectData s_gs201_g1_s0_effs[] = { /* 0x82553d4 */
/* 0 */ { 0, 0, 1, 1, { 19, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs201_g3_s0_effs[] = { /* 0x82553e0 */
/* 0 */ { 0, 0, 1, 1, { 19, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs201_g4_s0_effs[] = { /* 0x82553ec */
/* 0 */ { 0, 0, 1, 1, { 19, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs201_g5_s0_effs[] = { /* 0x82553f8 */
/* 0 */ { 0, 0, 1, 1, { 19, 22, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs201_g6_s0_effs[] = { /* 0x8255404 */
/* 0 */ { 0, 0, 1, 1, { 22, 23, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs201_g6_s0_eff0_script },
};
static const struct GroundEventData s_gs201_g2_s0_evts[] = { /* 0x8255410 */
/* 0 */ { 3, 3, 0, 0, { 26, 17, 0, 0 }, &s_gs201_g2_s0_evt0_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x825541c */
&s_gs201_g0_s0_station_sref,
&s_gs201_g1_s0_station_sref,
&s_gs201_g2_s0_station_sref,
&s_gs201_g2_s1_station_sref,
&s_gs201_g3_s0_station_sref,
&s_gs201_g4_s0_station_sref,
&s_gs201_g5_s0_station_sref,
&s_gs201_g6_s0_station_sref,
};
static const struct GroundScriptSector s_gs201_g0_sectors[] = { /* 0x825543c */
{ LPARRAY(s_gs201_g0_s0_lives), LPARRAY(s_gs201_g0_s0_objs), 0,NULL, 0,NULL, 1,&sStationScripts[0], },
{ LPARRAY(s_gs201_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs201_g0_s2_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs201_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs201_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs201_g0_s5_lives), LPARRAY(s_gs201_g0_s5_objs), 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs201_g1_sectors[] = { /* 0x825552c */
{ LPARRAY(s_gs201_g1_s0_lives), 0,NULL, LPARRAY(s_gs201_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs201_g2_sectors[] = { /* 0x8255554 */
{ LPARRAY(s_gs201_g2_s0_lives), 0,NULL, 0,NULL, LPARRAY(s_gs201_g2_s0_evts), 1,&sStationScripts[2], },
{ LPARRAY(s_gs201_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptSector s_gs201_g3_sectors[] = { /* 0x82555a4 */
{ LPARRAY(s_gs201_g3_s0_lives), 0,NULL, LPARRAY(s_gs201_g3_s0_effs), 0,NULL, 1,&sStationScripts[4], },
};
static const struct GroundScriptSector s_gs201_g4_sectors[] = { /* 0x82555cc */
{ LPARRAY(s_gs201_g4_s0_lives), 0,NULL, LPARRAY(s_gs201_g4_s0_effs), 0,NULL, 1,&sStationScripts[5], },
};
static const struct GroundScriptSector s_gs201_g5_sectors[] = { /* 0x82555f4 */
{ LPARRAY(s_gs201_g5_s0_lives), 0,NULL, LPARRAY(s_gs201_g5_s0_effs), 0,NULL, 1,&sStationScripts[6], },
};
static const struct GroundScriptSector s_gs201_g6_sectors[] = { /* 0x825561c */
{ LPARRAY(s_gs201_g6_s0_lives), 0,NULL, LPARRAY(s_gs201_g6_s0_effs), 0,NULL, 1,&sStationScripts[7], },
};
static const struct GroundScriptGroup s_gs201_groups[] = { /* 0x8255644 */
{ LPARRAY(s_gs201_g0_sectors) },
{ LPARRAY(s_gs201_g1_sectors) },
{ LPARRAY(s_gs201_g2_sectors) },
{ LPARRAY(s_gs201_g3_sectors) },
{ LPARRAY(s_gs201_g4_sectors) },
{ LPARRAY(s_gs201_g5_sectors) },
{ LPARRAY(s_gs201_g6_sectors) },
};
static const struct GroundLink s_gs201_links[] = { /* 0x825567c */
/* link 0 */ { { /*x*/ 27, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 23, /*y*/ 25, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs201 = { LPARRAY(s_gs201_groups), s_gs201_links }; /* 0x825568c */

View File

@@ -0,0 +1,315 @@
static const struct ScriptCommand s_gs202_g0_s0_station_sref_script[] = { /* 0x82556a0 */
DEBUGINFO,
SELECT_MAP(202),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 14, /* to label */ 0),
COND(JUDGE_GT, 17, /* to label */ 1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
CALL_STATION( 2, 0),
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 5),
JUMP_LABEL(3),
LABEL(5), /* = 0x05 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 6),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 3),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 4),
JUMP_LABEL(7),
LABEL(6), /* = 0x06 */
SELECT_LIVES(0, 1),
JUMP_LABEL(7),
LABEL(7), /* = 0x07 */
BGM_SWITCH(115),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs202_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs202_g0_s0_station_sref_script }; /* 0x825592c */
static const struct ScriptCommand s_gs202_g0_s0_evt0_sref_script[] = { /* 0x8255938 */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Keep going?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
JUMPIF_ARRAY(RESCUE_SCENARIO_JOB_LIST, 29, /* to label */ 2),
{ 0x02, 0x00, 0x001e, 0x00000010, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
LABEL(2), /* = 0x02 */
{ 0x02, 0x00, 0x001e, 0x00000026, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs202_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs202_g0_s0_evt0_sref_script }; /* 0x8255a64 */
static const struct ScriptCommand s_gs202_g0_s0_evt1_sref_script[] = { /* 0x8255a70 */
DEBUGINFO,
JUMPIF_SCENARIOCHECK(5, /* to label */ 0),
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 1, _("Yes.")),
CHOICE(/* label */ 2, _("*No.")),
LABEL(2), /* = 0x02 */
JUMP_SCRIPT(END_TALK),
LABEL(1), /* = 0x01 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
LABEL(0), /* = 0x00 */
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the entrance?")),
CHOICE(/* label */ 3, _("Yes.")),
CHOICE(/* label */ 4, _("*No.")),
LABEL(4), /* = 0x04 */
JUMP_SCRIPT(END_TALK),
LABEL(3), /* = 0x03 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x01, 0x00, 0x001e, 0x000000c9, 0x00000000, NULL },
HALT,
};
static const struct ScriptRef s_gs202_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs202_g0_s0_evt1_sref_script }; /* 0x8255c38 */
static const struct ScriptCommand s_gs202_g0_s0_obj0_dlg2[] = { /* 0x8255c44 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs202_g0_s1_lives0_dlg0[] = { /* 0x8255c64 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g0_s1_lives1_dlg0[] = { /* 0x8255ca4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g0_s3_lives0_dlg0[] = { /* 0x8255ce4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g0_s3_lives1_dlg0[] = { /* 0x8255d24 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g0_s4_lives0_dlg0[] = { /* 0x8255d64 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g0_s4_lives1_dlg0[] = { /* 0x8255d94 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs202_g1_s0_station_sref_script[] = { /* 0x8255dc4 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 202),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 202),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMPIF_EQUAL(SCENARIO_MAIN, 14, /* to label */ 0),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
{ 0x3b, 0x1c, 0x0000, 0x00000000, 0x00000000, NULL },
LABEL(1), /* = 0x01 */
SELECT_MAP(202),
CALL_STATION( 2, 0),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(115),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs202_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs202_g1_s0_station_sref_script }; /* 0x8255ef4 */
static const struct ScriptCommand s_gs202_g1_s0_lives0_dlg0[] = { /* 0x8255f00 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nThat didn't work out...")),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But we didn't have far to\ngo!")),
VARIANT(/* == */ 1, _(" Let's storm our way to the\ntop this time, $n0!")),
VARIANT_DEFAULT(_(" But we were very close!")),
VARIANT_DEFAULT(_(" Let's be sure to reach the\npeak this time, $n0!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs202_g1_s0_lives1_dlg0[] = { /* 0x82561ac */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs202_g2_s0_station_sref_script[] = { /* 0x825628c */
DEBUGINFO,
SELECT_ENTITIES(-1, -1),
RET_DIRECT,
};
static const struct ScriptRef s_gs202_g2_s0_station_sref = { 403, 8, NULL /* STATION_CONTROL */, s_gs202_g2_s0_station_sref_script }; /* 0x82562bc */
static const struct GroundLivesData s_gs202_g0_s0_lives[] = { /* 0x82562c8 */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs202_g0_s1_lives[] = { /* 0x82562e0 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs202_g0_s3_lives[] = { /* 0x8256310 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs202_g0_s4_lives[] = { /* 0x8256340 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs202_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs202_g1_s0_lives[] = { /* 0x8256370 */
/* 0 */ { 0, 0, 0, 0, { 30, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs202_g1_s0_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 27, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs202_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs202_g0_s0_objs[] = { /* 0x82563a0 */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs202_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs202_g1_s0_effs[] = { /* 0x82563b8 */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs202_g0_s0_evts[] = { /* 0x82563c4 */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs202_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs202_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82563dc */
&s_gs202_g0_s0_station_sref,
&s_gs202_g1_s0_station_sref,
&s_gs202_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs202_g0_sectors[] = { /* 0x82563e8 */
{ LPARRAY(s_gs202_g0_s0_lives), LPARRAY(s_gs202_g0_s0_objs), 0,NULL, LPARRAY(s_gs202_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs202_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs202_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs202_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs202_g1_sectors[] = { /* 0x82564b0 */
{ LPARRAY(s_gs202_g1_s0_lives), 0,NULL, LPARRAY(s_gs202_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs202_g2_sectors[] = { /* 0x82564d8 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs202_groups[] = { /* 0x8256500 */
{ LPARRAY(s_gs202_g0_sectors) },
{ LPARRAY(s_gs202_g1_sectors) },
{ LPARRAY(s_gs202_g2_sectors) },
};
static const struct GroundLink s_gs202_links[] = { /* 0x8256518 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs202 = { LPARRAY(s_gs202_groups), s_gs202_links }; /* 0x8256520 */

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,291 @@
static const struct ScriptCommand s_gs204_g0_s0_station_sref_script[] = { /* 0x825ce34 */
DEBUGINFO,
SELECT_MAP(204),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 15, /* to label */ 0),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
JUMP_LABEL(1),
LABEL(1), /* = 0x01 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 2),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 4),
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 5),
JUMP_LABEL(5),
LABEL(2), /* = 0x02 */
SELECT_LIVES(0, 3),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 4),
JUMP_LABEL(6),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 1),
JUMP_LABEL(6),
LABEL(6), /* = 0x06 */
BGM_SWITCH(108),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs204_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs204_g0_s0_station_sref_script }; /* 0x825d030 */
static const struct ScriptCommand s_gs204_g0_s1_lives0_dlg0[] = { /* 0x825d03c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g0_s1_lives1_dlg0[] = { /* 0x825d07c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g0_s3_lives0_dlg0[] = { /* 0x825d0bc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g0_s3_lives1_dlg0[] = { /* 0x825d0fc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g0_s4_lives0_dlg0[] = { /* 0x825d13c */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g0_s4_lives1_dlg0[] = { /* 0x825d16c */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs204_g1_s0_station_sref_script[] = { /* 0x825d19c */
DEBUGINFO,
SELECT_MAP(204),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(108),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000011, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs204_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs204_g1_s0_station_sref_script }; /* 0x825d21c */
static const struct ScriptCommand s_gs204_g1_s0_lives0_dlg0[] = { /* 0x825d228 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000067, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(10),
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(30),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So this is it...#W\nThe underground cavern where\n$n2 is...")),
VARIANT(/* == */ 1, _(" Look at the flowing\nstreams of lava...")),
VARIANT(/* == */ 1, _(" It wouldn't surprise me if\nthe dungeon is scorching hot...")),
VARIANT_DEFAULT(_(" This must be it...#W\n$n2 is in this underground\ncavern.")),
VARIANT_DEFAULT(_(" Whew...\nLook at the streams of lava.")),
VARIANT_DEFAULT(_(" It's going to be scorching\nhot in the dungeon, I think.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x93, 0x04, 0x000b, 0x00000022, 0x00000000, NULL },
WAIT(15),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Other rescue teams should\nalready be inside.")),
VARIANT(/* == */ 1, _(" Let's get in there and give\nit our best!")),
VARIANT(/* == */ 3, _(" Other rescue teams\nshould already be here.")),
VARIANT(/* == */ 3, _(" Let's get going and try our\nbest!")),
VARIANT_DEFAULT(_(" There should be other\nrescue teams making their way through\neven now.")),
VARIANT_DEFAULT(_(" Let's try our best like\nalways!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs204_g1_s0_lives1_dlg0[] = { /* 0x825d6dc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs204_g2_s0_station_sref_script[] = { /* 0x825d78c */
DEBUGINFO,
SELECT_MAP(204),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(108),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000011, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs204_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs204_g2_s0_station_sref_script }; /* 0x825d80c */
static const struct ScriptCommand s_gs204_g2_s0_lives0_dlg0[] = { /* 0x825d818 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000058, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000022, 0x00000000, NULL },
WAIT(15),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" This time, we'll rescue\n$n2's team!\nLet's get it done!")),
VARIANT_DEFAULT(_(" This time, we have to\nrescue $n2's team!\nLet's not blow it!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x6b, 0x00, 0x0100, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs204_g2_s0_lives1_dlg0[] = { /* 0x825d9bc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x93, 0x04, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs204_g0_s1_lives[] = { /* 0x825da4c */
/* 0 */ { 0, 4, 0, 0, { 26, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 26, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs204_g0_s3_lives[] = { /* 0x825da7c */
/* 0 */ { 0, 4, 0, 0, { 26, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 26, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs204_g0_s4_lives[] = { /* 0x825daac */
/* 0 */ { 0, 4, 0, 0, { 26, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 26, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs204_g1_s0_lives[] = { /* 0x825dadc */
/* 0 */ { 0, 2, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 23, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs204_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs204_g2_s0_lives[] = { /* 0x825db0c */
/* 0 */ { 0, 2, 0, 0, { 28, 35, 0, CPOS_HALFTILE }, {
[0] = s_gs204_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 23, 34, 0, CPOS_HALFTILE }, {
[0] = s_gs204_g2_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs204_g1_s0_effs[] = { /* 0x825db3c */
/* 0 */ { 0, 0, 1, 1, { 26, 17, 0, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs204_g2_s0_effs[] = { /* 0x825db48 */
/* 0 */ { 0, 0, 1, 1, { 26, 17, 0, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x825db54 */
&s_gs204_g0_s0_station_sref,
&s_gs204_g1_s0_station_sref,
&s_gs204_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs204_g0_sectors[] = { /* 0x825db60 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
{ LPARRAY(s_gs204_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs204_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs204_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs204_g1_sectors[] = { /* 0x825dc28 */
{ LPARRAY(s_gs204_g1_s0_lives), 0,NULL, LPARRAY(s_gs204_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs204_g2_sectors[] = { /* 0x825dc50 */
{ LPARRAY(s_gs204_g2_s0_lives), 0,NULL, LPARRAY(s_gs204_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptGroup s_gs204_groups[] = { /* 0x825dc78 */
{ LPARRAY(s_gs204_g0_sectors) },
{ LPARRAY(s_gs204_g1_sectors) },
{ LPARRAY(s_gs204_g2_sectors) },
{},
};
static const struct GroundLink s_gs204_links[] = { /* 0x825dc98 */
/* link 0 */ { { /*x*/ 28, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 23, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 26, /*y*/ 10, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 26, /*y*/ 11, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs204 = { LPARRAY(s_gs204_groups), s_gs204_links }; /* 0x825dcb8 */

View File

@@ -0,0 +1,264 @@
static const struct ScriptCommand s_gs205_g0_s0_station_sref_script[] = { /* 0x825dccc */
DEBUGINFO,
SELECT_MAP(205),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_GT, 17, /* to label */ 0),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(1),
LABEL(1), /* = 0x01 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 2),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 4),
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 5),
JUMP_LABEL(5),
LABEL(2), /* = 0x02 */
SELECT_LIVES(0, 3),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 4),
JUMP_LABEL(6),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 1),
JUMP_LABEL(6),
LABEL(6), /* = 0x06 */
BGM_SWITCH(108),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs205_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs205_g0_s0_station_sref_script }; /* 0x825dee8 */
static const struct ScriptCommand s_gs205_g0_s0_evt0_sref_script[] = { /* 0x825def4 */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Keep going?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x02, 0x00, 0x001e, 0x00000012, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs205_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs205_g0_s0_evt0_sref_script }; /* 0x825dfd0 */
static const struct ScriptCommand s_gs205_g0_s0_evt1_sref_script[] = { /* 0x825dfdc */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
};
static const struct ScriptRef s_gs205_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs205_g0_s0_evt1_sref_script }; /* 0x825e0dc */
static const struct ScriptCommand s_gs205_g0_s0_obj0_dlg2[] = { /* 0x825e0e8 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs205_g0_s1_lives0_dlg0[] = { /* 0x825e108 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g0_s1_lives1_dlg0[] = { /* 0x825e148 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g0_s3_lives0_dlg0[] = { /* 0x825e188 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g0_s3_lives1_dlg0[] = { /* 0x825e1c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g0_s4_lives0_dlg0[] = { /* 0x825e208 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g0_s4_lives1_dlg0[] = { /* 0x825e238 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs205_g1_s0_station_sref_script[] = { /* 0x825e268 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 205),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 205),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(205),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(108),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs205_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs205_g1_s0_station_sref_script }; /* 0x825e338 */
static const struct ScriptCommand s_gs205_g1_s0_lives0_dlg0[] = { /* 0x825e344 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nThat didn't work out...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But we didn't have far to\ngo!#W\nLet's give it our best!")),
VARIANT_DEFAULT(_(" But we were very close!#W\nLet's keep trying our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs205_g1_s0_lives1_dlg0[] = { /* 0x825e570 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs205_g0_s0_lives[] = { /* 0x825e620 */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs205_g0_s1_lives[] = { /* 0x825e638 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs205_g0_s3_lives[] = { /* 0x825e668 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs205_g0_s4_lives[] = { /* 0x825e698 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs205_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs205_g1_s0_lives[] = { /* 0x825e6c8 */
/* 0 */ { 0, 2, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs205_g1_s0_lives0_dlg0,
} },
/* 1 */ { 7, 6, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs205_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs205_g0_s0_objs[] = { /* 0x825e6f8 */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs205_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs205_g1_s0_effs[] = { /* 0x825e710 */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs205_g0_s0_evts[] = { /* 0x825e71c */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs205_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs205_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x825e734 */
&s_gs205_g0_s0_station_sref,
&s_gs205_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs205_g0_sectors[] = { /* 0x825e73c */
{ LPARRAY(s_gs205_g0_s0_lives), LPARRAY(s_gs205_g0_s0_objs), 0,NULL, LPARRAY(s_gs205_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs205_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs205_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs205_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs205_g1_sectors[] = { /* 0x825e804 */
{ LPARRAY(s_gs205_g1_s0_lives), 0,NULL, LPARRAY(s_gs205_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs205_groups[] = { /* 0x825e82c */
{ LPARRAY(s_gs205_g0_sectors) },
{ LPARRAY(s_gs205_g1_sectors) },
};
static const struct GroundLink s_gs205_links[] = { /* 0x825e83c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs205 = { LPARRAY(s_gs205_groups), s_gs205_links }; /* 0x825e844 */

View File

@@ -0,0 +1,420 @@
static const struct ScriptCommand s_gs206_g0_s0_station_sref_script[] = { /* 0x825e858 */
DEBUGINFO,
SELECT_MAP(206),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs206_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs206_g0_s0_station_sref_script }; /* 0x825e8c4 */
static const struct ScriptCommand s_gs206_g1_s0_station_sref_script[] = { /* 0x825e8d0 */
DEBUGINFO,
SELECT_MAP(206),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
FANFARE_FADEOUT2(60, 453),
BGM_FADEOUT(60),
{ 0x3b, 0x39, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
{ 0x97, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0000, 0x00000001, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0001, 0x00000058, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x00000067, 0x00000000, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Having calmed $n2,\n#+$n0's team left the dungeon...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+And returned to Pokémon Square\n#+together with $n1's team.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x3b, 0x39, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs206_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs206_g1_s0_station_sref_script }; /* 0x825eacc */
static const struct ScriptCommand s_gs206_g1_s0_eff0_script[] = { /* 0x825ead8 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
END_DELETE,
};
static const struct ScriptCommand s_gs206_g1_s0_lives0_dlg0[] = { /* 0x825eb18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(493),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(15),
FANFARE_PLAY2(493),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Grgaaaaaah!") },
WAIT(120),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(90),
FANFARE_PLAY2(499),
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 1),
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Look! It's $n3!#W\n$n4 and $n5 too!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" Urrgggh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x0c, 0x0004, 0x00000043, 0x00000000, NULL },
{ 0x34, 0x00, 0x0004, 0x00000000, 0x00000000, _(" Did you do it?\n$n2?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Are you all right?")),
VARIANT_DEFAULT(_(" Are you OK?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x10, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Yes, fine.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" We will be fine.\nBut we must get out immediately.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0005, 0x00000005, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What about $n2?#W\nWill it be OK?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Your concern is unneeded.\nIt will awaken soon enough.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" It had lost control only\nbecause it was enraged from having its\nsleep disturbed.") },
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" It should calm down.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(453),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000003, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0005, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Waah...#W\nAnother quake!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0003, 0x00000000, 0x00000000, _(" Out! Quickly!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s0_lives1_dlg0[] = { /* 0x825f2ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0080, 0x00000000, -0x00000008, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x0a, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s0_lives2_dlg0[] = { /* 0x825f41c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s0_lives3_dlg0[] = { /* 0x825f49c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s0_lives4_dlg0[] = { /* 0x825f51c */
DEBUGINFO,
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(665),
WAIT(60),
FANFARE_PLAY2(662),
{ 0x97, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x97, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s0_eff1_script[] = { /* 0x825f5fc */
DEBUGINFO,
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000067, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs206_g1_s0_eff2_script[] = { /* 0x825f65c */
DEBUGINFO,
{ 0xe3, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000067, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs206_g1_s0_eff3_script[] = { /* 0x825f6bc */
DEBUGINFO,
{ 0xe3, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000067, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs206_g1_s1_lives0_dlg0[] = { /* 0x825f71c */
DEBUGINFO,
{ 0x54, 0x00, 0x001a, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x0a, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x0a, 0x0001, 0x00000007, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x0a, 0x0002, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s1_lives1_dlg0[] = { /* 0x825f91c */
DEBUGINFO,
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
WAIT(25),
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
WAIT(25),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x91, 0x0a, 0x0002, 0x00000001, 0x00000000, NULL },
WAIT(20),
{ 0x91, 0x0a, 0x0001, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x88, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs206_g1_s1_lives2_dlg0[] = { /* 0x825fb1c */
DEBUGINFO,
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000001, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000001, NULL },
WAIT(30),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000002, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000002, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000002, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000002, NULL },
WAIT(40),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(40),
{ 0x91, 0x0a, 0x0001, 0x00000006, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x0a, 0x0002, 0x00000001, 0x00000000, NULL },
WAIT(5),
{ 0x91, 0x0a, 0x0001, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x88, 0x0100, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs206_g1_s0_lives[] = { /* 0x825fdcc */
/* 0 */ { 0, 4, 0, 0, { 34, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 27, 29, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 33, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s0_lives3_dlg0,
} },
/* 4 */ { 103, 0, 0, 0, { 30, 22, CPOS_HALFTILE, 0 }, {
[0] = s_gs206_g1_s0_lives4_dlg0,
} },
};
static const struct GroundLivesData s_gs206_g1_s1_lives[] = { /* 0x825fe44 */
/* 0 */ { 88, 0, 0, 0, { 30, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s1_lives0_dlg0,
} },
/* 1 */ { 89, 7, 0, 0, { 26, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s1_lives1_dlg0,
} },
/* 2 */ { 90, 1, 0, 0, { 36, 24, 0, CPOS_HALFTILE }, {
[0] = s_gs206_g1_s1_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs206_g1_s0_effs[] = { /* 0x825fe8c */
/* 0 */ { 0, 0, 1, 1, { 31, 26, 0, CPOS_HALFTILE }, s_gs206_g1_s0_eff0_script },
/* 1 */ { 4, 0, 2, 1, { 30, 26, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs206_g1_s0_eff1_script },
/* 2 */ { 4, 0, 2, 1, { 36, 24, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs206_g1_s0_eff2_script },
/* 3 */ { 4, 0, 2, 1, { 26, 24, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs206_g1_s0_eff3_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x825febc */
&s_gs206_g0_s0_station_sref,
&s_gs206_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs206_g0_sectors[] = { /* 0x825fec4 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs206_g1_sectors[] = { /* 0x825feec */
{ LPARRAY(s_gs206_g1_s0_lives), 0,NULL, LPARRAY(s_gs206_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ LPARRAY(s_gs206_g1_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs206_groups[] = { /* 0x825ff3c */
{ LPARRAY(s_gs206_g0_sectors) },
{ LPARRAY(s_gs206_g1_sectors) },
};
static const struct GroundLink s_gs206_links[] = { /* 0x825ff4c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs206 = { LPARRAY(s_gs206_groups), s_gs206_links }; /* 0x825ff54 */

View File

@@ -0,0 +1,421 @@
static const struct ScriptCommand s_gs207_g0_s0_station_sref_script[] = { /* 0x825ff68 */
DEBUGINFO,
SELECT_MAP(207),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs207_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs207_g0_s0_station_sref_script }; /* 0x825ffd4 */
static const struct ScriptCommand s_gs207_g1_s0_station_sref_script[] = { /* 0x825ffe0 */
DEBUGINFO,
BGM_FADEOUT(30),
WAIT(60),
SELECT_MAP(207),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(22),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs207_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs207_g1_s0_station_sref_script }; /* 0x8260080 */
static const struct ScriptCommand s_gs207_g1_s0_lives0_dlg0[] = { /* 0x826008c */
DEBUGINFO,
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0030, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x00000088, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
FANFARE_PLAY2(509),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
FANFARE_PLAY2(510),
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002c, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Ouch...#W\nWhere are we?")),
VARIANT_DEFAULT(_(" Owowow...#W\nWhere are we?")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wah!\n$n0, this is cool!#W\nWe're on clouds!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Oh, wow!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" $n0, look up there!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g1_s0_lives1_dlg0[] = { /* 0x8260458 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0030, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x00000088, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x002c, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
WAIT(30),
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0031, 0x00000000, 0x00000000, NULL },
{ 0x84, 0x00, 0x0080, -0x00000018, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(457),
CALL_SCRIPT(JUMP_ANGRY_FUNC),
WAIT(30),
{ 0x84, 0x00, 0x0080, 0x00000018, 0x00000010, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(457),
CALL_SCRIPT(JUMP_ANGRY_FUNC),
WAIT(30),
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(458),
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x84, 0x00, 0x0099, 0x00000000, -0x00000010, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g1_s0_lives2_dlg0[] = { /* 0x8260738 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x000000c8, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g2_s0_station_sref_script[] = { /* 0x82608a8 */
DEBUGINFO,
SELECT_MAP(207),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(22),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000013, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs207_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs207_g2_s0_station_sref_script }; /* 0x8260928 */
static const struct ScriptCommand s_gs207_g2_s0_lives0_dlg0[] = { /* 0x8260934 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0002, 0x0000006c, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" It must be at the very top...")),
VARIANT(/* == */ 1, _(" That must be where\n$n2 is...")),
VARIANT_DEFAULT(_(" It's at the top of this\ntower...")),
VARIANT_DEFAULT(_(" That's where $n2\nis...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" $n0!\nLet's give it our best!")),
VARIANT_DEFAULT(_(" $n0!\nLet's do our best on the climb!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g2_s0_lives1_dlg0[] = { /* 0x8260b8c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(10),
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g2_s0_lives2_dlg0[] = { /* 0x8260c3c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g3_s0_station_sref_script[] = { /* 0x8260cac */
DEBUGINFO,
SELECT_MAP(207),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(22),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x02, 0x00, 0x001e, 0x00000013, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs207_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs207_g3_s0_station_sref_script }; /* 0x8260d2c */
static const struct ScriptCommand s_gs207_g3_s0_lives0_dlg0[] = { /* 0x8260d38 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0030, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x00000088, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(509),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" All right.\nWe're up in the sky again.")),
VARIANT_DEFAULT(_(" OK.\nHere we are in the sky again.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000006, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Let's storm our way to\nthe top floor!")),
VARIANT_DEFAULT(_(" Let's head for the top!\nThis is it!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g3_s0_lives1_dlg0[] = { /* 0x826104c */
DEBUGINFO,
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0030, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x00000088, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
WAIT(10),
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs207_g3_s0_lives2_dlg0[] = { /* 0x82611dc */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x60, 0x00, 0x0000, 0x000000c8, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x70, 0x00, 0x0a00, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x52, 0x00, 0x0000, 0x01000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x70, 0x00, 0x0200, 0x0000000c, 0x00000000, NULL },
WAIT(2),
{ 0x70, 0x00, 0x0200, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs207_g1_s0_lives[] = { /* 0x826131c */
/* 0 */ { 0, 6, 0, 0, { 28, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 6, 0, 0, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g1_s0_lives1_dlg0,
} },
/* 2 */ { 10, 6, 0, 0, { 25, 24, CPOS_HALFTILE, 0 }, {
[0] = s_gs207_g1_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs207_g2_s0_lives[] = { /* 0x8261364 */
/* 0 */ { 0, 4, 0, 0, { 28, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g2_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 25, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g2_s0_lives2_dlg0,
} },
};
static const struct GroundLivesData s_gs207_g3_s0_lives[] = { /* 0x82613ac */
/* 0 */ { 0, 0, 0, 0, { 28, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 0, 0, 0, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g3_s0_lives1_dlg0,
} },
/* 2 */ { 10, 0, 0, 0, { 25, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs207_g3_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs207_g1_s0_effs[] = { /* 0x82613f4 */
/* 0 */ { 0, 0, 1, 1, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs207_g2_s0_effs[] = { /* 0x8261400 */
/* 0 */ { 0, 0, 1, 1, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEffectData s_gs207_g3_s0_effs[] = { /* 0x826140c */
/* 0 */ { 0, 0, 1, 1, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8261418 */
&s_gs207_g0_s0_station_sref,
&s_gs207_g1_s0_station_sref,
&s_gs207_g2_s0_station_sref,
&s_gs207_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs207_g0_sectors[] = { /* 0x8261428 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs207_g1_sectors[] = { /* 0x8261450 */
{ LPARRAY(s_gs207_g1_s0_lives), 0,NULL, LPARRAY(s_gs207_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs207_g2_sectors[] = { /* 0x8261478 */
{ LPARRAY(s_gs207_g2_s0_lives), 0,NULL, LPARRAY(s_gs207_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs207_g3_sectors[] = { /* 0x82614a0 */
{ LPARRAY(s_gs207_g3_s0_lives), 0,NULL, LPARRAY(s_gs207_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs207_groups[] = { /* 0x82614c8 */
{ LPARRAY(s_gs207_g0_sectors) },
{ LPARRAY(s_gs207_g1_sectors) },
{ LPARRAY(s_gs207_g2_sectors) },
{ LPARRAY(s_gs207_g3_sectors) },
{},
};
static const struct GroundLink s_gs207_links[] = { /* 0x82614f0 */
/* link 0 */ { { /*x*/ 25, /*y*/ 12, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs207 = { LPARRAY(s_gs207_groups), s_gs207_links }; /* 0x82614f8 */

View File

@@ -0,0 +1,265 @@
static const struct ScriptCommand s_gs208_g0_s0_station_sref_script[] = { /* 0x826150c */
DEBUGINFO,
SELECT_MAP(208),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_GT, 17, /* to label */ 0),
JUMP_LABEL(1),
LABEL(0), /* = 0x00 */
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 0),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
JUMP_LABEL(1),
LABEL(1), /* = 0x01 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 2),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 4),
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 5),
JUMP_LABEL(5),
LABEL(2), /* = 0x02 */
SELECT_LIVES(0, 3),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 4),
JUMP_LABEL(6),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 1),
JUMP_LABEL(6),
LABEL(6), /* = 0x06 */
BGM_SWITCH(22),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs208_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs208_g0_s0_station_sref_script }; /* 0x8261728 */
static const struct ScriptCommand s_gs208_g0_s0_evt0_sref_script[] = { /* 0x8261734 */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Keep going?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x02, 0x00, 0x001e, 0x00000014, 0x00000000, NULL },
COND_EQUAL(-1, /* to label */ 1),
HALT,
};
static const struct ScriptRef s_gs208_g0_s0_evt0_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs208_g0_s0_evt0_sref_script }; /* 0x8261810 */
static const struct ScriptCommand s_gs208_g0_s0_evt1_sref_script[] = { /* 0x826181c */
DEBUGINFO,
ASK1(FALSE, /*default*/ 0, /* speaker */ -1, _("Return to the rescue team base?")),
CHOICE(/* label */ 0, _("Yes.")),
CHOICE(/* label */ 1, _("*No.")),
LABEL(1), /* = 0x01 */
JUMP_SCRIPT(END_TALK),
LABEL(0), /* = 0x00 */
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(30),
{ 0x23, 0x01, -0x0001, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(DISMISSAL_SALLY_MEMBER4_FUNC),
SET_DUNGEON_RES(/* result */ 10, /* enter */ -1),
EXECUTE_STATION(12, 4, 0),
HALT,
};
static const struct ScriptRef s_gs208_g0_s0_evt1_sref = { 357, 2, NULL /* GETOUT_NORMAL */, s_gs208_g0_s0_evt1_sref_script }; /* 0x826191c */
static const struct ScriptCommand s_gs208_g0_s0_obj0_dlg2[] = { /* 0x8261928 */
DEBUGINFO,
JUMP_SCRIPT(SAVE_POINT),
};
static const struct ScriptCommand s_gs208_g0_s1_lives0_dlg0[] = { /* 0x8261948 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g0_s1_lives1_dlg0[] = { /* 0x8261988 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g0_s3_lives0_dlg0[] = { /* 0x82619c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g0_s3_lives1_dlg0[] = { /* 0x8261a08 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g0_s4_lives0_dlg0[] = { /* 0x8261a48 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g0_s4_lives1_dlg0[] = { /* 0x8261a78 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs208_g1_s0_station_sref_script[] = { /* 0x8261aa8 */
DEBUGINFO,
SET_DUNGEON_RES(/* result */ 0, /* enter */ -1),
UPDATE_VARINT(CALC_SET, GROUND_ENTER, 208),
UPDATE_VARINT(CALC_SET, GROUND_GETOUT, 208),
UPDATE_VARINT(CALC_SET, PARTNER1_KIND, 2),
UPDATE_VARINT(CALC_SET, PARTNER2_KIND, 0),
SELECT_MAP(208),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(22),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
SELECT_EVENTS(0, 0),
RET,
};
static const struct ScriptRef s_gs208_g1_s0_station_sref = { 402, 7, NULL /* EVENT_STATION */, s_gs208_g1_s0_station_sref_script }; /* 0x8261b78 */
static const struct ScriptCommand s_gs208_g1_s0_lives0_dlg0[] = { /* 0x8261b84 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_LEFT_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x02, 0x0001, 0x00000002, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Hmm...#W\nWell, that didn't go well.")),
VARIANT_DEFAULT(_(" Hmm...#W\nThat didn't work out...")),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" But we didn't have far to\ngo!#W\nLet's give it our best!")),
VARIANT_DEFAULT(_(" But we were very close!#W\nLet's keep trying our best!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x9b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs208_g1_s0_lives1_dlg0[] = { /* 0x8261dc0 */
DEBUGINFO,
CALL_SCRIPT(INIT_SLEEP_FUNC),
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(15),
CALL_SCRIPT(WAKEUP_FUNC),
CALL_SCRIPT(LOOK_AROUND_RIGHT_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x52, 0x00, 0x0000, 0x00001000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs208_g0_s0_lives[] = { /* 0x8261e70 */
/* 0 */ { 145, 0, 0, 0, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {} },
};
static const struct GroundLivesData s_gs208_g0_s1_lives[] = { /* 0x8261e88 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs208_g0_s3_lives[] = { /* 0x8261eb8 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs208_g0_s4_lives[] = { /* 0x8261ee8 */
/* 0 */ { 0, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 41, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs208_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs208_g1_s0_lives[] = { /* 0x8261f18 */
/* 0 */ { 0, 2, 0, 0, { 31, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs208_g1_s0_lives0_dlg0,
} },
/* 1 */ { 7, 6, 0, 0, { 26, 38, 0, CPOS_HALFTILE }, {
[0] = s_gs208_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs208_g0_s0_objs[] = { /* 0x8261f48 */
/* 0 */ { 4, 0, 4, 3, { 28, 28, CPOS_HALFTILE, CPOS_HALFTILE }, {
[2] = s_gs208_g0_s0_obj0_dlg2,
} },
};
static const struct GroundEffectData s_gs208_g1_s0_effs[] = { /* 0x8261f60 */
/* 0 */ { 0, 0, 1, 1, { 28, 37, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct GroundEventData s_gs208_g0_s0_evts[] = { /* 0x8261f6c */
/* 0 */ { 15, 3, 0, 0, { 21, 12, 0, 0 }, &s_gs208_g0_s0_evt0_sref },
/* 1 */ { 15, 3, 0, 0, { 21, 42, 0, 0 }, &s_gs208_g0_s0_evt1_sref },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8261f84 */
&s_gs208_g0_s0_station_sref,
&s_gs208_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs208_g0_sectors[] = { /* 0x8261f8c */
{ LPARRAY(s_gs208_g0_s0_lives), LPARRAY(s_gs208_g0_s0_objs), 0,NULL, LPARRAY(s_gs208_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs208_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs208_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs208_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs208_g1_sectors[] = { /* 0x8262054 */
{ LPARRAY(s_gs208_g1_s0_lives), 0,NULL, LPARRAY(s_gs208_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs208_groups[] = { /* 0x826207c */
{ LPARRAY(s_gs208_g0_sectors) },
{ LPARRAY(s_gs208_g1_sectors) },
};
static const struct GroundLink s_gs208_links[] = { /* 0x826208c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs208 = { LPARRAY(s_gs208_groups), s_gs208_links }; /* 0x8262094 */

View File

@@ -0,0 +1,564 @@
static const struct ScriptCommand s_gs209_g0_s0_station_sref_script[] = { /* 0x82620a8 */
DEBUGINFO,
SELECT_MAP(209),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs209_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs209_g0_s0_station_sref_script }; /* 0x8262114 */
static const struct ScriptCommand s_gs209_g1_s0_station_sref_script[] = { /* 0x8262120 */
DEBUGINFO,
SELECT_MAP(209),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(26),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0010, 0x00000000, 0x00000000, NULL },
FANFARE_FADEOUT2(16, 512),
RET,
};
static const struct ScriptRef s_gs209_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs209_g1_s0_station_sref_script }; /* 0x82621b0 */
static const struct ScriptCommand s_gs209_g1_s0_eff0_script[] = { /* 0x82621bc */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0500, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs209_g1_s0_lives0_dlg0[] = { /* 0x826223c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(5),
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaaaaaaaaaaaaah!") },
WAIT(30),
FANFARE_PLAY2(493),
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(20),
FANFARE_PLAY2(493),
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(120),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(848),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, -0x00000002, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...Gwaargh!") },
WAIT(90),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(30),
FANFARE_PLAY2(512),
{ 0x27, 0x00, 0x0005, 0x00000010, 0x00ffffff, NULL },
{ 0x97, 0x00, 0x0002, 0x00000005, 0x00000002, NULL },
WAIT(40),
{ 0x97, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000001, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
WAIT(60),
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Wh-wh-what?! Quake?!#W\nIt can't be!")),
VARIANT(/* == */ 1, _(" We're up on clouds...")),
VARIANT_DEFAULT(_(" Wh-wh-what?!\nAn earthquake?!#W\nIt's not possible!")),
VARIANT_DEFAULT(_(" We're on top of clouds...")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" These are shock waves!#W\nAnd they're huge!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That's it! I get it now!#W\nLook straight up, $n2!")),
VARIANT_DEFAULT(_(" That's it! I got it!#W\nLook straight up, $n2!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g1_s0_lives1_dlg0[] = { /* 0x826282c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g1_s0_lives2_dlg0[] = { /* 0x826290c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g1_s0_lives3_dlg0[] = { /* 0x82629ac */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g1_s0_lives4_dlg0[] = { /* 0x8262a4c */
DEBUGINFO,
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(652),
{ 0x97, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
WAIT(8),
{ 0x97, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(672),
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(2),
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
WAIT(2),
{ 0x62, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(2),
{ 0x62, 0x00, 0x0100, -0x00000001, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(672),
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
WAIT(1),
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
WAIT(1),
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
WAIT(1),
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
WAIT(1),
{ 0x62, 0x00, 0x0100, -0x00000002, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(774),
{ 0x54, 0x00, 0x0017, 0x00000000, 0x00000000, NULL },
{ 0x36, 0x00, -0x0001, 0x00000000, 0x00000000, _("Gyaaaaaaaaaaaaaah!") },
{ 0x28, 0x01, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(5),
{ 0x27, 0x00, 0x0005, 0x00000008, 0x00ffffff, NULL },
WAIT(90),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(517),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(3),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x001b, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_station_sref_script[] = { /* 0x8262e10 */
DEBUGINFO,
SELECT_MAP(209),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(26),
{ 0x97, 0x00, 0x0002, 0x00000001, 0x00000001, NULL },
WAIT(15),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000010, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs209_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs209_g2_s0_station_sref_script }; /* 0x8262eb0 */
static const struct ScriptCommand s_gs209_g2_s0_eff0_script[] = { /* 0x8262ebc */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x14, 0x0500, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs209_g2_s0_lives0_dlg0[] = { /* 0x8262f4c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" What is that?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
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!")),
VARIANT_DEFAULT(_(" It's a shooting star!\nAnd it's enormous!")),
VARIANT_DEFAULT(_(" It will destroy the world\nif it continues on its path!")),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" That's why we came,\n$n2. We need you to destroy\nthat falling star!")),
VARIANT(/* == */ 3, _(" That's why we came,\n$n2.\nPlease, destroy the falling star!")),
VARIANT_DEFAULT(_(" That's why we came,\n$n2.\nPlease, destroy the falling star!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...So, that is why...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" Yes! Hurry!\nDestroy it!")),
VARIANT_DEFAULT(_(" Yes!\nPlease hurry and destroy it!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WBefore I try...#W\nI need to know your resolve.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The star has come too close.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" If I were to loose my\nHyper Beam here...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You would not escape\nunscathed!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
MSG_VAR(2, PARTNER_TALK_KIND, 1),
VARIANT(/* == */ 1, _(" So what?!#W\nWe knew that right from the start!")),
VARIANT_DEFAULT(_(" So?!#W\nWe accepted that from the start!")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Well said!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
FANFARE_PLAY2(664),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take charge of your destiny!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(513),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_lives1_dlg0[] = { /* 0x8263660 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_lives2_dlg0[] = { /* 0x82636a0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_lives3_dlg0[] = { /* 0x82636e0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_lives4_dlg0[] = { /* 0x8263720 */
DEBUGINFO,
{ 0x54, 0x00, 0x001b, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0018, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x001a, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g2_s0_eff1_script[] = { /* 0x8263860 */
DEBUGINFO,
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000006f, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000070, 0x00000000, NULL },
WAIT(120),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, -0x0000001a, 0x00000000, NULL },
WAIT(1),
{ 0x56, 0x00, 0x0000, 0x00000133, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000134, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_station_sref_script[] = { /* 0x8263980 */
DEBUGINFO,
SELECT_MAP(209),
SELECT_ENTITIES(-1, -1),
BGM_SWITCH(26),
{ 0x97, 0x00, 0x0002, 0x00000005, 0x00000002, NULL },
WAIT(15),
{ 0x27, 0x00, 0x0005, 0x00000010, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x28, 0x01, 0x0005, 0x0000003c, 0x00ffffff, NULL },
WAIT(120),
{ 0x31, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
WAIT(240),
RET,
};
static const struct ScriptRef s_gs209_g3_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs209_g3_s0_station_sref_script }; /* 0x8263a70 */
static const struct ScriptCommand s_gs209_g3_s0_lives0_dlg0[] = { /* 0x8263a7c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
WAIT(30),
{ 0x2b, 0x00, 0x0000, 0x0000000f, 0x0000000f, NULL },
{ 0x2e, 0x02, 0x0001, 0x0000000c, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Waaaaaaaaaaaaaaaaaah!") },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_lives1_dlg0[] = { /* 0x8263b44 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_lives2_dlg0[] = { /* 0x8263b84 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_lives3_dlg0[] = { /* 0x8263bb4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_lives4_dlg0[] = { /* 0x8263be4 */
DEBUGINFO,
{ 0x54, 0x00, 0x001a, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs209_g3_s0_eff1_script[] = { /* 0x8263c24 */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x00000134, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs209_g1_s0_lives[] = { /* 0x8263c54 */
/* 0 */ { 0, 4, 0, 0, { 37, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g1_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 34, 42, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g1_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 38, 41, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g1_s0_lives3_dlg0,
} },
/* 4 */ { 108, 0, 0, 0, { 34, 34, CPOS_HALFTILE, 0 }, {
[0] = s_gs209_g1_s0_lives4_dlg0,
} },
};
static const struct GroundLivesData s_gs209_g2_s0_lives[] = { /* 0x8263ccc */
/* 0 */ { 0, 4, 0, 0, { 37, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g2_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g2_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 34, 42, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g2_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 38, 41, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g2_s0_lives3_dlg0,
} },
/* 4 */ { 108, 0, 0, 0, { 34, 34, CPOS_HALFTILE, 0 }, {
[0] = s_gs209_g2_s0_lives4_dlg0,
} },
};
static const struct GroundLivesData s_gs209_g3_s0_lives[] = { /* 0x8263d44 */
/* 0 */ { 0, 4, 0, 0, { 37, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g3_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 32, 37, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g3_s0_lives1_dlg0,
} },
/* 2 */ { 10, 4, 0, 0, { 34, 42, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g3_s0_lives2_dlg0,
} },
/* 3 */ { 11, 4, 0, 0, { 38, 41, 0, CPOS_HALFTILE }, {
[0] = s_gs209_g3_s0_lives3_dlg0,
} },
/* 4 */ { 108, 0, 0, 0, { 34, 34, CPOS_HALFTILE, 0 }, {
[0] = s_gs209_g3_s0_lives4_dlg0,
} },
};
static const struct GroundEffectData s_gs209_g1_s0_effs[] = { /* 0x8263dbc */
/* 0 */ { 0, 0, 1, 1, { 34, 35, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs209_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs209_g2_s0_effs[] = { /* 0x8263dc8 */
/* 0 */ { 0, 0, 1, 1, { 34, 35, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs209_g2_s0_eff0_script },
/* 1 */ { 4, 4, 1, 1, { 35, 31, 0, 0 }, s_gs209_g2_s0_eff1_script },
};
static const struct GroundEffectData s_gs209_g3_s0_effs[] = { /* 0x8263de0 */
/* 0 */ { 0, 0, 1, 1, { 34, 35, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
/* 1 */ { 3, 0, 1, 1, { 35, 28, 0, 0 }, s_gs209_g3_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8263df8 */
&s_gs209_g0_s0_station_sref,
&s_gs209_g1_s0_station_sref,
&s_gs209_g2_s0_station_sref,
&s_gs209_g3_s0_station_sref,
};
static const struct GroundScriptSector s_gs209_g0_sectors[] = { /* 0x8263e08 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs209_g1_sectors[] = { /* 0x8263e30 */
{ LPARRAY(s_gs209_g1_s0_lives), 0,NULL, LPARRAY(s_gs209_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs209_g2_sectors[] = { /* 0x8263e58 */
{ LPARRAY(s_gs209_g2_s0_lives), 0,NULL, LPARRAY(s_gs209_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
};
static const struct GroundScriptSector s_gs209_g3_sectors[] = { /* 0x8263e80 */
{ LPARRAY(s_gs209_g3_s0_lives), 0,NULL, LPARRAY(s_gs209_g3_s0_effs), 0,NULL, 1,&sStationScripts[3], },
};
static const struct GroundScriptGroup s_gs209_groups[] = { /* 0x8263ea8 */
{ LPARRAY(s_gs209_g0_sectors) },
{ LPARRAY(s_gs209_g1_sectors) },
{ LPARRAY(s_gs209_g2_sectors) },
{ LPARRAY(s_gs209_g3_sectors) },
};
static const struct GroundLink s_gs209_links[] = { /* 0x8263ec8 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs209 = { LPARRAY(s_gs209_groups), s_gs209_links }; /* 0x8263ed0 */

View File

@@ -0,0 +1,83 @@
static const struct ScriptCommand s_gs210_g0_s0_station_sref_script[] = { /* 0x8263ee4 */
DEBUGINFO,
SELECT_MAP(210),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs210_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs210_g0_s0_station_sref_script }; /* 0x8263f50 */
static const struct ScriptCommand s_gs210_g1_s0_station_sref_script[] = { /* 0x8263f5c */
DEBUGINFO,
SELECT_MAP(210),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs210_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs210_g1_s0_station_sref_script }; /* 0x8263fdc */
static const struct ScriptCommand s_gs210_g1_s0_lives0_dlg0[] = { /* 0x8263fe8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs210_g1_s0_lives1_dlg0[] = { /* 0x8264058 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs210_g1_s0_lives[] = { /* 0x8264098 */
/* 0 */ { 0, 4, 0, 0, { 34, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs210_g1_s0_lives0_dlg0,
} },
/* 1 */ { 132, 0, 0, 0, { 34, 25, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs210_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs210_g1_s0_effs[] = { /* 0x82640c8 */
/* 0 */ { 0, 0, 1, 1, { 34, 27, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82640d4 */
&s_gs210_g0_s0_station_sref,
&s_gs210_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs210_g0_sectors[] = { /* 0x82640dc */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs210_g1_sectors[] = { /* 0x8264104 */
{ LPARRAY(s_gs210_g1_s0_lives), 0,NULL, LPARRAY(s_gs210_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs210_groups[] = { /* 0x826412c */
{ LPARRAY(s_gs210_g0_sectors) },
{ LPARRAY(s_gs210_g1_sectors) },
};
static const struct GroundLink s_gs210_links[] = { /* 0x826413c */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs210 = { LPARRAY(s_gs210_groups), s_gs210_links }; /* 0x8264144 */

View File

@@ -0,0 +1,114 @@
static const struct ScriptCommand s_gs211_g0_s0_station_sref_script[] = { /* 0x8264158 */
DEBUGINFO,
SELECT_MAP(211),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs211_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs211_g0_s0_station_sref_script }; /* 0x82641c4 */
static const struct ScriptCommand s_gs211_g1_s0_station_sref_script[] = { /* 0x82641d0 */
DEBUGINFO,
SELECT_MAP(211),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs211_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs211_g1_s0_station_sref_script }; /* 0x8264250 */
static const struct ScriptCommand s_gs211_g1_s0_lives0_dlg0[] = { /* 0x826425c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gwooooooooooh!#W\n...H-how dare you!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" How...#W\nHow did this happen...?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But regardless, you have\nwon.#W\nLet me hear your wish.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...Hm?! This...#W\nThis is the #CIRed Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WYou...#W\nStand back!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Raikou's thunderbolt\n#+electrified the #CIRed Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The #CIRed Wing#R...#W\n#+transformed into\n#+the #CISunset Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Its subtle gradation of yellow\n#+to red is a truly beauteous sight!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Go northeast!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" To a place called the\n#CDNorthwind Field#R.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You will find a Pokémon\nthere named Suicune.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" If you are lucky enough to\nmeet Suicune...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Perhaps your wish will\ncome true!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY(212),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 received\n#+the #CISunset Wing#R.") },
{ 0xe1, 0x00, 0x00d4, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And...") },
FANFARE_PLAY(205),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+the #CDNorthwind Field#R!") },
{ 0xe1, 0x00, 0x00cd, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs211_g1_s0_lives1_dlg0[] = { /* 0x8264734 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs211_g1_s0_lives[] = { /* 0x8264774 */
/* 0 */ { 0, 4, 0, 0, { 34, 42, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs211_g1_s0_lives0_dlg0,
} },
/* 1 */ { 133, 0, 0, 0, { 34, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs211_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs211_g1_s0_effs[] = { /* 0x82647a4 */
/* 0 */ { 0, 0, 1, 1, { 34, 39, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82647b0 */
&s_gs211_g0_s0_station_sref,
&s_gs211_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs211_g0_sectors[] = { /* 0x82647b8 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs211_g1_sectors[] = { /* 0x82647e0 */
{ LPARRAY(s_gs211_g1_s0_lives), 0,NULL, LPARRAY(s_gs211_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs211_groups[] = { /* 0x8264808 */
{ LPARRAY(s_gs211_g0_sectors) },
{ LPARRAY(s_gs211_g1_sectors) },
};
static const struct GroundLink s_gs211_links[] = { /* 0x8264818 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs211 = { LPARRAY(s_gs211_groups), s_gs211_links }; /* 0x8264820 */

View File

@@ -0,0 +1,261 @@
static const struct ScriptCommand s_gs212_g0_s0_station_sref_script[] = { /* 0x8264834 */
DEBUGINFO,
SELECT_MAP(212),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs212_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs212_g0_s0_station_sref_script }; /* 0x82648a0 */
static const struct ScriptCommand s_gs212_g1_s0_station_sref_script[] = { /* 0x82648ac */
DEBUGINFO,
SELECT_MAP(212),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs212_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs212_g1_s0_station_sref_script }; /* 0x826494c */
static const struct ScriptCommand s_gs212_g1_s0_eff0_script[] = { /* 0x8264958 */
DEBUGINFO,
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000ab, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs212_g1_s0_obj0_dlg0[] = { /* 0x8264998 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs212_g1_s0_lives0_dlg0[] = { /* 0x82649c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00fa7d7d, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00fa7d7d, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00550000, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00550000, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gwooooooh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Urghgh...#W\nI... I lost...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You...#W\nWhat do you wish?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000018, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...Wh-what?! This is...\nthe #CIClear Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...I understand now.#W\nTo meet that Pokémon...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WStand aside.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
BGM_FADEOUT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
SELECT_OBJECTS(1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00550000, NULL },
WAIT(1),
{ 0x27, 0x01, 0x0005, 0x00000004, 0x00550000, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Entei's fiery blast made\n#+the #CIClear Wing#R flare!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The #CIClear Wing#R...#W\n#+transformed into the #CIRed Wing#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
WAIT(10),
FANFARE_PLAY2(507),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 0),
CANCEL_EFFECTS(1, 0),
CANCEL_OBJECTS(1, 1),
SELECT_EFFECTS(1, 1),
{ 0x27, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
{ 0xe2, 0x00, 0x01fb, 0x00000000, 0x00000000, NULL },
BGM_SWITCH(114),
WAIT(60),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take this and go west!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There, you will find\nthe #CDLightning Field#R.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You will know your path\nthere!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Now go!\nTo the #CDLightning Field#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(20),
CANCEL_EFFECTS(1, 1),
WAIT(20),
BGM_STOP,
FANFARE_PLAY(212),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 received\n#+the #CIRed Wing#R.") },
{ 0xe1, 0x00, 0x00d4, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And...") },
FANFARE_PLAY(205),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+the #CDLightning Field#R!") },
{ 0xe1, 0x00, 0x00cd, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs212_g1_s0_lives1_dlg0[] = { /* 0x826518c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0013, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe2, 0x00, 0x01d1, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(663),
{ 0x56, 0x00, 0x0000, 0x0000004e, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x0297, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(653),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs212_g1_s1_eff0_script[] = { /* 0x826539c */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x000000ac, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs212_g1_s1_obj0_dlg0[] = { /* 0x82653cc */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x0000004c, 0x00000000, NULL },
WAIT(10),
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 1),
FANFARE_PLAY2(739),
{ 0x56, 0x00, 0x0000, 0x0000013d, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x02e3, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(0),
LABEL(1), /* = 0x01 */
FANFARE_STOP2(739),
{ 0x56, 0x00, 0x0000, 0x0000013d, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 0, /* to label */ 2),
JUMP_LABEL(1),
LABEL(2), /* = 0x02 */
HALT,
};
static const struct GroundLivesData s_gs212_g1_s0_lives[] = { /* 0x826551c */
/* 0 */ { 0, 4, 0, 0, { 22, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs212_g1_s0_lives0_dlg0,
} },
/* 1 */ { 116, 0, 0, 0, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs212_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs212_g1_s0_objs[] = { /* 0x826554c */
/* 0 */ { 0, 0, 1, 1, { 22, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs212_g1_s0_obj0_dlg0,
} },
};
static const struct GroundObjectData s_gs212_g1_s1_objs[] = { /* 0x8265564 */
/* 0 */ { 67, 0, 2, 2, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs212_g1_s1_obj0_dlg0,
} },
};
static const struct GroundEffectData s_gs212_g1_s0_effs[] = { /* 0x826557c */
/* 0 */ { 5, 0, 1, 1, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs212_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs212_g1_s1_effs[] = { /* 0x8265588 */
/* 0 */ { 5, 0, 1, 1, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs212_g1_s1_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8265594 */
&s_gs212_g0_s0_station_sref,
&s_gs212_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs212_g0_sectors[] = { /* 0x826559c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs212_g1_sectors[] = { /* 0x82655c4 */
{ LPARRAY(s_gs212_g1_s0_lives), LPARRAY(s_gs212_g1_s0_objs), LPARRAY(s_gs212_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ 0,NULL, LPARRAY(s_gs212_g1_s1_objs), LPARRAY(s_gs212_g1_s1_effs), 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs212_groups[] = { /* 0x8265614 */
{ LPARRAY(s_gs212_g0_sectors) },
{ LPARRAY(s_gs212_g1_sectors) },
};
static const struct GroundLink s_gs212_links[] = { /* 0x8265624 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs212 = { LPARRAY(s_gs212_groups), s_gs212_links }; /* 0x826562c */

View File

@@ -0,0 +1,260 @@
static const struct ScriptCommand s_gs213_g0_s0_station_sref_script[] = { /* 0x8265640 */
DEBUGINFO,
SELECT_MAP(213),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs213_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs213_g0_s0_station_sref_script }; /* 0x82656ac */
static const struct ScriptCommand s_gs213_g1_s0_station_sref_script[] = { /* 0x82656b8 */
DEBUGINFO,
SELECT_MAP(213),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs213_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs213_g1_s0_station_sref_script }; /* 0x8265758 */
static const struct ScriptCommand s_gs213_g1_s0_eff0_script[] = { /* 0x8265764 */
DEBUGINFO,
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000ac, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs213_g1_s0_obj0_dlg0[] = { /* 0x82657a4 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs213_g1_s0_lives0_dlg0[] = { /* 0x82657d4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00707000, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00707000, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00505000, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00505000, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(685),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gwooooooooooh!#W\n...H-how dare you!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" How...#W\nHow did this happen...?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But regardless, you have\nwon.#W\nLet me hear your wish.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000018, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...Hm?! This...#W\nThis is the #CIRed Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WYou...#W\nStand back!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
BGM_FADEOUT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
SELECT_OBJECTS(1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x28, 0x00, 0x0005, 0x00000003, 0x00505000, NULL },
CALL_SCRIPT(JUMP_SURPRISE_FUNC),
WAIT(1),
{ 0x27, 0x01, 0x0005, 0x00000003, 0x00505000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Raikou's thunderbolt\n#+electrified the #CIRed Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The #CIRed Wing#R...#W\n#+transformed into\n#+the #CISunset Wing#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
WAIT(10),
FANFARE_PLAY2(507),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
CANCEL_EFFECTS(1, 0),
CANCEL_OBJECTS(1, 1),
SELECT_EFFECTS(1, 1),
{ 0x27, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
{ 0xe2, 0x00, 0x01fb, 0x00000000, 0x00000000, NULL },
BGM_SWITCH(114),
WAIT(60),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Its subtle gradation of yellow\n#+to red is a truly beauteous sight!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Go northeast!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" To a place called the\n#CDNorthwind Field#R.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You will find a Pokémon\nthere named Suicune.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" If you are lucky enough to\nmeet Suicune...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Perhaps your wish will\ncome true!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(20),
CANCEL_EFFECTS(1, 1),
WAIT(20),
BGM_STOP,
FANFARE_PLAY(212),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 received\n#+the #CISunset Wing#R.") },
{ 0xe1, 0x00, 0x00d4, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And...") },
FANFARE_PLAY(205),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+the #CDNorthwind Field#R!") },
{ 0xe1, 0x00, 0x00cd, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs213_g1_s0_lives1_dlg0[] = { /* 0x826604c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0013, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe2, 0x00, 0x01d1, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(708),
{ 0x56, 0x00, 0x0000, 0x00000062, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x02c4, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(479),
{ 0xe2, 0x00, 0x01df, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs213_g1_s1_eff0_script[] = { /* 0x826626c */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x000000ad, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs213_g1_s1_obj0_dlg0[] = { /* 0x826629c */
DEBUGINFO,
FANFARE_PLAY2(662),
{ 0x56, 0x00, 0x0000, 0x000000b1, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000b2, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 1),
FANFARE_PLAY2(726),
{ 0xe2, 0x00, 0x02d6, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(726),
WAIT(45),
{ 0xe2, 0x00, 0x02d6, 0x00000000, 0x00000000, NULL },
JUMP_LABEL(0),
LABEL(1), /* = 0x01 */
HALT,
};
static const struct GroundLivesData s_gs213_g1_s0_lives[] = { /* 0x82663ac */
/* 0 */ { 0, 4, 0, 0, { 22, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs213_g1_s0_lives0_dlg0,
} },
/* 1 */ { 117, 0, 0, 0, { 22, 14, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs213_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs213_g1_s0_objs[] = { /* 0x82663dc */
/* 0 */ { 0, 0, 1, 1, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs213_g1_s0_obj0_dlg0,
} },
};
static const struct GroundObjectData s_gs213_g1_s1_objs[] = { /* 0x82663f4 */
/* 0 */ { 67, 0, 2, 2, { 22, 14, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs213_g1_s1_obj0_dlg0,
} },
};
static const struct GroundEffectData s_gs213_g1_s0_effs[] = { /* 0x826640c */
/* 0 */ { 5, 0, 1, 1, { 22, 14, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs213_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs213_g1_s1_effs[] = { /* 0x8266418 */
/* 0 */ { 5, 0, 1, 1, { 22, 14, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs213_g1_s1_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8266424 */
&s_gs213_g0_s0_station_sref,
&s_gs213_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs213_g0_sectors[] = { /* 0x826642c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs213_g1_sectors[] = { /* 0x8266454 */
{ LPARRAY(s_gs213_g1_s0_lives), LPARRAY(s_gs213_g1_s0_objs), LPARRAY(s_gs213_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ 0,NULL, LPARRAY(s_gs213_g1_s1_objs), LPARRAY(s_gs213_g1_s1_effs), 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs213_groups[] = { /* 0x82664a4 */
{ LPARRAY(s_gs213_g0_sectors) },
{ LPARRAY(s_gs213_g1_sectors) },
};
static const struct GroundLink s_gs213_links[] = { /* 0x82664b4 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs213 = { LPARRAY(s_gs213_groups), s_gs213_links }; /* 0x82664bc */

View File

@@ -0,0 +1,260 @@
static const struct ScriptCommand s_gs214_g0_s0_station_sref_script[] = { /* 0x82664d0 */
DEBUGINFO,
SELECT_MAP(214),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs214_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs214_g0_s0_station_sref_script }; /* 0x826653c */
static const struct ScriptCommand s_gs214_g1_s0_station_sref_script[] = { /* 0x8266548 */
DEBUGINFO,
SELECT_MAP(214),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs214_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs214_g1_s0_station_sref_script }; /* 0x82665e8 */
static const struct ScriptCommand s_gs214_g1_s0_eff0_script[] = { /* 0x82665f4 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs214_g1_s0_eff1_script[] = { /* 0x8266624 */
DEBUGINFO,
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000ad, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs214_g1_s0_lives0_dlg0[] = { /* 0x8266664 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00005077, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00005077, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(497),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00005077, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00005077, NULL },
{ 0xe2, 0x00, 0x01f1, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gwoooooooh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I have lost...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I admit it.\nYou are strong.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(60),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000018, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This!#W\nThe #CISunset Wing#R!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...I see.#W\nYou came seeking the mirage Pokémon...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...#WStep back.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000008, NULL },
BGM_FADEOUT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kyuuuuuuuuhn!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
SELECT_OBJECTS(1, 1),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x00, 0x0005, 0x00000004, 0x00005077, NULL },
{ 0x27, 0x01, 0x0005, 0x00000004, 0x00005077, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The north wind swirled\n#+around the #CISunset Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The #CISunset Wing#R...#W\n#+transformed into the #CIRainbow Wing#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
UPDATE_VARINT(CALC_SET, EVENT_LOCAL, 1),
WAIT(10),
FANFARE_PLAY2(507),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
CANCEL_EFFECTS(1, 0),
CANCEL_OBJECTS(1, 1),
SELECT_EFFECTS(1, 1),
{ 0x27, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
{ 0xe2, 0x00, 0x01fb, 0x00000000, 0x00000000, NULL },
BGM_SWITCH(114),
WAIT(60),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Glittering in the seven colors\n#+of the rainbow, this wing is\n#+beautiful beyond description!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This #CIRainbow Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It is the key to meeting\nthe mirage Pokémon.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take this wing...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take it to the mountain so\nhigh that its peak is obscured by clouds.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yes...\nTake it to #CDMt. Faraway#R!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The mirage Pokémon is at\nits peak!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000018, NULL },
WAIT(20),
CANCEL_EFFECTS(1, 1),
WAIT(20),
BGM_STOP,
FANFARE_PLAY(212),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 received\n#+the #CIRainbow Wing#R.") },
{ 0xe1, 0x00, 0x00d4, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And...") },
FANFARE_PLAY(205),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+#CDMt. Faraway#R!") },
{ 0xe1, 0x00, 0x00cd, 0x00000000, 0x00000000, NULL },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs214_g1_s0_lives1_dlg0[] = { /* 0x8266f30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
WAIT(10),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, -0x00000008, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0013, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe2, 0x00, 0x01d1, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(664),
{ 0x56, 0x00, 0x0000, 0x00000053, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x0298, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs214_g1_s1_obj0_dlg0[] = { /* 0x8267150 */
DEBUGINFO,
FANFARE_PLAY2(631),
{ 0x56, 0x00, 0x0000, 0x00000170, 0x00000000, NULL },
WAIT(10),
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000056, 0x00000000, NULL },
LABEL(0), /* = 0x00 */
JUMPIF(JUDGE_EQ, EVENT_LOCAL, 1, /* to label */ 1),
FANFARE_PLAY2(661),
WAIT(20),
FANFARE_PLAY2(661),
WAIT(20),
FANFARE_STOP2(661),
WAIT(15),
JUMP_LABEL(0),
LABEL(1), /* = 0x01 */
HALT,
};
static const struct ScriptCommand s_gs214_g1_s1_eff0_script[] = { /* 0x8267280 */
DEBUGINFO,
{ 0x56, 0x00, 0x0000, 0x000000ae, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs214_g1_s0_lives[] = { /* 0x82672b0 */
/* 0 */ { 0, 4, 0, 0, { 22, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs214_g1_s0_lives0_dlg0,
} },
/* 1 */ { 118, 0, 0, 0, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs214_g1_s0_lives1_dlg0,
} },
};
static const struct GroundObjectData s_gs214_g1_s1_objs[] = { /* 0x82672e0 */
/* 0 */ { 67, 0, 2, 2, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs214_g1_s1_obj0_dlg0,
} },
};
static const struct GroundEffectData s_gs214_g1_s0_effs[] = { /* 0x82672f8 */
/* 0 */ { 0, 0, 1, 1, { 22, 21, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs214_g1_s0_eff0_script },
/* 1 */ { 5, 0, 1, 1, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs214_g1_s0_eff1_script },
};
static const struct GroundEffectData s_gs214_g1_s1_effs[] = { /* 0x8267310 */
/* 0 */ { 5, 0, 1, 1, { 22, 17, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs214_g1_s1_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826731c */
&s_gs214_g0_s0_station_sref,
&s_gs214_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs214_g0_sectors[] = { /* 0x8267324 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs214_g1_sectors[] = { /* 0x826734c */
{ LPARRAY(s_gs214_g1_s0_lives), 0,NULL, LPARRAY(s_gs214_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
{ 0,NULL, LPARRAY(s_gs214_g1_s1_objs), LPARRAY(s_gs214_g1_s1_effs), 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs214_groups[] = { /* 0x826739c */
{ LPARRAY(s_gs214_g0_sectors) },
{ LPARRAY(s_gs214_g1_sectors) },
};
static const struct GroundLink s_gs214_links[] = { /* 0x82673ac */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs214 = { LPARRAY(s_gs214_groups), s_gs214_links }; /* 0x82673b4 */

View File

@@ -0,0 +1,114 @@
static const struct ScriptCommand s_gs215_g0_s0_station_sref_script[] = { /* 0x82673c8 */
DEBUGINFO,
SELECT_MAP(215),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs215_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs215_g0_s0_station_sref_script }; /* 0x8267434 */
static const struct ScriptCommand s_gs215_g1_s0_station_sref_script[] = { /* 0x8267440 */
DEBUGINFO,
SELECT_MAP(215),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs215_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs215_g1_s0_station_sref_script }; /* 0x82674c0 */
static const struct ScriptCommand s_gs215_g1_s0_lives0_dlg0[] = { /* 0x82674cc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gwoooooooh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I have lost...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I admit it.\nYou are strong.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This!#W\nThe #CISunset Wing#R!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...I see.#W\nYou came seeking the mirage Pokémon...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...#WStep back.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kyuuuuuuuuhn!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The north wind swirled\n#+around the #CISunset Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The #CISunset Wing#R...#W\n#+transformed into the #CIRainbow Wing#R!") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Glittering in the seven colors\n#+of the rainbow, this wing is\n#+beautiful beyond description!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This #CIRainbow Wing#R...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It is the key to meeting\nthe mirage Pokémon.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take this wing...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Take it to the mountain so\nhigh that its peak is obscured by clouds.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Yes...\nTake it to #CDMt. Faraway#R!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" The mirage Pokémon is at\nits peak!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 received\n#+the #CIRainbow Wing#R.") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+And...") },
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Gained access to\n#+#CDMt. Faraway#R!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs215_g1_s0_lives1_dlg0[] = { /* 0x82679c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs215_g1_s0_lives[] = { /* 0x8267a08 */
/* 0 */ { 0, 4, 0, 0, { 35, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs215_g1_s0_lives0_dlg0,
} },
/* 1 */ { 119, 0, 0, 0, { 35, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs215_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs215_g1_s0_effs[] = { /* 0x8267a38 */
/* 0 */ { 0, 0, 1, 1, { 35, 29, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8267a44 */
&s_gs215_g0_s0_station_sref,
&s_gs215_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs215_g0_sectors[] = { /* 0x8267a4c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs215_g1_sectors[] = { /* 0x8267a74 */
{ LPARRAY(s_gs215_g1_s0_lives), 0,NULL, LPARRAY(s_gs215_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs215_groups[] = { /* 0x8267a9c */
{ LPARRAY(s_gs215_g0_sectors) },
{ LPARRAY(s_gs215_g1_sectors) },
};
static const struct GroundLink s_gs215_links[] = { /* 0x8267aac */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs215 = { LPARRAY(s_gs215_groups), s_gs215_links }; /* 0x8267ab4 */

View File

@@ -0,0 +1,442 @@
static const struct ScriptCommand s_gs216_g0_s0_station_sref_script[] = { /* 0x8267ac8 */
DEBUGINFO,
SELECT_MAP(216),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs216_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs216_g0_s0_station_sref_script }; /* 0x8267b34 */
static const struct ScriptCommand s_gs216_g1_s0_station_sref_script[] = { /* 0x8267b40 */
DEBUGINFO,
BGM_STOP,
{ 0x23, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x26, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_MAP(216),
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+One day...") },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+In a small cave\n#+in the distant west...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0002, 0x0000003c, 0x00ffffff, NULL },
WAIT(1),
{ 0x28, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs216_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs216_g1_s0_station_sref_script }; /* 0x8267cbc */
static const struct ScriptCommand s_gs216_g1_s0_lives0_dlg0[] = { /* 0x8267cc8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x0001, 0x00000068, 0x00000000, NULL },
WAIT(30),
{ 0x56, 0x00, 0x0000, 0x0000005a, 0x00000000, NULL },
{ 0x2e, 0x0c, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Hey!#W\nGet a move on!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000068, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Gasp, gasp...#W\nThis is rough going...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Heh! What's with you?\nYou're gonna whine about it now?") },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Let me think--wasn't it you\nwho wanted to explore this place?") },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Saying you'd found a new\ncave and all!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Yeah...#W\nI just happened to be swimming by in\nthe sea when I spotted this cave...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I didn't expect it to be\na dungeon this rough...\nGasp, gasp...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Heh!#W\nI thought a different combo would be\na good change of pace...") },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" But you're pathetic!#W\nSo much for Mr. Big Shot $n1!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(472),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wh-what!#W\nCall me pathetic, will you?!") },
{ 0x2e, 0x15, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" What you've seen of me\nso far is nothing!") },
{ 0x2e, 0x15, 0x0001, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Never...#W\nunderestimate $n1!") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Wroooooooaaaaar!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000005d, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Hahaha!#W\nThere! You're still feeling frisky!") },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" That's the spirit!#W\nI think we're getting close.\nLet's keep it going!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...!#W\nSo you did that to motivate me...#W\n...Thanks.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Hey, no problem.\nLet's move!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, 0x00000000, -0x00000020, NULL },
BGM_FADEOUT(30),
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
WAIT(60),
{ 0x93, 0x04, 0x000a, 0x00000068, 0x00000000, NULL },
WAIT(30),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Hm?#W What's wrong?#W\nAre you still wiped out?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
WAIT(30),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...No. That's not it.") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" ...Just now.#W\nDid you hear something?") },
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" I thought I heard a voice...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x92, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x93, 0x04, 0x000a, 0x00000068, 0x00000000, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" ...No?#W\nI don't hear anything.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
BGM_SWITCH(35),
{ 0x2b, 0x00, 0x0000, 0x0000003c, 0x0000003c, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ............#WIs it#W \nyou...?") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ......Who...disturbs...my sleep...#W\nIs it#W you?!\n") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x92, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(30),
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Wh-who's there?!") },
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Who are you?!#W\nShow yourself!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
FANFARE_PLAY2(453),
{ 0x97, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x2b, 0x00, 0x0000, 0x0000005a, 0x0000005a, NULL },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" Me...?") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" I was...#W\nEngineered...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
WAIT(60),
FANFARE_PLAY2(705),
FANFARE_FADEOUT2(60, 453),
{ 0x28, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
WAIT(10),
{ 0x27, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+Created only to fight...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
BGM_STOP,
FANFARE_PLAY2(705),
{ 0x28, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
WAIT(10),
{ 0x27, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
WAIT(15),
FANFARE_PLAY2(877),
{ 0x28, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
WAIT(10),
BGM_SWITCH(11),
{ 0x27, 0x01, 0x0001, 0x00000005, 0x00ffffff, NULL },
{ 0x23, 0x01, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, 0x00000078, 0x00000078, NULL },
{ 0x39, 0x00, 0x001e, 0x00000000, 0x00000000, _("#+The most powerful of all Pokémon!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x25, 0x01, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x22, 0x01, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x28, 0x01, 0x0005, 0x00000078, 0x00ffffff, NULL },
{ 0x2b, 0x00, 0x0000, 0x0000003c, 0x0000003c, NULL },
{ 0x2e, 0x02, 0x0000, 0x00000003, 0x00000000, NULL },
FANFARE_PLAY2(877),
{ 0x34, 0x00, 0x0000, 0x00000000, 0x00000000, _(" Gwaaaaaaaaaaaah!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x03, 0x0001, 0x00000003, 0x00000000, NULL },
FANFARE_PLAY2(877),
{ 0x34, 0x00, 0x0001, 0x00000000, 0x00000000, _(" Gyaaaaaaaah!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2b, 0x00, 0x0000, -0x00000001, -0x00000001, NULL },
BGM_FADEOUT(60),
WAIT(60),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs216_g1_s0_lives1_dlg0[] = { /* 0x8268c90 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x004c, 0x00000001, 0x00000000, NULL },
{ 0x93, 0x04, 0x000a, 0x00000059, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x000a, 0x00000003, 0x00000000, NULL },
WAIT(30),
{ 0x91, 0x08, 0x000a, 0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0x93, 0x08, 0x000a, 0x00000059, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000005e, 0x00000000, NULL },
WAIT(60),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0012, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000054, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(610),
FANFARE_PLAY2(862),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0012, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000054, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(610),
FANFARE_PLAY2(862),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0012, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000054, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(610),
FANFARE_PLAY2(862),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x93, 0x08, 0x000a, 0x00000059, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x92, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000004, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0002, 0x00000005, 0x00000000, NULL },
WAIT(15),
{ 0x92, 0x04, 0x0001, 0x00000003, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(786),
{ 0xe2, 0x00, 0x0312, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(831),
{ 0xe2, 0x00, 0x033f, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(787),
{ 0xe2, 0x00, 0x0313, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(831),
{ 0xe2, 0x00, 0x033f, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(786),
{ 0xe2, 0x00, 0x0312, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(831),
{ 0xe2, 0x00, 0x033f, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs216_g1_s0_eff1_script[] = { /* 0x82691d0 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0004, -0x00000018, 0x00000000, NULL },
{ 0x8b, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000150, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0200, 0x00000000, -0x00000078, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x5b, 0x00, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000150, 0x00000000, NULL },
{ 0x8b, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0200, 0x00000078, 0x00000078, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x5b, 0x00, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, -0x000c, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000150, 0x00000000, NULL },
{ 0x8b, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0200, -0x00000078, 0x00000078, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x5b, 0x00, 0x0000, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs216_g1_s0_eff2_script[] = { /* 0x8269390 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(786),
{ 0x56, 0x00, 0x0000, 0x0000004a, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0040, -0x00000020, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000004a, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, -0x0020, 0x00000030, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000004a, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, -0x0020, -0x00000018, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000004a, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0050, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x0000004a, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs216_g1_s0_eff3_script[] = { /* 0x8269510 */
DEBUGINFO,
{ 0x53, 0x00, 0x0000, 0x0000001f, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
WAIT(15),
FANFARE_PLAY2(831),
{ 0x56, 0x00, 0x0000, 0x00000042, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, -0x0038, -0x00000038, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000042, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0028, 0x00000010, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000042, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, -0x0020, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000042, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct GroundLivesData s_gs216_g1_s0_lives[] = { /* 0x8269660 */
/* 0 */ { 89, 4, 0, 0, { 20, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs216_g1_s0_lives0_dlg0,
} },
/* 1 */ { 104, 4, 0, 0, { 24, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs216_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs216_g1_s0_effs[] = { /* 0x8269690 */
/* 0 */ { 0, 0, 1, 1, { 22, 18, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
/* 1 */ { 4, 0, 1, 1, { 24, 19, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs216_g1_s0_eff1_script },
/* 2 */ { 4, 0, 1, 1, { 18, 18, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs216_g1_s0_eff2_script },
/* 3 */ { 4, 0, 1, 1, { 25, 20, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs216_g1_s0_eff3_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x82696c0 */
&s_gs216_g0_s0_station_sref,
&s_gs216_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs216_g0_sectors[] = { /* 0x82696c8 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs216_g1_sectors[] = { /* 0x82696f0 */
{ LPARRAY(s_gs216_g1_s0_lives), 0,NULL, LPARRAY(s_gs216_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs216_groups[] = { /* 0x8269718 */
{ LPARRAY(s_gs216_g0_sectors) },
{ LPARRAY(s_gs216_g1_sectors) },
};
static const struct GroundLink s_gs216_links[] = { /* 0x8269728 */
/* link 0 */ { { /*x*/ 20, /*y*/ 16, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 25, /*y*/ 19, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 2 */ { { /*x*/ 25, /*y*/ 19, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs216 = { LPARRAY(s_gs216_groups), s_gs216_links }; /* 0x8269740 */

View File

@@ -0,0 +1,132 @@
static const struct ScriptCommand s_gs217_g0_s0_station_sref_script[] = { /* 0x8269754 */
DEBUGINFO,
SELECT_MAP(217),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs217_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs217_g0_s0_station_sref_script }; /* 0x82697c0 */
static const struct ScriptCommand s_gs217_g1_s0_station_sref_script[] = { /* 0x82697cc */
DEBUGINFO,
SELECT_MAP(217),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(60),
{ 0x23, 0x01, 0x003c, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs217_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs217_g1_s0_station_sref_script }; /* 0x826986c */
static const struct ScriptCommand s_gs217_g1_s0_lives0_dlg0[] = { /* 0x8269878 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(475),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x28, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0x27, 0x01, 0x0005, 0x00000005, 0x00ffffff, NULL },
{ 0xe2, 0x00, 0x01db, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Urghgh...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WPlease...\nPlease let me go...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I have to go...#W\nThere's somewhere that I have to go...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" If...I don't hurry...#W\nM-my little sister...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(30),
CALL_SCRIPT(SHOCK_FUNC),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x00cc, 0x00000000, -0x00000030, NULL },
HALT,
};
static const struct ScriptCommand s_gs217_g1_s0_lives1_dlg0[] = { /* 0x8269b04 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0013, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0019, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0021, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x001d, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(475),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe2, 0x00, 0x01db, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(779),
{ 0x54, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
WAIT(50),
{ 0x54, 0x00, 0x001a, 0x00000000, 0x00000000, NULL },
WAIT(40),
FANFARE_PLAY2(682),
{ 0xe2, 0x00, 0x02aa, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs217_g1_s0_lives[] = { /* 0x8269cb4 */
/* 0 */ { 0, 4, 0, 0, { 31, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs217_g1_s0_lives0_dlg0,
} },
/* 1 */ { 121, 0, 0, 0, { 31, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs217_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs217_g1_s0_effs[] = { /* 0x8269ce4 */
/* 0 */ { 0, 0, 1, 1, { 31, 29, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x8269cf0 */
&s_gs217_g0_s0_station_sref,
&s_gs217_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs217_g0_sectors[] = { /* 0x8269cf8 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs217_g1_sectors[] = { /* 0x8269d20 */
{ LPARRAY(s_gs217_g1_s0_lives), 0,NULL, LPARRAY(s_gs217_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs217_groups[] = { /* 0x8269d48 */
{ LPARRAY(s_gs217_g0_sectors) },
{ LPARRAY(s_gs217_g1_sectors) },
};
static const struct GroundLink s_gs217_links[] = { /* 0x8269d58 */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs217 = { LPARRAY(s_gs217_groups), s_gs217_links }; /* 0x8269d60 */

View File

@@ -0,0 +1,177 @@
static const struct ScriptCommand s_gs218_g0_s0_station_sref_script[] = { /* 0x8269d74 */
DEBUGINFO,
SELECT_MAP(218),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs218_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs218_g0_s0_station_sref_script }; /* 0x8269de0 */
static const struct ScriptCommand s_gs218_g1_s0_station_sref_script[] = { /* 0x8269dec */
DEBUGINFO,
BGM_STOP,
SELECT_MAP(218),
SELECT_ENTITIES(-1, 0),
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs218_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs218_g1_s0_station_sref_script }; /* 0x8269e6c */
static const struct ScriptCommand s_gs218_g1_s0_eff1_script[] = { /* 0x8269e78 */
DEBUGINFO,
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000a5, 0x00000000, NULL },
WAIT(180),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x56, 0x00, 0x0000, 0x000000a6, 0x00000000, NULL },
WAIT(120),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs218_g1_s0_eff2_script[] = { /* 0x8269f38 */
DEBUGINFO,
{ 0x59, 0x00, 0x0000, -0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000a0, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000a1, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x56, 0x00, 0x0000, 0x000000a4, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptCommand s_gs218_g1_s0_eff3_script[] = { /* 0x826a028 */
DEBUGINFO,
{ 0x59, 0x00, 0x0000, -0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000a0, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000000a1, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x56, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x56, 0x00, 0x0000, 0x000000a4, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs218_g1_s0_lives0_dlg0[] = { /* 0x826a108 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ............") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...Y-you are...?") },
{ 0x34, 0x00, -0x0001, 0x00000000, 0x00000000, _(" ...Did you maybe...#W\ncome to save me?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEIN(20, 114),
WAIT(10),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x0d, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#W\nYes, I'll be fine.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" My wing is still damaged\na little, but...#W\nI can go.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x6a, 0x00, 0x0100, 0x00000008, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(30),
BGM_FADEOUT(90),
FANFARE_PLAY2(500),
{ 0xe4, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, -0x000000c8, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs218_g1_s0_lives1_dlg0[] = { /* 0x826a408 */
DEBUGINFO,
{ 0x54, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x0002, 0x00000002, 0x00000000, NULL },
WAIT(30),
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0xdd, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x59, 0x00, 0x0000, -0x000000c8, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs218_g1_s0_lives[] = { /* 0x826a4b8 */
/* 0 */ { 0, 4, 0, 0, { 25, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs218_g1_s0_lives0_dlg0,
} },
/* 1 */ { 122, 0, 0, 0, { 25, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs218_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs218_g1_s0_effs[] = { /* 0x826a4e8 */
/* 0 */ { 0, 0, 1, 1, { 24, 27, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
/* 1 */ { 4, 0, 1, 1, { 28, 24, 0, 0 }, s_gs218_g1_s0_eff1_script },
/* 2 */ { 4, 0, 1, 1, { 29, 23, 0, CPOS_HALFTILE }, s_gs218_g1_s0_eff2_script },
/* 3 */ { 4, 0, 1, 1, { 25, 23, 0, CPOS_HALFTILE }, s_gs218_g1_s0_eff3_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826a518 */
&s_gs218_g0_s0_station_sref,
&s_gs218_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs218_g0_sectors[] = { /* 0x826a520 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs218_g1_sectors[] = { /* 0x826a548 */
{ LPARRAY(s_gs218_g1_s0_lives), 0,NULL, LPARRAY(s_gs218_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs218_groups[] = { /* 0x826a570 */
{ LPARRAY(s_gs218_g0_sectors) },
{ LPARRAY(s_gs218_g1_sectors) },
};
static const struct GroundLink s_gs218_links[] = { /* 0x826a580 */
/* link 0 */ { { /*x*/ 29, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
/* link 1 */ { { /*x*/ 25, /*y*/ 27, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 2, /*?*/ 1 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs218 = { LPARRAY(s_gs218_groups), s_gs218_links }; /* 0x826a590 */

View File

@@ -0,0 +1,118 @@
static const struct ScriptCommand s_gs219_g0_s0_station_sref_script[] = { /* 0x826a5a4 */
DEBUGINFO,
SELECT_MAP(219),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs219_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs219_g0_s0_station_sref_script }; /* 0x826a610 */
static const struct ScriptCommand s_gs219_g1_s0_station_sref_script[] = { /* 0x826a61c */
DEBUGINFO,
SELECT_MAP(219),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs219_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs219_g1_s0_station_sref_script }; /* 0x826a6ac */
static const struct ScriptCommand s_gs219_g1_s0_lives0_dlg0[] = { /* 0x826a6b8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x00cc, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs219_g1_s0_lives1_dlg0[] = { /* 0x826a84c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000003, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs219_g1_s0_lives2_dlg0[] = { /* 0x826a8dc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs219_g1_s0_lives[] = { /* 0x826a91c */
/* 0 */ { 0, 4, 0, 0, { 20, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs219_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 24, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs219_g1_s0_lives1_dlg0,
} },
/* 2 */ { 93, 0, 0, 0, { 22, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs219_g1_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs219_g1_s0_effs[] = { /* 0x826a964 */
/* 0 */ { 0, 0, 1, 1, { 22, 20, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826a970 */
&s_gs219_g0_s0_station_sref,
&s_gs219_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs219_g0_sectors[] = { /* 0x826a978 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs219_g1_sectors[] = { /* 0x826a9a0 */
{ LPARRAY(s_gs219_g1_s0_lives), 0,NULL, LPARRAY(s_gs219_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs219_groups[] = { /* 0x826a9c8 */
{ LPARRAY(s_gs219_g0_sectors) },
{ LPARRAY(s_gs219_g1_sectors) },
};
static const struct GroundLink s_gs219_links[] = { /* 0x826a9d8 */
/* link 0 */ { { /*x*/ 20, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 20, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 24, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 24, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs219 = { LPARRAY(s_gs219_groups), s_gs219_links }; /* 0x826a9f8 */

View File

@@ -0,0 +1,621 @@
static const struct ScriptCommand s_gs220_g0_s0_station_sref_script[] = { /* 0x826aa0c */
DEBUGINFO,
SELECT_MAP(220),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs220_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs220_g0_s0_station_sref_script }; /* 0x826aa78 */
static const struct ScriptCommand s_gs220_g1_s0_station_sref_script[] = { /* 0x826aa84 */
DEBUGINFO,
SELECT_MAP(220),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(90),
{ 0x23, 0x01, 0x005a, 0x00000000, 0x00000000, NULL },
WAIT(30),
RET,
};
static const struct ScriptRef s_gs220_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs220_g1_s0_station_sref_script }; /* 0x826ab24 */
static const struct ScriptCommand s_gs220_g1_s0_eff0_script[] = { /* 0x826ab30 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x48, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs220_g1_s0_lives0_dlg0[] = { /* 0x826abb0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000052, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x78, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh!\nWe're here at last!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" This is it?\nThis is the deepest floor of the\n#CDMurky Cave#R?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000041, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Oh, look!#W\nThere's a dais!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" There's a hollow spot.\nI guess that stone goes in there.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(348),
{ 0x32, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n2 placed the #CI9-Tail Crest#R\n#+in the hollow spot.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
BGM_STOP,
FANFARE_PLAY2(502),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(4),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(20),
FANFARE_PLAY2(502),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(4),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(45),
FANFARE_PLAY2(506),
{ 0x28, 0x01, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(60),
{ 0x27, 0x00, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(120),
{ 0x2e, 0x15, 0x0002, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ........................") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ....................................") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh!\nWhat's this about?\nNothing's happening?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
FANFARE_PLAY2(463),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............?#W\nHuh? I thought I heard something...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh!\nDid you just say something?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
WAIT(5),
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
WAIT(5),
FANFARE_PLAY2(468),
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
WAIT(5),
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" That's odd...\nI could've sworn I heard something...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+...Wel...co...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+...W...e...lc...ome...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Welcome to\n#+the Murky Cave!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(469),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x08, 0x0001, 0x00000002, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(469),
{ 0x91, 0x08, 0x0002, 0x00000006, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x08, 0x0001, 0x00000004, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" What? What?!\nWhere is that voice coming from?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Who are you?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
BGM_SWITCH(6),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I am the\n#+judge of darkness.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You have nothing to fear from me.\n#+I mean you no harm.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Just now, a key was\n#+inserted to break a curse.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The curse...\n#+It is the one on $n3?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x2e, 0x15, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh! Exactly!#W\nPlease lift the curse now!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I cannot allow that right away.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I must first know if you\n#+have earned the right.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I must evaluate you.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You must bare your\n#+true feelings to me.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh? What?#W\nYou're going to test me?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" What, I have to fight some\nboss creature?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Oh, no.\n#+Nothing so barbaric.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+All that I need is for some\n#+questions to be answered.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+However...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(502),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(4),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(20),
FANFARE_PLAY2(502),
{ 0x28, 0x01, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(4),
{ 0x27, 0x00, 0x0005, 0x00000004, 0x00ffffff, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000046, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gegeh?! What the...?!#W\nI can't move!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n2, you will not\n#+be doing the answering...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
WAIT(30),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0.\n#+You will answer.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x6b, 0x00, 0x0080, 0x00000001, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(473),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Gegegeh!\nWhat are you saying?!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Why is someone else\nspeaking for me?!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Let me do it!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n2.#W\n#+Your heart is interwoven\n#+with conflicting emotions.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+You will probably never show\n#+the truth within your heart.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Kekeh?!\nWhat?!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n0 will enter\n#+$n2's heart.") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+Please navigate carefully\n#+through $n2's emotions.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g1_s0_lives1_dlg0[] = { /* 0x826be2c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x70, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x18, 0x0080, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x08, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000010, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000007, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0x62, 0x00, 0x0100, 0x00000000, 0x00000018, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(623),
{ 0x56, 0x00, 0x0000, 0x000001a2, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(20),
FANFARE_PLAY2(465),
CALL_SCRIPT(SHOCK_FUNC),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(SHOCK_FUNC),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g2_s0_station_sref_script[] = { /* 0x826c1ac */
DEBUGINFO,
SELECT_MAP(220),
SELECT_ENTITIES(-1, 0),
{ 0x27, 0x01, 0x0005, 0x0000005a, 0x00ffffff, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
{ 0x23, 0x01, 0x0078, 0x00000000, 0x00000000, NULL },
WAIT(60),
RET,
};
static const struct ScriptRef s_gs220_g2_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs220_g2_s0_station_sref_script }; /* 0x826c22c */
static const struct ScriptCommand s_gs220_g2_s0_eff0_script[] = { /* 0x826c238 */
DEBUGINFO,
{ 0x98, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g2_s0_lives0_dlg0[] = { /* 0x826c278 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0004, 0x00000021, 0x00000000, NULL },
{ 0x2d, 0x09, 0x0003, 0x00000052, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(80),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+$n2.\n#+Whether you have the right\n#+to break the curse or not...") },
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+I will now render\n#+my judgment.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(60),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The curse...#W\n#+could not be lifted.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x03, 0x0002, 0x00000043, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" W-wait...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+It is most regrettable, but\n#+the curse on $n3\n#+will last all eternity...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Wait!\nWait a minute!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
FANFARE_PLAY2(666),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
WAIT(120),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x6a, 0x00, 0x0100, -0x00000018, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
WAIT(20),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Let me...#W\nLet me say something!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
BGM_FADEIN(60, 24),
WAIT(60),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It's true.\nI abandoned $n3 and ran.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I was afraid that the curse\nwould fall on me.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I had to get away, no matter\nwhat...#W\nThat's what I thought.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It didn't take long for me\nto forget about the curse and about\n$n3.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0002, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Many long years passed...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But $n3...#W\nShe never forgot about me.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" One night...#W\nIn $n4's dream, $n3\nsaid this...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" That she considered me an\nirreplaceable friend, and that she still\nbelieved we would meet again...") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" $n3 kept thinking\nabout someone like me.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0x2e, 0x15, 0x0002, 0x00000045, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" But I...\nHow selfish I was.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I lived carefree all this\ntime...#W\nI realize now how selfish I was.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" It's not just $n3.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" #C5Team $t#R put up\nwith my selfishness and brought me here.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" I finally know what I was\nmissing.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" What I lacked...#W\nIt was something for the others...#W\nA sense of gratitude.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(120),
BGM_STOP,
{ 0xe4, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(686),
WAIT(15),
FANFARE_PLAY2(631),
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(LOOK_AROUND_FUNC),
WAIT(15),
{ 0x33, 0x00, -0x0001, 0x00000000, 0x00000000, _("#+The lock bearing the curse...#W\n#+It has opened.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
FANFARE_PLAY2(506),
{ 0x28, 0x01, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(90),
SELECT_ENTITIES(-1, 1),
{ 0x27, 0x01, 0x0005, 0x0000001e, 0x00ffffff, NULL },
WAIT(30),
FANFARE_PLAY2(465),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
{ 0x2e, 0x15, 0x0002, 0x00000046, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Ga-$n3!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
BGM_FADEIN(60, 5),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" It worked, $n2!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000001, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x2e, 0x0f, 0x0002, 0x00000044, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" N-$n5!") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ...But...\nI don't know what you're saying...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" The curse has been broken.") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" I cast my curse, enraged at\nyour twisted heart.") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" When your heart gained\nwhat it had been missing...\nThe curse was shattered.") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" The final key to break the\ncurse...#W\nwas your sense of gratitude.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Then, Gardevoir...?") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" You may be reassured.\n$n3 has returned.#W\nShe will soon awaken.") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" However...#W\nThat you were her partner in the past...") },
{ 0x34, 0x00, 0x0005, 0x00000000, 0x00000000, _(" $n3 will have no\nrecollection of that.") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(10),
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" ............#WThat doesn't matter.") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" $n3 is back.#W\nThat's enough for me...") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(30),
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g2_s0_lives1_dlg0[] = { /* 0x826d210 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x54, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000001a2, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000001a3, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(45),
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x20, 0x0080, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
WAIT(12),
CALL_SCRIPT(LOOK_AROUND_FUNC),
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x10, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
FANFARE_PLAY2(465),
CALL_SCRIPT(NOTICE_FUNC),
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g2_s0_eff1_script[] = { /* 0x826d470 */
DEBUGINFO,
{ 0xe3, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
{ 0x56, 0x00, 0x0000, 0x000001a4, 0x00000000, NULL },
{ 0xde, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs220_g2_s1_lives0_dlg0[] = { /* 0x826d4d0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0016, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs220_g2_s1_lives1_dlg0[] = { /* 0x826d510 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00b3, 0x00000002, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs220_g1_s0_lives[] = { /* 0x826d590 */
/* 0 */ { 0, 4, 0, 0, { 23, 47, 0, CPOS_HALFTILE }, {
[0] = s_gs220_g1_s0_lives0_dlg0,
} },
/* 1 */ { 91, 4, 0, 0, { 29, 45, 0, CPOS_HALFTILE }, {
[0] = s_gs220_g1_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs220_g2_s0_lives[] = { /* 0x826d5c0 */
/* 0 */ { 0, 4, 0, 0, { 25, 19, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs220_g2_s0_lives0_dlg0,
} },
/* 1 */ { 91, 4, 0, 0, { 25, 23, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs220_g2_s0_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs220_g2_s1_lives[] = { /* 0x826d5f0 */
/* 0 */ { 82, 0, 0, 0, { 25, 16, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs220_g2_s1_lives0_dlg0,
} },
/* 1 */ { 99, 7, 0, 0, { 25, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs220_g2_s1_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs220_g1_s0_effs[] = { /* 0x826d620 */
/* 0 */ { 0, 0, 1, 1, { 25, 30, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs220_g1_s0_eff0_script },
};
static const struct GroundEffectData s_gs220_g2_s0_effs[] = { /* 0x826d62c */
/* 0 */ { 0, 0, 1, 1, { 25, 21, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs220_g2_s0_eff0_script },
/* 1 */ { 4, 0, 1, 1, { 26, 21, 0, CPOS_HALFTILE }, s_gs220_g2_s0_eff1_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826d644 */
&s_gs220_g0_s0_station_sref,
&s_gs220_g1_s0_station_sref,
&s_gs220_g2_s0_station_sref,
};
static const struct GroundScriptSector s_gs220_g0_sectors[] = { /* 0x826d650 */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs220_g1_sectors[] = { /* 0x826d678 */
{ LPARRAY(s_gs220_g1_s0_lives), 0,NULL, LPARRAY(s_gs220_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptSector s_gs220_g2_sectors[] = { /* 0x826d6a0 */
{ LPARRAY(s_gs220_g2_s0_lives), 0,NULL, LPARRAY(s_gs220_g2_s0_effs), 0,NULL, 1,&sStationScripts[2], },
{ LPARRAY(s_gs220_g2_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs220_groups[] = { /* 0x826d6f0 */
{ LPARRAY(s_gs220_g0_sectors) },
{ LPARRAY(s_gs220_g1_sectors) },
{ LPARRAY(s_gs220_g2_sectors) },
};
static const struct GroundLink s_gs220_links[] = { /* 0x826d708 */
/* link 0 */ { { /*x*/ 23, /*y*/ 22, /*flags*/ 0, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 25, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 25, /*y*/ 24, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs220 = { LPARRAY(s_gs220_groups), s_gs220_links }; /* 0x826d720 */

View File

@@ -0,0 +1,104 @@
static const struct ScriptCommand s_gs221_g0_s0_station_sref_script[] = { /* 0x826d734 */
DEBUGINFO,
SELECT_MAP(221),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs221_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs221_g0_s0_station_sref_script }; /* 0x826d7a0 */
static const struct ScriptCommand s_gs221_g1_s0_station_sref_script[] = { /* 0x826d7ac */
DEBUGINFO,
SELECT_MAP(221),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(21),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
RET,
};
static const struct ScriptRef s_gs221_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs221_g1_s0_station_sref_script }; /* 0x826d81c */
static const struct ScriptCommand s_gs221_g1_s0_eff0_script[] = { /* 0x826d828 */
DEBUGINFO,
{ 0x99, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0xe3, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
WAIT(20),
{ 0x23, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
END_DELETE,
};
static const struct ScriptCommand s_gs221_g1_s0_lives0_dlg0[] = { /* 0x826d898 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0099, 0x00000004, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000000, 0x00000000, NULL },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" You're going to the\n#CDMurky Cave#R?") },
{ 0x34, 0x00, 0x0002, 0x00000000, 0x00000000, _(" Don't forget to take me,\nkekeh!") },
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x50, 0x0080, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs221_g1_s0_lives1_dlg0[] = { /* 0x826d9d8 */
DEBUGINFO,
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x58, 0x0100, 0x00000004, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
{ 0x89, 0x40, 0x0080, 0x00000004, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs221_g1_s0_lives[] = { /* 0x826da58 */
/* 0 */ { 0, 2, 0, 0, { 25, 22, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs221_g1_s0_lives0_dlg0,
} },
/* 1 */ { 91, 4, 0, 0, { 25, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs221_g1_s0_lives1_dlg0,
} },
};
static const struct GroundEffectData s_gs221_g1_s0_effs[] = { /* 0x826da88 */
/* 0 */ { 0, 0, 1, 1, { 25, 17, CPOS_HALFTILE, CPOS_HALFTILE }, s_gs221_g1_s0_eff0_script },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826da94 */
&s_gs221_g0_s0_station_sref,
&s_gs221_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs221_g0_sectors[] = { /* 0x826da9c */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs221_g1_sectors[] = { /* 0x826dac4 */
{ LPARRAY(s_gs221_g1_s0_lives), 0,NULL, LPARRAY(s_gs221_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs221_groups[] = { /* 0x826daec */
{ LPARRAY(s_gs221_g0_sectors) },
{ LPARRAY(s_gs221_g1_sectors) },
};
static const struct GroundLink s_gs221_links[] = { /* 0x826dafc */
{},
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs221 = { LPARRAY(s_gs221_groups), s_gs221_links }; /* 0x826db04 */

View File

@@ -0,0 +1,118 @@
static const struct ScriptCommand s_gs222_g0_s0_station_sref_script[] = { /* 0x826db18 */
DEBUGINFO,
SELECT_MAP(222),
BGM_STOP,
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs222_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs222_g0_s0_station_sref_script }; /* 0x826db84 */
static const struct ScriptCommand s_gs222_g1_s0_station_sref_script[] = { /* 0x826db90 */
DEBUGINFO,
SELECT_MAP(222),
SELECT_ENTITIES(-1, 0),
BGM_SWITCH(114),
{ 0x22, 0x01, 0x001e, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
BGM_FADEOUT(120),
{ 0x28, 0x01, 0x0001, 0x0000003c, 0x00ffffff, NULL },
RET,
};
static const struct ScriptRef s_gs222_g1_s0_station_sref = { 400, 7, NULL /* EVENT_CONTROL */, s_gs222_g1_s0_station_sref_script }; /* 0x826dc20 */
static const struct ScriptCommand s_gs222_g1_s0_lives0_dlg0[] = { /* 0x826dc2c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xdf, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000000, 0x00000000, NULL },
WAIT(15),
{ 0x2e, 0x03, 0x0001, 0x00000000, 0x00000000, NULL },
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.")),
{ 0x30, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0xe4, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
WAIT(1),
{ 0x6b, 0x00, 0x00cc, 0x00000001, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000003, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs222_g1_s0_lives1_dlg0[] = { /* 0x826ddc0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0001, 0x00000000, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x0100, 0x00000002, 0x00000000, NULL },
{ 0xe3, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
{ 0x6b, 0x00, 0x00cc, 0x00000003, 0x00000000, NULL },
{ 0x91, 0x04, 0x000a, 0x00000005, 0x00000000, NULL },
HALT,
};
static const struct ScriptCommand s_gs222_g1_s0_lives2_dlg0[] = { /* 0x826de50 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
{ 0x2d, 0x07, 0x0002, 0x00000000, 0x00000000, NULL },
HALT,
};
static const struct GroundLivesData s_gs222_g1_s0_lives[] = { /* 0x826de90 */
/* 0 */ { 0, 4, 0, 0, { 20, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs222_g1_s0_lives0_dlg0,
} },
/* 1 */ { 34, 4, 0, 0, { 24, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs222_g1_s0_lives1_dlg0,
} },
/* 2 */ { 124, 0, 0, 0, { 22, 17, 0, CPOS_HALFTILE }, {
[0] = s_gs222_g1_s0_lives2_dlg0,
} },
};
static const struct GroundEffectData s_gs222_g1_s0_effs[] = { /* 0x826ded8 */
/* 0 */ { 0, 0, 1, 1, { 22, 20, CPOS_HALFTILE, CPOS_HALFTILE }, NULL },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x826dee4 */
&s_gs222_g0_s0_station_sref,
&s_gs222_g1_s0_station_sref,
};
static const struct GroundScriptSector s_gs222_g0_sectors[] = { /* 0x826deec */
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 1,&sStationScripts[0], },
};
static const struct GroundScriptSector s_gs222_g1_sectors[] = { /* 0x826df14 */
{ LPARRAY(s_gs222_g1_s0_lives), 0,NULL, LPARRAY(s_gs222_g1_s0_effs), 0,NULL, 1,&sStationScripts[1], },
};
static const struct GroundScriptGroup s_gs222_groups[] = { /* 0x826df3c */
{ LPARRAY(s_gs222_g0_sectors) },
{ LPARRAY(s_gs222_g1_sectors) },
};
static const struct GroundLink s_gs222_links[] = { /* 0x826df4c */
/* link 0 */ { { /*x*/ 20, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 1 */ { { /*x*/ 20, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 2 */ { { /*x*/ 24, /*y*/ 23, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
/* link 3 */ { { /*x*/ 24, /*y*/ 19, /*flags*/ CPOS_HALFTILE, CPOS_HALFTILE }, /*w*/ 1, /*h*/ 1, /*ret*/ 1, /*?*/ 0 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs222 = { LPARRAY(s_gs222_groups), s_gs222_links }; /* 0x826df6c */

View File

@@ -0,0 +1,293 @@
static const struct ScriptCommand s_gs105_g0_s0_station_sref_script[] = { /* 0x81ee228 */
DEBUGINFO,
SELECT_MAP(105),
SELECT_ENTITIES(1, 0),
JUMP_LABEL(1),
LABEL(1), /* = 0x01 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 2),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 3),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 4),
JUMP_LABEL(2),
LABEL(4), /* = 0x04 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 5),
JUMP_LABEL(5),
LABEL(2), /* = 0x02 */
SELECT_LIVES(0, 3),
JUMP_LABEL(6),
LABEL(3), /* = 0x03 */
SELECT_LIVES(0, 4),
JUMP_LABEL(6),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 1),
JUMP_LABEL(6),
LABEL(6), /* = 0x06 */
BGM_SWITCH(106),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs105_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs105_g0_s0_station_sref_script }; /* 0x81ee3f4 */
static const struct ScriptCommand s_gs105_g0_s1_lives0_dlg0[] = { /* 0x81ee400 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g0_s1_lives1_dlg0[] = { /* 0x81ee440 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g0_s3_lives0_dlg0[] = { /* 0x81ee480 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g0_s3_lives1_dlg0[] = { /* 0x81ee4c0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g0_s4_lives0_dlg0[] = { /* 0x81ee500 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g0_s4_lives1_dlg0[] = { /* 0x81ee530 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs105_g1_s0_lives0_dlg1[] = { /* 0x81ee560 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives0_dlg2[] = { /* 0x81ee590 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives1_dlg1[] = { /* 0x81ee5b0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives1_dlg2[] = { /* 0x81ee5e0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives2_dlg1[] = { /* 0x81ee600 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives2_dlg2[] = { /* 0x81ee630 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives3_dlg1[] = { /* 0x81ee650 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives3_dlg2[] = { /* 0x81ee680 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives4_dlg1[] = { /* 0x81ee6a0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives4_dlg2[] = { /* 0x81ee6d0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives5_dlg1[] = { /* 0x81ee6f0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives5_dlg2[] = { /* 0x81ee720 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives6_dlg1[] = { /* 0x81ee740 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives6_dlg2[] = { /* 0x81ee770 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives7_dlg1[] = { /* 0x81ee790 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives7_dlg2[] = { /* 0x81ee7c0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs105_g1_s0_lives8_dlg1[] = { /* 0x81ee7e0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs105_g1_s0_lives8_dlg2[] = { /* 0x81ee810 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs105_g0_s1_lives[] = { /* 0x81ee830 */
/* 0 */ { 0, 4, 0, 0, { 28, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs105_g0_s3_lives[] = { /* 0x81ee860 */
/* 0 */ { 0, 4, 0, 0, { 28, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs105_g0_s4_lives[] = { /* 0x81ee890 */
/* 0 */ { 0, 0, 0, 0, { 28, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 28, 26, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs105_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs105_g1_s0_lives[] = { /* 0x81ee8c0 */
/* 0 */ { 14, 0, 0, 0, { 21, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives0_dlg1,
[2] = s_gs105_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 36, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives1_dlg1,
[2] = s_gs105_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 10, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives2_dlg1,
[2] = s_gs105_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 47, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives3_dlg1,
[2] = s_gs105_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 16, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives4_dlg1,
[2] = s_gs105_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 41, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives5_dlg1,
[2] = s_gs105_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 28, 20, CPOS_HALFTILE, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives6_dlg1,
[2] = s_gs105_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 23, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives7_dlg1,
[2] = s_gs105_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 34, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs105_g1_s0_lives8_dlg1,
[2] = s_gs105_g1_s0_lives8_dlg2,
} },
};
static const struct GroundEventData s_gs105_g0_s0_evts[] = { /* 0x81ee998 */
/* 0 */ { 58, 1, 0, 0, { 0, 29, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 58, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81ee9b0 */
&s_gs105_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs105_g0_sectors[] = { /* 0x81ee9b4 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs105_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs105_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs105_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs105_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs105_g1_sectors[] = { /* 0x81eea7c */
{ LPARRAY(s_gs105_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs105_groups[] = { /* 0x81eeaa4 */
{ LPARRAY(s_gs105_g0_sectors) },
{ LPARRAY(s_gs105_g1_sectors) },
};
static const struct GroundLink s_gs105_links[] = { /* 0x81eeab4 */
/* link 0 */ { { /*x*/ 19, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 32, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 7, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 44, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 13, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 38, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 25, /*y*/ 16, /*flags*/ CPOS_HALFTILE, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 19, /*y*/ 13, /*flags*/ CPOS_HALFTILE, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 32, /*y*/ 13, /*flags*/ CPOS_HALFTILE, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs105 = { LPARRAY(s_gs105_groups), s_gs105_links }; /* 0x81eeafc */

View File

@@ -0,0 +1,323 @@
static const struct ScriptCommand s_gs106_g0_s0_station_sref_script[] = { /* 0x81eeb10 */
DEBUGINFO,
SELECT_MAP(106),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(106),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs106_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs106_g0_s0_station_sref_script }; /* 0x81eed8c */
static const struct ScriptCommand s_gs106_g0_s1_lives0_dlg0[] = { /* 0x81eed98 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g0_s1_lives1_dlg0[] = { /* 0x81eedd8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g0_s3_lives0_dlg0[] = { /* 0x81eee18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g0_s3_lives1_dlg0[] = { /* 0x81eee58 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g0_s4_lives0_dlg0[] = { /* 0x81eee98 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g0_s4_lives1_dlg0[] = { /* 0x81eeec8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs106_g1_s0_lives0_dlg1[] = { /* 0x81eeef8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives0_dlg2[] = { /* 0x81eef28 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives1_dlg1[] = { /* 0x81eef48 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives1_dlg2[] = { /* 0x81eef78 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives2_dlg1[] = { /* 0x81eef98 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives2_dlg2[] = { /* 0x81eefc8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives3_dlg1[] = { /* 0x81eefe8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives3_dlg2[] = { /* 0x81ef018 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives4_dlg1[] = { /* 0x81ef038 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives4_dlg2[] = { /* 0x81ef068 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives5_dlg1[] = { /* 0x81ef088 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives5_dlg2[] = { /* 0x81ef0b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives6_dlg1[] = { /* 0x81ef0d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives6_dlg2[] = { /* 0x81ef108 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives7_dlg1[] = { /* 0x81ef128 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives7_dlg2[] = { /* 0x81ef158 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives8_dlg1[] = { /* 0x81ef178 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives8_dlg2[] = { /* 0x81ef1a8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs106_g1_s0_lives9_dlg1[] = { /* 0x81ef1c8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs106_g1_s0_lives9_dlg2[] = { /* 0x81ef1f8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs106_g0_s1_lives[] = { /* 0x81ef218 */
/* 0 */ { 0, 4, 0, 0, { 36, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 36, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs106_g0_s3_lives[] = { /* 0x81ef248 */
/* 0 */ { 0, 4, 0, 0, { 36, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 36, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs106_g0_s4_lives[] = { /* 0x81ef278 */
/* 0 */ { 0, 0, 0, 0, { 36, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 36, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs106_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs106_g1_s0_lives[] = { /* 0x81ef2a8 */
/* 0 */ { 14, 0, 0, 0, { 36, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives0_dlg1,
[2] = s_gs106_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 45, 27, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives1_dlg1,
[2] = s_gs106_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 28, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives2_dlg1,
[2] = s_gs106_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 52, 23, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives3_dlg1,
[2] = s_gs106_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 20, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives4_dlg1,
[2] = s_gs106_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 46, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives5_dlg1,
[2] = s_gs106_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 12, 32, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives6_dlg1,
[2] = s_gs106_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 40, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives7_dlg1,
[2] = s_gs106_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 35, 23, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives8_dlg1,
[2] = s_gs106_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 24, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs106_g1_s0_lives9_dlg1,
[2] = s_gs106_g1_s0_lives9_dlg2,
} },
};
static const struct GroundEventData s_gs106_g0_s0_evts[] = { /* 0x81ef398 */
/* 0 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 60, 1, 0, 0, { 1, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 59, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81ef3c8 */
&s_gs106_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs106_g0_sectors[] = { /* 0x81ef3cc */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs106_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs106_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs106_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs106_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs106_g1_sectors[] = { /* 0x81ef494 */
{ LPARRAY(s_gs106_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs106_groups[] = { /* 0x81ef4bc */
{ LPARRAY(s_gs106_g0_sectors) },
{ LPARRAY(s_gs106_g1_sectors) },
{},
};
static const struct GroundLink s_gs106_links[] = { /* 0x81ef4d4 */
/* link 0 */ { { /*x*/ 33, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 42, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 25, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 49, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 17, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 37, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 21, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 32, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 9, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 43, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs106 = { LPARRAY(s_gs106_groups), s_gs106_links }; /* 0x81ef524 */

View File

@@ -0,0 +1,221 @@
static const struct ScriptCommand s_gs107_g0_s0_station_sref_script[] = { /* 0x81ef538 */
DEBUGINFO,
SELECT_MAP(107),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(106),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs107_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs107_g0_s0_station_sref_script }; /* 0x81ef7b4 */
static const struct ScriptCommand s_gs107_g0_s1_lives0_dlg0[] = { /* 0x81ef7c0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g0_s1_lives1_dlg0[] = { /* 0x81ef800 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g0_s3_lives0_dlg0[] = { /* 0x81ef840 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g0_s3_lives1_dlg0[] = { /* 0x81ef880 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g0_s4_lives0_dlg0[] = { /* 0x81ef8c0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g0_s4_lives1_dlg0[] = { /* 0x81ef8f0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs107_g1_s0_lives0_dlg1[] = { /* 0x81ef920 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs107_g1_s0_lives0_dlg2[] = { /* 0x81ef950 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs107_g1_s0_lives1_dlg1[] = { /* 0x81ef970 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs107_g1_s0_lives1_dlg2[] = { /* 0x81ef9a0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs107_g1_s0_lives2_dlg1[] = { /* 0x81ef9c0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs107_g1_s0_lives2_dlg2[] = { /* 0x81ef9f0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs107_g1_s0_lives3_dlg1[] = { /* 0x81efa10 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs107_g1_s0_lives3_dlg2[] = { /* 0x81efa40 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs107_g0_s1_lives[] = { /* 0x81efa60 */
/* 0 */ { 0, 4, 0, 0, { 33, 7, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 33, 3, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs107_g0_s3_lives[] = { /* 0x81efa90 */
/* 0 */ { 0, 4, 0, 0, { 33, 7, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 33, 3, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs107_g0_s4_lives[] = { /* 0x81efac0 */
/* 0 */ { 0, 0, 0, 0, { 33, 7, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 33, 3, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs107_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs107_g1_s0_lives[] = { /* 0x81efaf0 */
/* 0 */ { 14, 0, 0, 0, { 27, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs107_g1_s0_lives0_dlg1,
[2] = s_gs107_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 29, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs107_g1_s0_lives1_dlg1,
[2] = s_gs107_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 18, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs107_g1_s0_lives2_dlg1,
[2] = s_gs107_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 49, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs107_g1_s0_lives3_dlg1,
[2] = s_gs107_g1_s0_lives3_dlg2,
} },
};
static const struct GroundEventData s_gs107_g0_s0_evts[] = { /* 0x81efb50 */
/* 0 */ { 66, 3, 0, 0, { 0, 42, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 3, 45, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 3, 45, 0, 0, { 63, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 66, 3, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81efb80 */
&s_gs107_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs107_g0_sectors[] = { /* 0x81efb84 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs107_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs107_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs107_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs107_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs107_g1_sectors[] = { /* 0x81efc4c */
{ LPARRAY(s_gs107_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs107_groups[] = { /* 0x81efc74 */
{ LPARRAY(s_gs107_g0_sectors) },
{ LPARRAY(s_gs107_g1_sectors) },
{},
};
static const struct GroundLink s_gs107_links[] = { /* 0x81efc8c */
/* link 0 */ { { /*x*/ 15, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 46, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 26, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 24, /*y*/ 13, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs107 = { LPARRAY(s_gs107_groups), s_gs107_links }; /* 0x81efcac */

View File

@@ -0,0 +1,357 @@
static const struct ScriptCommand s_gs108_g0_s0_station_sref_script[] = { /* 0x81efcc0 */
DEBUGINFO,
SELECT_MAP(108),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(106),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs108_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs108_g0_s0_station_sref_script }; /* 0x81eff3c */
static const struct ScriptCommand s_gs108_g0_s1_lives0_dlg0[] = { /* 0x81eff48 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g0_s1_lives1_dlg0[] = { /* 0x81eff88 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g0_s3_lives0_dlg0[] = { /* 0x81effc8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g0_s3_lives1_dlg0[] = { /* 0x81f0008 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g0_s4_lives0_dlg0[] = { /* 0x81f0048 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g0_s4_lives1_dlg0[] = { /* 0x81f0078 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs108_g1_s0_lives0_dlg1[] = { /* 0x81f00a8 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives0_dlg2[] = { /* 0x81f00d8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives1_dlg1[] = { /* 0x81f00f8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives1_dlg2[] = { /* 0x81f0128 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives2_dlg1[] = { /* 0x81f0148 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives2_dlg2[] = { /* 0x81f0178 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives3_dlg1[] = { /* 0x81f0198 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives3_dlg2[] = { /* 0x81f01c8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives4_dlg1[] = { /* 0x81f01e8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives4_dlg2[] = { /* 0x81f0218 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives5_dlg1[] = { /* 0x81f0238 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives5_dlg2[] = { /* 0x81f0268 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives6_dlg1[] = { /* 0x81f0288 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives6_dlg2[] = { /* 0x81f02b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives7_dlg1[] = { /* 0x81f02d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives7_dlg2[] = { /* 0x81f0308 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives8_dlg1[] = { /* 0x81f0328 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives8_dlg2[] = { /* 0x81f0358 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives9_dlg1[] = { /* 0x81f0378 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives9_dlg2[] = { /* 0x81f03a8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives10_dlg1[] = { /* 0x81f03c8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives10_dlg2[] = { /* 0x81f03f8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs108_g1_s0_lives11_dlg1[] = { /* 0x81f0418 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs108_g1_s0_lives11_dlg2[] = { /* 0x81f0448 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs108_g0_s1_lives[] = { /* 0x81f0468 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs108_g0_s3_lives[] = { /* 0x81f0498 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs108_g0_s4_lives[] = { /* 0x81f04c8 */
/* 0 */ { 0, 0, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs108_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs108_g1_s0_lives[] = { /* 0x81f04f8 */
/* 0 */ { 14, 0, 0, 0, { 26, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives0_dlg1,
[2] = s_gs108_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 32, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives1_dlg1,
[2] = s_gs108_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 18, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives2_dlg1,
[2] = s_gs108_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 41, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives3_dlg1,
[2] = s_gs108_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 16, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives4_dlg1,
[2] = s_gs108_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 44, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives5_dlg1,
[2] = s_gs108_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 9, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives6_dlg1,
[2] = s_gs108_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 51, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives7_dlg1,
[2] = s_gs108_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 17, 13, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives8_dlg1,
[2] = s_gs108_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 42, 13, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives9_dlg1,
[2] = s_gs108_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 25, 12, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives10_dlg1,
[2] = s_gs108_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 35, 12, 0, CPOS_HALFTILE }, {
[1] = s_gs108_g1_s0_lives11_dlg1,
[2] = s_gs108_g1_s0_lives11_dlg2,
} },
};
static const struct GroundEventData s_gs108_g0_s0_evts[] = { /* 0x81f0618 */
/* 0 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 59, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f0648 */
&s_gs108_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs108_g0_sectors[] = { /* 0x81f064c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs108_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs108_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs108_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs108_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs108_g1_sectors[] = { /* 0x81f0714 */
{ LPARRAY(s_gs108_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs108_groups[] = { /* 0x81f073c */
{ LPARRAY(s_gs108_g0_sectors) },
{ LPARRAY(s_gs108_g1_sectors) },
{},
};
static const struct GroundLink s_gs108_links[] = { /* 0x81f0754 */
/* link 0 */ { { /*x*/ 32, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 6, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 22, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 30, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 40, /*y*/ 11, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 14, /*y*/ 11, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 48, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 41, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 13, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 38, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 15, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 23, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs108 = { LPARRAY(s_gs108_groups), s_gs108_links }; /* 0x81f07b4 */

View File

@@ -0,0 +1,170 @@
static const struct ScriptCommand s_gs109_g0_s0_station_sref_script[] = { /* 0x81f07c8 */
DEBUGINFO,
SELECT_MAP(109),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(30),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs109_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs109_g0_s0_station_sref_script }; /* 0x81f0a44 */
static const struct ScriptCommand s_gs109_g0_s1_lives0_dlg0[] = { /* 0x81f0a50 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g0_s1_lives1_dlg0[] = { /* 0x81f0a90 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g0_s3_lives0_dlg0[] = { /* 0x81f0ad0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g0_s3_lives1_dlg0[] = { /* 0x81f0b10 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g0_s4_lives0_dlg0[] = { /* 0x81f0b50 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g0_s4_lives1_dlg0[] = { /* 0x81f0b80 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs109_g1_s0_lives0_dlg1[] = { /* 0x81f0bb0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs109_g1_s0_lives0_dlg2[] = { /* 0x81f0be0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs109_g0_s1_lives[] = { /* 0x81f0c00 */
/* 0 */ { 0, 4, 0, 0, { 29, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs109_g0_s3_lives[] = { /* 0x81f0c30 */
/* 0 */ { 0, 4, 0, 0, { 29, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs109_g0_s4_lives[] = { /* 0x81f0c60 */
/* 0 */ { 0, 0, 0, 0, { 29, 30, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs109_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs109_g1_s0_lives[] = { /* 0x81f0c90 */
/* 0 */ { 14, 0, 0, 0, { 28, 15, 0, CPOS_HALFTILE }, {
[1] = s_gs109_g1_s0_lives0_dlg1,
[2] = s_gs109_g1_s0_lives0_dlg2,
} },
};
static const struct GroundEventData s_gs109_g0_s0_evts[] = { /* 0x81f0ca8 */
/* 0 */ { 57, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 38, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 39, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 39, 0, 0, { 56, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f0cd8 */
&s_gs109_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs109_g0_sectors[] = { /* 0x81f0cdc */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs109_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs109_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs109_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs109_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs109_g1_sectors[] = { /* 0x81f0da4 */
{ LPARRAY(s_gs109_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs109_groups[] = { /* 0x81f0dcc */
{ LPARRAY(s_gs109_g0_sectors) },
{ LPARRAY(s_gs109_g1_sectors) },
{},
};
static const struct GroundLink s_gs109_links[] = { /* 0x81f0de4 */
/* link 0 */ { { /*x*/ 23, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 10, /*h*/ 7, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs109 = { LPARRAY(s_gs109_groups), s_gs109_links }; /* 0x81f0dec */

View File

@@ -0,0 +1,170 @@
static const struct ScriptCommand s_gs110_g0_s0_station_sref_script[] = { /* 0x81f0e00 */
DEBUGINFO,
SELECT_MAP(110),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(31),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs110_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs110_g0_s0_station_sref_script }; /* 0x81f107c */
static const struct ScriptCommand s_gs110_g0_s1_lives0_dlg0[] = { /* 0x81f1088 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g0_s1_lives1_dlg0[] = { /* 0x81f10c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g0_s3_lives0_dlg0[] = { /* 0x81f1108 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g0_s3_lives1_dlg0[] = { /* 0x81f1148 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g0_s4_lives0_dlg0[] = { /* 0x81f1188 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g0_s4_lives1_dlg0[] = { /* 0x81f11b8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs110_g1_s0_lives0_dlg1[] = { /* 0x81f11e8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs110_g1_s0_lives0_dlg2[] = { /* 0x81f1218 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs110_g0_s1_lives[] = { /* 0x81f1238 */
/* 0 */ { 0, 4, 0, 0, { 23, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 23, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs110_g0_s3_lives[] = { /* 0x81f1268 */
/* 0 */ { 0, 4, 0, 0, { 23, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 23, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs110_g0_s4_lives[] = { /* 0x81f1298 */
/* 0 */ { 0, 0, 0, 0, { 23, 33, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 23, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs110_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs110_g1_s0_lives[] = { /* 0x81f12c8 */
/* 0 */ { 14, 0, 0, 0, { 22, 13, CPOS_HALFTILE, CPOS_HALFTILE }, {
[1] = s_gs110_g1_s0_lives0_dlg1,
[2] = s_gs110_g1_s0_lives0_dlg2,
} },
};
static const struct GroundEventData s_gs110_g0_s0_evts[] = { /* 0x81f12e0 */
/* 0 */ { 45, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 3, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 3, 42, 0, 0, { 42, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 45, 3, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f1310 */
&s_gs110_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs110_g0_sectors[] = { /* 0x81f1314 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs110_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs110_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs110_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs110_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs110_g1_sectors[] = { /* 0x81f13dc */
{ LPARRAY(s_gs110_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs110_groups[] = { /* 0x81f1404 */
{ LPARRAY(s_gs110_g0_sectors) },
{ LPARRAY(s_gs110_g1_sectors) },
{},
};
static const struct GroundLink s_gs110_links[] = { /* 0x81f141c */
/* link 0 */ { { /*x*/ 19, /*y*/ 10, /*flags*/ 0, 0 }, /*w*/ 7, /*h*/ 7, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs110 = { LPARRAY(s_gs110_groups), s_gs110_links }; /* 0x81f1424 */

View File

@@ -0,0 +1,255 @@
static const struct ScriptCommand s_gs111_g0_s0_station_sref_script[] = { /* 0x81f1438 */
DEBUGINFO,
SELECT_MAP(111),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(16),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs111_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs111_g0_s0_station_sref_script }; /* 0x81f16b4 */
static const struct ScriptCommand s_gs111_g0_s1_lives0_dlg0[] = { /* 0x81f16c0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g0_s1_lives1_dlg0[] = { /* 0x81f1700 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g0_s3_lives0_dlg0[] = { /* 0x81f1740 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g0_s3_lives1_dlg0[] = { /* 0x81f1780 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g0_s4_lives0_dlg0[] = { /* 0x81f17c0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g0_s4_lives1_dlg0[] = { /* 0x81f17f0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs111_g1_s0_lives0_dlg1[] = { /* 0x81f1820 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives0_dlg2[] = { /* 0x81f1850 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs111_g1_s0_lives1_dlg1[] = { /* 0x81f1870 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives1_dlg2[] = { /* 0x81f18a0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs111_g1_s0_lives2_dlg1[] = { /* 0x81f18c0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives2_dlg2[] = { /* 0x81f18f0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs111_g1_s0_lives3_dlg1[] = { /* 0x81f1910 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives3_dlg2[] = { /* 0x81f1940 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs111_g1_s0_lives4_dlg1[] = { /* 0x81f1960 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives4_dlg2[] = { /* 0x81f1990 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs111_g1_s0_lives5_dlg1[] = { /* 0x81f19b0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs111_g1_s0_lives5_dlg2[] = { /* 0x81f19e0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs111_g0_s1_lives[] = { /* 0x81f1a00 */
/* 0 */ { 0, 4, 0, 0, { 33, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 33, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs111_g0_s3_lives[] = { /* 0x81f1a30 */
/* 0 */ { 0, 4, 0, 0, { 33, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 33, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs111_g0_s4_lives[] = { /* 0x81f1a60 */
/* 0 */ { 0, 0, 0, 0, { 33, 21, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 33, 24, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs111_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs111_g1_s0_lives[] = { /* 0x81f1a90 */
/* 0 */ { 14, 0, 0, 0, { 31, 15, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives0_dlg1,
[2] = s_gs111_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 42, 20, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives1_dlg1,
[2] = s_gs111_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 41, 13, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives2_dlg1,
[2] = s_gs111_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 24, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives3_dlg1,
[2] = s_gs111_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 51, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives4_dlg1,
[2] = s_gs111_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 17, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs111_g1_s0_lives5_dlg1,
[2] = s_gs111_g1_s0_lives5_dlg2,
} },
};
static const struct GroundEventData s_gs111_g0_s0_evts[] = { /* 0x81f1b20 */
/* 0 */ { 69, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 69, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 68, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f1b50 */
&s_gs111_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs111_g0_sectors[] = { /* 0x81f1b54 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs111_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs111_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs111_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs111_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs111_g1_sectors[] = { /* 0x81f1c1c */
{ LPARRAY(s_gs111_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs111_groups[] = { /* 0x81f1c44 */
{ LPARRAY(s_gs111_g0_sectors) },
{ LPARRAY(s_gs111_g1_sectors) },
{},
};
static const struct GroundLink s_gs111_links[] = { /* 0x81f1c5c */
/* link 0 */ { { /*x*/ 14, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 48, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 21, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 38, /*y*/ 11, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 39, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 28, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs111 = { LPARRAY(s_gs111_groups), s_gs111_links }; /* 0x81f1c8c */

View File

@@ -0,0 +1,354 @@
static const struct ScriptCommand s_gs112_g0_s0_station_sref_script[] = { /* 0x81f1ca0 */
DEBUGINFO,
SELECT_MAP(112),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(105),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs112_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs112_g0_s0_station_sref_script }; /* 0x81f1f1c */
static const struct ScriptCommand s_gs112_g0_s1_lives0_dlg0[] = { /* 0x81f1f28 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g0_s1_lives1_dlg0[] = { /* 0x81f1f68 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g0_s3_lives0_dlg0[] = { /* 0x81f1fa8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g0_s3_lives1_dlg0[] = { /* 0x81f1fe8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g0_s4_lives0_dlg0[] = { /* 0x81f2028 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g0_s4_lives1_dlg0[] = { /* 0x81f2058 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs112_g1_s0_lives0_dlg1[] = { /* 0x81f2088 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives0_dlg2[] = { /* 0x81f20b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives1_dlg1[] = { /* 0x81f20d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives1_dlg2[] = { /* 0x81f2108 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives2_dlg1[] = { /* 0x81f2128 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives2_dlg2[] = { /* 0x81f2158 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives3_dlg1[] = { /* 0x81f2178 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives3_dlg2[] = { /* 0x81f21a8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives4_dlg1[] = { /* 0x81f21c8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives4_dlg2[] = { /* 0x81f21f8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives5_dlg1[] = { /* 0x81f2218 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives5_dlg2[] = { /* 0x81f2248 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives6_dlg1[] = { /* 0x81f2268 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives6_dlg2[] = { /* 0x81f2298 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives7_dlg1[] = { /* 0x81f22b8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives7_dlg2[] = { /* 0x81f22e8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives8_dlg1[] = { /* 0x81f2308 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives8_dlg2[] = { /* 0x81f2338 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives9_dlg1[] = { /* 0x81f2358 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives9_dlg2[] = { /* 0x81f2388 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives10_dlg1[] = { /* 0x81f23a8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives10_dlg2[] = { /* 0x81f23d8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs112_g1_s0_lives11_dlg1[] = { /* 0x81f23f8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs112_g1_s0_lives11_dlg2[] = { /* 0x81f2428 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs112_g0_s1_lives[] = { /* 0x81f2448 */
/* 0 */ { 0, 4, 0, 0, { 32, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs112_g0_s3_lives[] = { /* 0x81f2478 */
/* 0 */ { 0, 4, 0, 0, { 32, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs112_g0_s4_lives[] = { /* 0x81f24a8 */
/* 0 */ { 0, 0, 0, 0, { 32, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs112_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs112_g1_s0_lives[] = { /* 0x81f24d8 */
/* 0 */ { 14, 0, 0, 0, { 12, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives0_dlg1,
[2] = s_gs112_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 51, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives1_dlg1,
[2] = s_gs112_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 27, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives2_dlg1,
[2] = s_gs112_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 35, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives3_dlg1,
[2] = s_gs112_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 24, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives4_dlg1,
[2] = s_gs112_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 31, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives5_dlg1,
[2] = s_gs112_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 37, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives6_dlg1,
[2] = s_gs112_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 28, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives7_dlg1,
[2] = s_gs112_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 34, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives8_dlg1,
[2] = s_gs112_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 40, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives9_dlg1,
[2] = s_gs112_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 22, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives10_dlg1,
[2] = s_gs112_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 38, 13, 0, CPOS_HALFTILE }, {
[1] = s_gs112_g1_s0_lives11_dlg1,
[2] = s_gs112_g1_s0_lives11_dlg2,
} },
};
static const struct GroundEventData s_gs112_g0_s0_evts[] = { /* 0x81f25f8 */
/* 0 */ { 63, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f2604 */
&s_gs112_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs112_g0_sectors[] = { /* 0x81f2608 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs112_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs112_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs112_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs112_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs112_g1_sectors[] = { /* 0x81f26d0 */
{ LPARRAY(s_gs112_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs112_groups[] = { /* 0x81f26f8 */
{ LPARRAY(s_gs112_g0_sectors) },
{ LPARRAY(s_gs112_g1_sectors) },
{},
};
static const struct GroundLink s_gs112_links[] = { /* 0x81f2710 */
/* link 0 */ { { /*x*/ 25, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 36, /*y*/ 10, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 19, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 37, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 31, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 35, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 20, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 28, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 32, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 24, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 48, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 9, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs112 = { LPARRAY(s_gs112_groups), s_gs112_links }; /* 0x81f2770 */

View File

@@ -0,0 +1,304 @@
static const struct ScriptCommand s_gs113_g0_s0_station_sref_script[] = { /* 0x81f2784 */
DEBUGINFO,
SELECT_MAP(113),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(107),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs113_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs113_g0_s0_station_sref_script }; /* 0x81f2a00 */
static const struct ScriptCommand s_gs113_g0_s1_lives0_dlg0[] = { /* 0x81f2a0c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g0_s1_lives1_dlg0[] = { /* 0x81f2a4c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g0_s3_lives0_dlg0[] = { /* 0x81f2a8c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g0_s3_lives1_dlg0[] = { /* 0x81f2acc */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g0_s4_lives0_dlg0[] = { /* 0x81f2b0c */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g0_s4_lives1_dlg0[] = { /* 0x81f2b3c */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs113_g1_s0_lives0_dlg1[] = { /* 0x81f2b6c */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives0_dlg2[] = { /* 0x81f2b9c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives1_dlg1[] = { /* 0x81f2bbc */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives1_dlg2[] = { /* 0x81f2bec */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives2_dlg1[] = { /* 0x81f2c0c */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives2_dlg2[] = { /* 0x81f2c3c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives3_dlg1[] = { /* 0x81f2c5c */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives3_dlg2[] = { /* 0x81f2c8c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives4_dlg1[] = { /* 0x81f2cac */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives4_dlg2[] = { /* 0x81f2cdc */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives5_dlg1[] = { /* 0x81f2cfc */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives5_dlg2[] = { /* 0x81f2d2c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives6_dlg1[] = { /* 0x81f2d4c */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives6_dlg2[] = { /* 0x81f2d7c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives7_dlg1[] = { /* 0x81f2d9c */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives7_dlg2[] = { /* 0x81f2dcc */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs113_g1_s0_lives8_dlg1[] = { /* 0x81f2dec */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs113_g1_s0_lives8_dlg2[] = { /* 0x81f2e1c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs113_g0_s1_lives[] = { /* 0x81f2e3c */
/* 0 */ { 0, 4, 0, 0, { 12, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 12, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs113_g0_s3_lives[] = { /* 0x81f2e6c */
/* 0 */ { 0, 4, 0, 0, { 12, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 12, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs113_g0_s4_lives[] = { /* 0x81f2e9c */
/* 0 */ { 0, 0, 0, 0, { 12, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 12, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs113_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs113_g1_s0_lives[] = { /* 0x81f2ecc */
/* 0 */ { 14, 0, 0, 0, { 12, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives0_dlg1,
[2] = s_gs113_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 21, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives1_dlg1,
[2] = s_gs113_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 6, 23, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives2_dlg1,
[2] = s_gs113_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 30, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives3_dlg1,
[2] = s_gs113_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 34, 15, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives4_dlg1,
[2] = s_gs113_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 40, 12, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives5_dlg1,
[2] = s_gs113_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 31, 8, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives6_dlg1,
[2] = s_gs113_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 45, 15, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives7_dlg1,
[2] = s_gs113_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 50, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs113_g1_s0_lives8_dlg1,
[2] = s_gs113_g1_s0_lives8_dlg2,
} },
};
static const struct GroundEventData s_gs113_g0_s0_evts[] = { /* 0x81f2fa4 */
/* 0 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f2fbc */
&s_gs113_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs113_g0_sectors[] = { /* 0x81f2fc0 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs113_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs113_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs113_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs113_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs113_g1_sectors[] = { /* 0x81f3088 */
{ LPARRAY(s_gs113_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs113_groups[] = { /* 0x81f30b0 */
{ LPARRAY(s_gs113_g0_sectors) },
{ LPARRAY(s_gs113_g1_sectors) },
{},
};
static const struct GroundLink s_gs113_links[] = { /* 0x81f30c8 */
/* link 0 */ { { /*x*/ 47, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 43, /*y*/ 13, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 29, /*y*/ 6, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 37, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 31, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 27, /*y*/ 31, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 3, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 18, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 9, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs113 = { LPARRAY(s_gs113_groups), s_gs113_links }; /* 0x81f3110 */

View File

@@ -0,0 +1,252 @@
static const struct ScriptCommand s_gs114_g0_s0_station_sref_script[] = { /* 0x81f3124 */
DEBUGINFO,
SELECT_MAP(114),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs114_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs114_g0_s0_station_sref_script }; /* 0x81f33a0 */
static const struct ScriptCommand s_gs114_g0_s1_lives0_dlg0[] = { /* 0x81f33ac */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g0_s1_lives1_dlg0[] = { /* 0x81f33ec */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g0_s3_lives0_dlg0[] = { /* 0x81f342c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g0_s3_lives1_dlg0[] = { /* 0x81f346c */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g0_s4_lives0_dlg0[] = { /* 0x81f34ac */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g0_s4_lives1_dlg0[] = { /* 0x81f34dc */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs114_g1_s0_lives0_dlg1[] = { /* 0x81f350c */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives0_dlg2[] = { /* 0x81f353c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs114_g1_s0_lives1_dlg1[] = { /* 0x81f355c */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives1_dlg2[] = { /* 0x81f358c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs114_g1_s0_lives2_dlg1[] = { /* 0x81f35ac */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives2_dlg2[] = { /* 0x81f35dc */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs114_g1_s0_lives3_dlg1[] = { /* 0x81f35fc */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives3_dlg2[] = { /* 0x81f362c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs114_g1_s0_lives4_dlg1[] = { /* 0x81f364c */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives4_dlg2[] = { /* 0x81f367c */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs114_g1_s0_lives5_dlg1[] = { /* 0x81f369c */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs114_g1_s0_lives5_dlg2[] = { /* 0x81f36cc */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs114_g0_s1_lives[] = { /* 0x81f36ec */
/* 0 */ { 0, 4, 0, 0, { 35, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs114_g0_s3_lives[] = { /* 0x81f371c */
/* 0 */ { 0, 4, 0, 0, { 35, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs114_g0_s4_lives[] = { /* 0x81f374c */
/* 0 */ { 0, 0, 0, 0, { 35, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 32, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs114_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs114_g1_s0_lives[] = { /* 0x81f377c */
/* 0 */ { 14, 0, 0, 0, { 43, 32, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives0_dlg1,
[2] = s_gs114_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 24, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives1_dlg1,
[2] = s_gs114_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 38, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives2_dlg1,
[2] = s_gs114_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 17, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives3_dlg1,
[2] = s_gs114_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 17, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives4_dlg1,
[2] = s_gs114_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 27, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs114_g1_s0_lives5_dlg1,
[2] = s_gs114_g1_s0_lives5_dlg2,
} },
};
static const struct GroundEventData s_gs114_g0_s0_evts[] = { /* 0x81f380c */
/* 0 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f3818 */
&s_gs114_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs114_g0_sectors[] = { /* 0x81f381c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs114_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs114_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs114_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs114_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs114_g1_sectors[] = { /* 0x81f38e4 */
{ LPARRAY(s_gs114_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs114_groups[] = { /* 0x81f390c */
{ LPARRAY(s_gs114_g0_sectors) },
{ LPARRAY(s_gs114_g1_sectors) },
{},
};
static const struct GroundLink s_gs114_links[] = { /* 0x81f3924 */
/* link 0 */ { { /*x*/ 40, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 21, /*y*/ 23, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 35, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 14, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 13, /*y*/ 23, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 24, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs114 = { LPARRAY(s_gs114_groups), s_gs114_links }; /* 0x81f3954 */

View File

@@ -0,0 +1,170 @@
static const struct ScriptCommand s_gs115_g0_s0_station_sref_script[] = { /* 0x81f3968 */
DEBUGINFO,
SELECT_MAP(115),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(28),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs115_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs115_g0_s0_station_sref_script }; /* 0x81f3be4 */
static const struct ScriptCommand s_gs115_g0_s1_lives0_dlg0[] = { /* 0x81f3bf0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g0_s1_lives1_dlg0[] = { /* 0x81f3c30 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g0_s3_lives0_dlg0[] = { /* 0x81f3c70 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g0_s3_lives1_dlg0[] = { /* 0x81f3cb0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g0_s4_lives0_dlg0[] = { /* 0x81f3cf0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g0_s4_lives1_dlg0[] = { /* 0x81f3d20 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs115_g1_s0_lives0_dlg1[] = { /* 0x81f3d50 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs115_g1_s0_lives0_dlg2[] = { /* 0x81f3d80 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs115_g0_s1_lives[] = { /* 0x81f3da0 */
/* 0 */ { 0, 4, 0, 0, { 28, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs115_g0_s3_lives[] = { /* 0x81f3dd0 */
/* 0 */ { 0, 4, 0, 0, { 28, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs115_g0_s4_lives[] = { /* 0x81f3e00 */
/* 0 */ { 0, 0, 0, 0, { 28, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs115_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs115_g1_s0_lives[] = { /* 0x81f3e30 */
/* 0 */ { 14, 0, 0, 0, { 28, 14, CPOS_HALFTILE, CPOS_HALFTILE }, {
[1] = s_gs115_g1_s0_lives0_dlg1,
[2] = s_gs115_g1_s0_lives0_dlg2,
} },
};
static const struct GroundEventData s_gs115_g0_s0_evts[] = { /* 0x81f3e48 */
/* 0 */ { 57, 3, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 38, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 3, 39, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 3, 39, 0, 0, { 54, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f3e78 */
&s_gs115_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs115_g0_sectors[] = { /* 0x81f3e7c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs115_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs115_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs115_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs115_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs115_g1_sectors[] = { /* 0x81f3f44 */
{ LPARRAY(s_gs115_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs115_groups[] = { /* 0x81f3f6c */
{ LPARRAY(s_gs115_g0_sectors) },
{ LPARRAY(s_gs115_g1_sectors) },
{},
};
static const struct GroundLink s_gs115_links[] = { /* 0x81f3f84 */
/* link 0 */ { { /*x*/ 24, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 9, /*h*/ 5, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs115 = { LPARRAY(s_gs115_groups), s_gs115_links }; /* 0x81f3f8c */

View File

@@ -0,0 +1,374 @@
static const struct ScriptCommand s_gs116_g0_s0_station_sref_script[] = { /* 0x81f3fa0 */
DEBUGINFO,
SELECT_MAP(116),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(107),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs116_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs116_g0_s0_station_sref_script }; /* 0x81f421c */
static const struct ScriptCommand s_gs116_g0_s1_lives0_dlg0[] = { /* 0x81f4228 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g0_s1_lives1_dlg0[] = { /* 0x81f4268 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g0_s3_lives0_dlg0[] = { /* 0x81f42a8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g0_s3_lives1_dlg0[] = { /* 0x81f42e8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g0_s4_lives0_dlg0[] = { /* 0x81f4328 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g0_s4_lives1_dlg0[] = { /* 0x81f4358 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs116_g1_s0_lives0_dlg1[] = { /* 0x81f4388 */
DEBUGINFO,
{ 0x51, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives0_dlg2[] = { /* 0x81f43b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives1_dlg1[] = { /* 0x81f43d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives1_dlg2[] = { /* 0x81f4408 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives2_dlg1[] = { /* 0x81f4428 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives2_dlg2[] = { /* 0x81f4458 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives3_dlg1[] = { /* 0x81f4478 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives3_dlg2[] = { /* 0x81f44a8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives4_dlg1[] = { /* 0x81f44c8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives4_dlg2[] = { /* 0x81f44f8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives5_dlg1[] = { /* 0x81f4518 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives5_dlg2[] = { /* 0x81f4548 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives6_dlg1[] = { /* 0x81f4568 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives6_dlg2[] = { /* 0x81f4598 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives7_dlg1[] = { /* 0x81f45b8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives7_dlg2[] = { /* 0x81f45e8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives8_dlg1[] = { /* 0x81f4608 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives8_dlg2[] = { /* 0x81f4638 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives9_dlg1[] = { /* 0x81f4658 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives9_dlg2[] = { /* 0x81f4688 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives10_dlg1[] = { /* 0x81f46a8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives10_dlg2[] = { /* 0x81f46d8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives11_dlg1[] = { /* 0x81f46f8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives11_dlg2[] = { /* 0x81f4728 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs116_g1_s0_lives12_dlg1[] = { /* 0x81f4748 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs116_g1_s0_lives12_dlg2[] = { /* 0x81f4778 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs116_g0_s1_lives[] = { /* 0x81f4798 */
/* 0 */ { 0, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs116_g0_s3_lives[] = { /* 0x81f47c8 */
/* 0 */ { 0, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs116_g0_s4_lives[] = { /* 0x81f47f8 */
/* 0 */ { 0, 0, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs116_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs116_g1_s0_lives[] = { /* 0x81f4828 */
/* 0 */ { 14, 0, 0, 0, { 18, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives0_dlg1,
[2] = s_gs116_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 40, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives1_dlg1,
[2] = s_gs116_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 12, 37, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives2_dlg1,
[2] = s_gs116_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 46, 37, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives3_dlg1,
[2] = s_gs116_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 7, 32, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives4_dlg1,
[2] = s_gs116_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 51, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives5_dlg1,
[2] = s_gs116_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 15, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives6_dlg1,
[2] = s_gs116_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 42, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives7_dlg1,
[2] = s_gs116_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 9, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives8_dlg1,
[2] = s_gs116_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 48, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives9_dlg1,
[2] = s_gs116_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 17, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives10_dlg1,
[2] = s_gs116_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 37, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives11_dlg1,
[2] = s_gs116_g1_s0_lives11_dlg2,
} },
/* 12 */ { 26, 0, 0, 0, { 28, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs116_g1_s0_lives12_dlg1,
[2] = s_gs116_g1_s0_lives12_dlg2,
} },
};
static const struct GroundEventData s_gs116_g0_s0_evts[] = { /* 0x81f4960 */
/* 0 */ { 57, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 56, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f4990 */
&s_gs116_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs116_g0_sectors[] = { /* 0x81f4994 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs116_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs116_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs116_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs116_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs116_g1_sectors[] = { /* 0x81f4a5c */
{ LPARRAY(s_gs116_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs116_groups[] = { /* 0x81f4a84 */
{ LPARRAY(s_gs116_g0_sectors) },
{ LPARRAY(s_gs116_g1_sectors) },
{},
};
static const struct GroundLink s_gs116_links[] = { /* 0x81f4a9c */
/* link 0 */ { { /*x*/ 25, /*y*/ 13, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 35, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 14, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 45, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 6, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 39, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 12, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 48, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 3, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 42, /*y*/ 33, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 9, /*y*/ 33, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 36, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 12 */ { { /*x*/ 15, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs116 = { LPARRAY(s_gs116_groups), s_gs116_links }; /* 0x81f4b04 */

View File

@@ -0,0 +1,357 @@
static const struct ScriptCommand s_gs117_g0_s0_station_sref_script[] = { /* 0x81f4b18 */
DEBUGINFO,
SELECT_MAP(117),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(107),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs117_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs117_g0_s0_station_sref_script }; /* 0x81f4d94 */
static const struct ScriptCommand s_gs117_g0_s1_lives0_dlg0[] = { /* 0x81f4da0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g0_s1_lives1_dlg0[] = { /* 0x81f4de0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g0_s3_lives0_dlg0[] = { /* 0x81f4e20 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g0_s3_lives1_dlg0[] = { /* 0x81f4e60 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g0_s4_lives0_dlg0[] = { /* 0x81f4ea0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g0_s4_lives1_dlg0[] = { /* 0x81f4ed0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs117_g1_s0_lives0_dlg1[] = { /* 0x81f4f00 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives0_dlg2[] = { /* 0x81f4f30 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives1_dlg1[] = { /* 0x81f4f50 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives1_dlg2[] = { /* 0x81f4f80 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives2_dlg1[] = { /* 0x81f4fa0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives2_dlg2[] = { /* 0x81f4fd0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives3_dlg1[] = { /* 0x81f4ff0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives3_dlg2[] = { /* 0x81f5020 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives4_dlg1[] = { /* 0x81f5040 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives4_dlg2[] = { /* 0x81f5070 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives5_dlg1[] = { /* 0x81f5090 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives5_dlg2[] = { /* 0x81f50c0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives6_dlg1[] = { /* 0x81f50e0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives6_dlg2[] = { /* 0x81f5110 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives7_dlg1[] = { /* 0x81f5130 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives7_dlg2[] = { /* 0x81f5160 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives8_dlg1[] = { /* 0x81f5180 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives8_dlg2[] = { /* 0x81f51b0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives9_dlg1[] = { /* 0x81f51d0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives9_dlg2[] = { /* 0x81f5200 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives10_dlg1[] = { /* 0x81f5220 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives10_dlg2[] = { /* 0x81f5250 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs117_g1_s0_lives11_dlg1[] = { /* 0x81f5270 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs117_g1_s0_lives11_dlg2[] = { /* 0x81f52a0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs117_g0_s1_lives[] = { /* 0x81f52c0 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs117_g0_s3_lives[] = { /* 0x81f52f0 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs117_g0_s4_lives[] = { /* 0x81f5320 */
/* 0 */ { 0, 0, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs117_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs117_g1_s0_lives[] = { /* 0x81f5350 */
/* 0 */ { 14, 0, 0, 0, { 30, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives0_dlg1,
[2] = s_gs117_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 20, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives1_dlg1,
[2] = s_gs117_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 40, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives2_dlg1,
[2] = s_gs117_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 13, 34, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives3_dlg1,
[2] = s_gs117_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 47, 34, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives4_dlg1,
[2] = s_gs117_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 11, 27, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives5_dlg1,
[2] = s_gs117_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 50, 27, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives6_dlg1,
[2] = s_gs117_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 20, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives7_dlg1,
[2] = s_gs117_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 40, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives8_dlg1,
[2] = s_gs117_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 30, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives9_dlg1,
[2] = s_gs117_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 26, 18, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives10_dlg1,
[2] = s_gs117_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 34, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs117_g1_s0_lives11_dlg1,
[2] = s_gs117_g1_s0_lives11_dlg2,
} },
};
static const struct GroundEventData s_gs117_g0_s0_evts[] = { /* 0x81f5470 */
/* 0 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 59, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f54a0 */
&s_gs117_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs117_g0_sectors[] = { /* 0x81f54a4 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs117_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs117_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs117_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs117_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs117_g1_sectors[] = { /* 0x81f556c */
{ LPARRAY(s_gs117_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs117_groups[] = { /* 0x81f5594 */
{ LPARRAY(s_gs117_g0_sectors) },
{ LPARRAY(s_gs117_g1_sectors) },
{},
};
static const struct GroundLink s_gs117_links[] = { /* 0x81f55ac */
/* link 0 */ { { /*x*/ 31, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 23, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 27, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 37, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 17, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 47, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 8, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 44, /*y*/ 32, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 10, /*y*/ 32, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 37, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 17, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 27, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs117 = { LPARRAY(s_gs117_groups), s_gs117_links }; /* 0x81f560c */

View File

@@ -0,0 +1,374 @@
static const struct ScriptCommand s_gs118_g0_s0_station_sref_script[] = { /* 0x81f5620 */
DEBUGINFO,
SELECT_MAP(118),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(105),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs118_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs118_g0_s0_station_sref_script }; /* 0x81f589c */
static const struct ScriptCommand s_gs118_g0_s1_lives0_dlg0[] = { /* 0x81f58a8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g0_s1_lives1_dlg0[] = { /* 0x81f58e8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g0_s3_lives0_dlg0[] = { /* 0x81f5928 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g0_s3_lives1_dlg0[] = { /* 0x81f5968 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g0_s4_lives0_dlg0[] = { /* 0x81f59a8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g0_s4_lives1_dlg0[] = { /* 0x81f59d8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs118_g1_s0_lives0_dlg1[] = { /* 0x81f5a08 */
DEBUGINFO,
{ 0x51, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives0_dlg2[] = { /* 0x81f5a38 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives1_dlg1[] = { /* 0x81f5a58 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives1_dlg2[] = { /* 0x81f5a88 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives2_dlg1[] = { /* 0x81f5aa8 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives2_dlg2[] = { /* 0x81f5ad8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives3_dlg1[] = { /* 0x81f5af8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives3_dlg2[] = { /* 0x81f5b28 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives4_dlg1[] = { /* 0x81f5b48 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives4_dlg2[] = { /* 0x81f5b78 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives5_dlg1[] = { /* 0x81f5b98 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives5_dlg2[] = { /* 0x81f5bc8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives6_dlg1[] = { /* 0x81f5be8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives6_dlg2[] = { /* 0x81f5c18 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives7_dlg1[] = { /* 0x81f5c38 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives7_dlg2[] = { /* 0x81f5c68 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives8_dlg1[] = { /* 0x81f5c88 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives8_dlg2[] = { /* 0x81f5cb8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives9_dlg1[] = { /* 0x81f5cd8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives9_dlg2[] = { /* 0x81f5d08 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives10_dlg1[] = { /* 0x81f5d28 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives10_dlg2[] = { /* 0x81f5d58 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives11_dlg1[] = { /* 0x81f5d78 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives11_dlg2[] = { /* 0x81f5da8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs118_g1_s0_lives12_dlg1[] = { /* 0x81f5dc8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs118_g1_s0_lives12_dlg2[] = { /* 0x81f5df8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs118_g0_s1_lives[] = { /* 0x81f5e18 */
/* 0 */ { 0, 4, 0, 0, { 25, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 25, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs118_g0_s3_lives[] = { /* 0x81f5e48 */
/* 0 */ { 0, 4, 0, 0, { 25, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 25, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs118_g0_s4_lives[] = { /* 0x81f5e78 */
/* 0 */ { 0, 0, 0, 0, { 25, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 25, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs118_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs118_g1_s0_lives[] = { /* 0x81f5ea8 */
/* 0 */ { 14, 0, 0, 0, { 18, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives0_dlg1,
[2] = s_gs118_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 33, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives1_dlg1,
[2] = s_gs118_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 14, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives2_dlg1,
[2] = s_gs118_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 36, 34, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives3_dlg1,
[2] = s_gs118_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 7, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives4_dlg1,
[2] = s_gs118_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 44, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives5_dlg1,
[2] = s_gs118_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 15, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives6_dlg1,
[2] = s_gs118_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 36, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives7_dlg1,
[2] = s_gs118_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 21, 20, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives8_dlg1,
[2] = s_gs118_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 30, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives9_dlg1,
[2] = s_gs118_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 12, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives10_dlg1,
[2] = s_gs118_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 40, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives11_dlg1,
[2] = s_gs118_g1_s0_lives11_dlg2,
} },
/* 12 */ { 26, 0, 0, 0, { 25, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs118_g1_s0_lives12_dlg1,
[2] = s_gs118_g1_s0_lives12_dlg2,
} },
};
static const struct GroundEventData s_gs118_g0_s0_evts[] = { /* 0x81f5fe0 */
/* 0 */ { 57, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 56, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f6010 */
&s_gs118_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs118_g0_sectors[] = { /* 0x81f6014 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs118_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs118_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs118_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs118_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs118_g1_sectors[] = { /* 0x81f60dc */
{ LPARRAY(s_gs118_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs118_groups[] = { /* 0x81f6104 */
{ LPARRAY(s_gs118_g0_sectors) },
{ LPARRAY(s_gs118_g1_sectors) },
{},
};
static const struct GroundLink s_gs118_links[] = { /* 0x81f611c */
/* link 0 */ { { /*x*/ 22, /*y*/ 11, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 36, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 9, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 27, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 18, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 33, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 12, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 40, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 5, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 33, /*y*/ 32, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 12, /*y*/ 32, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 30, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 12 */ { { /*x*/ 15, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs118 = { LPARRAY(s_gs118_groups), s_gs118_links }; /* 0x81f6184 */

View File

@@ -0,0 +1,408 @@
static const struct ScriptCommand s_gs119_g0_s0_station_sref_script[] = { /* 0x81f6198 */
DEBUGINFO,
SELECT_MAP(119),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(105),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs119_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs119_g0_s0_station_sref_script }; /* 0x81f6414 */
static const struct ScriptCommand s_gs119_g0_s1_lives0_dlg0[] = { /* 0x81f6420 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g0_s1_lives1_dlg0[] = { /* 0x81f6460 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g0_s3_lives0_dlg0[] = { /* 0x81f64a0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g0_s3_lives1_dlg0[] = { /* 0x81f64e0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g0_s4_lives0_dlg0[] = { /* 0x81f6520 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g0_s4_lives1_dlg0[] = { /* 0x81f6550 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs119_g1_s0_lives0_dlg1[] = { /* 0x81f6580 */
DEBUGINFO,
{ 0x51, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives0_dlg2[] = { /* 0x81f65b0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives1_dlg1[] = { /* 0x81f65d0 */
DEBUGINFO,
{ 0x51, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives1_dlg2[] = { /* 0x81f6600 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives2_dlg1[] = { /* 0x81f6620 */
DEBUGINFO,
{ 0x51, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives2_dlg2[] = { /* 0x81f6650 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives3_dlg1[] = { /* 0x81f6670 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives3_dlg2[] = { /* 0x81f66a0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives4_dlg1[] = { /* 0x81f66c0 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives4_dlg2[] = { /* 0x81f66f0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives5_dlg1[] = { /* 0x81f6710 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives5_dlg2[] = { /* 0x81f6740 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives6_dlg1[] = { /* 0x81f6760 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives6_dlg2[] = { /* 0x81f6790 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives7_dlg1[] = { /* 0x81f67b0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives7_dlg2[] = { /* 0x81f67e0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives8_dlg1[] = { /* 0x81f6800 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives8_dlg2[] = { /* 0x81f6830 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives9_dlg1[] = { /* 0x81f6850 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives9_dlg2[] = { /* 0x81f6880 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives10_dlg1[] = { /* 0x81f68a0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives10_dlg2[] = { /* 0x81f68d0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives11_dlg1[] = { /* 0x81f68f0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives11_dlg2[] = { /* 0x81f6920 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives12_dlg1[] = { /* 0x81f6940 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives12_dlg2[] = { /* 0x81f6970 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives13_dlg1[] = { /* 0x81f6990 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives13_dlg2[] = { /* 0x81f69c0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs119_g1_s0_lives14_dlg1[] = { /* 0x81f69e0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs119_g1_s0_lives14_dlg2[] = { /* 0x81f6a10 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs119_g0_s1_lives[] = { /* 0x81f6a30 */
/* 0 */ { 0, 4, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs119_g0_s3_lives[] = { /* 0x81f6a60 */
/* 0 */ { 0, 4, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs119_g0_s4_lives[] = { /* 0x81f6a90 */
/* 0 */ { 0, 0, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs119_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs119_g1_s0_lives[] = { /* 0x81f6ac0 */
/* 0 */ { 14, 0, 0, 0, { 29, 27, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives0_dlg1,
[2] = s_gs119_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 18, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives1_dlg1,
[2] = s_gs119_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 38, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives2_dlg1,
[2] = s_gs119_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 15, 35, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives3_dlg1,
[2] = s_gs119_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 41, 34, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives4_dlg1,
[2] = s_gs119_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 10, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives5_dlg1,
[2] = s_gs119_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 48, 29, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives6_dlg1,
[2] = s_gs119_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 20, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives7_dlg1,
[2] = s_gs119_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 37, 23, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives8_dlg1,
[2] = s_gs119_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 29, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives9_dlg1,
[2] = s_gs119_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 43, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives10_dlg1,
[2] = s_gs119_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 11, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives11_dlg1,
[2] = s_gs119_g1_s0_lives11_dlg2,
} },
/* 12 */ { 26, 0, 0, 0, { 29, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives12_dlg1,
[2] = s_gs119_g1_s0_lives12_dlg2,
} },
/* 13 */ { 27, 0, 0, 0, { 20, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives13_dlg1,
[2] = s_gs119_g1_s0_lives13_dlg2,
} },
/* 14 */ { 28, 0, 0, 0, { 39, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs119_g1_s0_lives14_dlg1,
[2] = s_gs119_g1_s0_lives14_dlg2,
} },
};
static const struct GroundEventData s_gs119_g0_s0_evts[] = { /* 0x81f6c28 */
/* 0 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 40, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 59, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f6c58 */
&s_gs119_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs119_g0_sectors[] = { /* 0x81f6c5c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs119_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs119_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs119_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs119_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs119_g1_sectors[] = { /* 0x81f6d24 */
{ LPARRAY(s_gs119_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs119_groups[] = { /* 0x81f6d4c */
{ LPARRAY(s_gs119_g0_sectors) },
{ LPARRAY(s_gs119_g1_sectors) },
{},
};
static const struct GroundLink s_gs119_links[] = { /* 0x81f6d64 */
/* link 0 */ { { /*x*/ 36, /*y*/ 11, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 26, /*y*/ 13, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 17, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 40, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 8, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 26, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 34, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 18, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 44, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 7, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 38, /*y*/ 33, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 13, /*y*/ 33, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 12 */ { { /*x*/ 35, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 13 */ { { /*x*/ 16, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 14 */ { { /*x*/ 26, /*y*/ 25, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs119 = { LPARRAY(s_gs119_groups), s_gs119_links }; /* 0x81f6ddc */

View File

@@ -0,0 +1,323 @@
static const struct ScriptCommand s_gs120_g0_s0_station_sref_script[] = { /* 0x81f6df0 */
DEBUGINFO,
SELECT_MAP(120),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(107),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs120_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs120_g0_s0_station_sref_script }; /* 0x81f706c */
static const struct ScriptCommand s_gs120_g0_s1_lives0_dlg0[] = { /* 0x81f7078 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g0_s1_lives1_dlg0[] = { /* 0x81f70b8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g0_s3_lives0_dlg0[] = { /* 0x81f70f8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g0_s3_lives1_dlg0[] = { /* 0x81f7138 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g0_s4_lives0_dlg0[] = { /* 0x81f7178 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g0_s4_lives1_dlg0[] = { /* 0x81f71a8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs120_g1_s0_lives0_dlg1[] = { /* 0x81f71d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives0_dlg2[] = { /* 0x81f7208 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives1_dlg1[] = { /* 0x81f7228 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives1_dlg2[] = { /* 0x81f7258 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives2_dlg1[] = { /* 0x81f7278 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives2_dlg2[] = { /* 0x81f72a8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives3_dlg1[] = { /* 0x81f72c8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives3_dlg2[] = { /* 0x81f72f8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives4_dlg1[] = { /* 0x81f7318 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives4_dlg2[] = { /* 0x81f7348 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives5_dlg1[] = { /* 0x81f7368 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives5_dlg2[] = { /* 0x81f7398 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives6_dlg1[] = { /* 0x81f73b8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives6_dlg2[] = { /* 0x81f73e8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives7_dlg1[] = { /* 0x81f7408 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives7_dlg2[] = { /* 0x81f7438 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives8_dlg1[] = { /* 0x81f7458 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives8_dlg2[] = { /* 0x81f7488 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs120_g1_s0_lives9_dlg1[] = { /* 0x81f74a8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs120_g1_s0_lives9_dlg2[] = { /* 0x81f74d8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs120_g0_s1_lives[] = { /* 0x81f74f8 */
/* 0 */ { 0, 4, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs120_g0_s3_lives[] = { /* 0x81f7528 */
/* 0 */ { 0, 4, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs120_g0_s4_lives[] = { /* 0x81f7558 */
/* 0 */ { 0, 0, 0, 0, { 28, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 28, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs120_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs120_g1_s0_lives[] = { /* 0x81f7588 */
/* 0 */ { 14, 0, 0, 0, { 28, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives0_dlg1,
[2] = s_gs120_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 19, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives1_dlg1,
[2] = s_gs120_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 37, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives2_dlg1,
[2] = s_gs120_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 13, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives3_dlg1,
[2] = s_gs120_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 43, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives4_dlg1,
[2] = s_gs120_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 18, 20, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives5_dlg1,
[2] = s_gs120_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 36, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives6_dlg1,
[2] = s_gs120_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 11, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives7_dlg1,
[2] = s_gs120_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 45, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives8_dlg1,
[2] = s_gs120_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 28, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs120_g1_s0_lives9_dlg1,
[2] = s_gs120_g1_s0_lives9_dlg2,
} },
};
static const struct GroundEventData s_gs120_g0_s0_evts[] = { /* 0x81f7678 */
/* 0 */ { 57, 3, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 39, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 3, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 3, 42, 0, 0, { 54, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f76a8 */
&s_gs120_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs120_g0_sectors[] = { /* 0x81f76ac */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs120_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs120_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs120_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs120_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs120_g1_sectors[] = { /* 0x81f7774 */
{ LPARRAY(s_gs120_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs120_groups[] = { /* 0x81f779c */
{ LPARRAY(s_gs120_g0_sectors) },
{ LPARRAY(s_gs120_g1_sectors) },
{},
};
static const struct GroundLink s_gs120_links[] = { /* 0x81f77b4 */
/* link 0 */ { { /*x*/ 25, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 16, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 34, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 10, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 40, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 16, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 34, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 8, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 42, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 25, /*y*/ 16, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs120 = { LPARRAY(s_gs120_groups), s_gs120_links }; /* 0x81f7804 */

View File

@@ -0,0 +1,204 @@
static const struct ScriptCommand s_gs121_g0_s0_station_sref_script[] = { /* 0x81f7818 */
DEBUGINFO,
SELECT_MAP(121),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(107),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs121_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs121_g0_s0_station_sref_script }; /* 0x81f7a94 */
static const struct ScriptCommand s_gs121_g0_s1_lives0_dlg0[] = { /* 0x81f7aa0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g0_s1_lives1_dlg0[] = { /* 0x81f7ae0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g0_s3_lives0_dlg0[] = { /* 0x81f7b20 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g0_s3_lives1_dlg0[] = { /* 0x81f7b60 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g0_s4_lives0_dlg0[] = { /* 0x81f7ba0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g0_s4_lives1_dlg0[] = { /* 0x81f7bd0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs121_g1_s0_lives0_dlg1[] = { /* 0x81f7c00 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs121_g1_s0_lives0_dlg2[] = { /* 0x81f7c30 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs121_g1_s0_lives1_dlg1[] = { /* 0x81f7c50 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs121_g1_s0_lives1_dlg2[] = { /* 0x81f7c80 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs121_g1_s0_lives2_dlg1[] = { /* 0x81f7ca0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs121_g1_s0_lives2_dlg2[] = { /* 0x81f7cd0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs121_g0_s1_lives[] = { /* 0x81f7cf0 */
/* 0 */ { 0, 4, 0, 0, { 18, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 18, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs121_g0_s3_lives[] = { /* 0x81f7d20 */
/* 0 */ { 0, 4, 0, 0, { 18, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 18, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs121_g0_s4_lives[] = { /* 0x81f7d50 */
/* 0 */ { 0, 0, 0, 0, { 18, 31, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 18, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs121_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs121_g1_s0_lives[] = { /* 0x81f7d80 */
/* 0 */ { 14, 0, 0, 0, { 30, 23, 0, CPOS_HALFTILE }, {
[1] = s_gs121_g1_s0_lives0_dlg1,
[2] = s_gs121_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 10, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs121_g1_s0_lives1_dlg1,
[2] = s_gs121_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 51, 16, 0, CPOS_HALFTILE }, {
[1] = s_gs121_g1_s0_lives2_dlg1,
[2] = s_gs121_g1_s0_lives2_dlg2,
} },
};
static const struct GroundEventData s_gs121_g0_s0_evts[] = { /* 0x81f7dc8 */
/* 0 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 38, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 39, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 39, 0, 0, { 59, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f7df8 */
&s_gs121_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs121_g0_sectors[] = { /* 0x81f7dfc */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs121_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs121_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs121_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs121_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs121_g1_sectors[] = { /* 0x81f7ec4 */
{ LPARRAY(s_gs121_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs121_groups[] = { /* 0x81f7eec */
{ LPARRAY(s_gs121_g0_sectors) },
{ LPARRAY(s_gs121_g1_sectors) },
{},
};
static const struct GroundLink s_gs121_links[] = { /* 0x81f7f04 */
/* link 0 */ { { /*x*/ 27, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 7, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 48, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs121 = { LPARRAY(s_gs121_groups), s_gs121_links }; /* 0x81f7f1c */

View File

@@ -0,0 +1,391 @@
static const struct ScriptCommand s_gs122_g0_s0_station_sref_script[] = { /* 0x81f7f30 */
DEBUGINFO,
SELECT_MAP(122),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs122_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs122_g0_s0_station_sref_script }; /* 0x81f81ac */
static const struct ScriptCommand s_gs122_g0_s1_lives0_dlg0[] = { /* 0x81f81b8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g0_s1_lives1_dlg0[] = { /* 0x81f81f8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g0_s3_lives0_dlg0[] = { /* 0x81f8238 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g0_s3_lives1_dlg0[] = { /* 0x81f8278 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g0_s4_lives0_dlg0[] = { /* 0x81f82b8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g0_s4_lives1_dlg0[] = { /* 0x81f82e8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs122_g1_s0_lives0_dlg1[] = { /* 0x81f8318 */
DEBUGINFO,
{ 0x51, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives0_dlg2[] = { /* 0x81f8348 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives1_dlg1[] = { /* 0x81f8368 */
DEBUGINFO,
{ 0x51, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives1_dlg2[] = { /* 0x81f8398 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives2_dlg1[] = { /* 0x81f83b8 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives2_dlg2[] = { /* 0x81f83e8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives3_dlg1[] = { /* 0x81f8408 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives3_dlg2[] = { /* 0x81f8438 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives4_dlg1[] = { /* 0x81f8458 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives4_dlg2[] = { /* 0x81f8488 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives5_dlg1[] = { /* 0x81f84a8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives5_dlg2[] = { /* 0x81f84d8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives6_dlg1[] = { /* 0x81f84f8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives6_dlg2[] = { /* 0x81f8528 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives7_dlg1[] = { /* 0x81f8548 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives7_dlg2[] = { /* 0x81f8578 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives8_dlg1[] = { /* 0x81f8598 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives8_dlg2[] = { /* 0x81f85c8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives9_dlg1[] = { /* 0x81f85e8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives9_dlg2[] = { /* 0x81f8618 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives10_dlg1[] = { /* 0x81f8638 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives10_dlg2[] = { /* 0x81f8668 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives11_dlg1[] = { /* 0x81f8688 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives11_dlg2[] = { /* 0x81f86b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives12_dlg1[] = { /* 0x81f86d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives12_dlg2[] = { /* 0x81f8708 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs122_g1_s0_lives13_dlg1[] = { /* 0x81f8728 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs122_g1_s0_lives13_dlg2[] = { /* 0x81f8758 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs122_g0_s1_lives[] = { /* 0x81f8778 */
/* 0 */ { 0, 4, 0, 0, { 29, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs122_g0_s3_lives[] = { /* 0x81f87a8 */
/* 0 */ { 0, 4, 0, 0, { 29, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs122_g0_s4_lives[] = { /* 0x81f87d8 */
/* 0 */ { 0, 0, 0, 0, { 29, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs122_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs122_g1_s0_lives[] = { /* 0x81f8808 */
/* 0 */ { 14, 0, 0, 0, { 22, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives0_dlg1,
[2] = s_gs122_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 35, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives1_dlg1,
[2] = s_gs122_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 17, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives2_dlg1,
[2] = s_gs122_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 40, 27, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives3_dlg1,
[2] = s_gs122_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 11, 30, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives4_dlg1,
[2] = s_gs122_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 48, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives5_dlg1,
[2] = s_gs122_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 7, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives6_dlg1,
[2] = s_gs122_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 49, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives7_dlg1,
[2] = s_gs122_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 13, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives8_dlg1,
[2] = s_gs122_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 44, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives9_dlg1,
[2] = s_gs122_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 14, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives10_dlg1,
[2] = s_gs122_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 43, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives11_dlg1,
[2] = s_gs122_g1_s0_lives11_dlg2,
} },
/* 12 */ { 26, 0, 0, 0, { 19, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives12_dlg1,
[2] = s_gs122_g1_s0_lives12_dlg2,
} },
/* 13 */ { 27, 0, 0, 0, { 39, 14, 0, CPOS_HALFTILE }, {
[1] = s_gs122_g1_s0_lives13_dlg1,
[2] = s_gs122_g1_s0_lives13_dlg2,
} },
};
static const struct GroundEventData s_gs122_g0_s0_evts[] = { /* 0x81f8958 */
/* 0 */ { 57, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 38, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 39, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 39, 0, 0, { 54, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f8988 */
&s_gs122_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs122_g0_sectors[] = { /* 0x81f898c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs122_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs122_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs122_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs122_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs122_g1_sectors[] = { /* 0x81f8a54 */
{ LPARRAY(s_gs122_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs122_groups[] = { /* 0x81f8a7c */
{ LPARRAY(s_gs122_g0_sectors) },
{ LPARRAY(s_gs122_g1_sectors) },
{},
};
static const struct GroundLink s_gs122_links[] = { /* 0x81f8a94 */
/* link 0 */ { { /*x*/ 35, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 16, /*y*/ 12, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 41, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 10, /*y*/ 14, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 41, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 10, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 47, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 4, /*y*/ 22, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 44, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 8, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 38, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 14, /*y*/ 26, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 12 */ { { /*x*/ 32, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 13 */ { { /*x*/ 20, /*y*/ 28, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs122 = { LPARRAY(s_gs122_groups), s_gs122_links }; /* 0x81f8b04 */

View File

@@ -0,0 +1,355 @@
static const struct ScriptCommand s_gs123_g0_s0_station_sref_script[] = { /* 0x81f8b18 */
DEBUGINFO,
SELECT_MAP(123),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs123_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs123_g0_s0_station_sref_script }; /* 0x81f8d94 */
static const struct ScriptCommand s_gs123_g0_s1_lives0_dlg0[] = { /* 0x81f8da0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g0_s1_lives1_dlg0[] = { /* 0x81f8de0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g0_s3_lives0_dlg0[] = { /* 0x81f8e20 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g0_s3_lives1_dlg0[] = { /* 0x81f8e60 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g0_s4_lives0_dlg0[] = { /* 0x81f8ea0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g0_s4_lives1_dlg0[] = { /* 0x81f8ed0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs123_g1_s0_lives0_dlg1[] = { /* 0x81f8f00 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives0_dlg2[] = { /* 0x81f8f30 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives1_dlg1[] = { /* 0x81f8f50 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives1_dlg2[] = { /* 0x81f8f80 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives2_dlg1[] = { /* 0x81f8fa0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives2_dlg2[] = { /* 0x81f8fd0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives3_dlg1[] = { /* 0x81f8ff0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives3_dlg2[] = { /* 0x81f9020 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives4_dlg1[] = { /* 0x81f9040 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives4_dlg2[] = { /* 0x81f9070 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives5_dlg1[] = { /* 0x81f9090 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives5_dlg2[] = { /* 0x81f90c0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives6_dlg1[] = { /* 0x81f90e0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives6_dlg2[] = { /* 0x81f9110 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives7_dlg1[] = { /* 0x81f9130 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives7_dlg2[] = { /* 0x81f9160 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives8_dlg1[] = { /* 0x81f9180 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives8_dlg2[] = { /* 0x81f91b0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives9_dlg1[] = { /* 0x81f91d0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives9_dlg2[] = { /* 0x81f9200 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives10_dlg1[] = { /* 0x81f9220 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives10_dlg2[] = { /* 0x81f9250 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs123_g1_s0_lives11_dlg1[] = { /* 0x81f9270 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs123_g1_s0_lives11_dlg2[] = { /* 0x81f92a0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs123_g0_s1_lives[] = { /* 0x81f92c0 */
/* 0 */ { 0, 4, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs123_g0_s3_lives[] = { /* 0x81f92f0 */
/* 0 */ { 0, 4, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs123_g0_s4_lives[] = { /* 0x81f9320 */
/* 0 */ { 0, 0, 0, 0, { 29, 34, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 37, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs123_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs123_g1_s0_lives[] = { /* 0x81f9350 */
/* 0 */ { 14, 0, 0, 0, { 28, 9, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives0_dlg1,
[2] = s_gs123_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 23, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives1_dlg1,
[2] = s_gs123_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 33, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives2_dlg1,
[2] = s_gs123_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 28, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives3_dlg1,
[2] = s_gs123_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 19, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives4_dlg1,
[2] = s_gs123_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 39, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives5_dlg1,
[2] = s_gs123_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 7, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives6_dlg1,
[2] = s_gs123_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 50, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives7_dlg1,
[2] = s_gs123_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 13, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives8_dlg1,
[2] = s_gs123_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 45, 17, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives9_dlg1,
[2] = s_gs123_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 14, 12, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives10_dlg1,
[2] = s_gs123_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 42, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs123_g1_s0_lives11_dlg1,
[2] = s_gs123_g1_s0_lives11_dlg2,
} },
};
static const struct GroundEventData s_gs123_g0_s0_evts[] = { /* 0x81f9470 */
/* 0 */ { 60, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 60, 1, 0, 0, { 0, 38, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f9488 */
&s_gs123_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs123_g0_sectors[] = { /* 0x81f948c */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs123_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs123_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs123_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs123_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs123_g1_sectors[] = { /* 0x81f9554 */
{ LPARRAY(s_gs123_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs123_groups[] = { /* 0x81f957c */
{ LPARRAY(s_gs123_g0_sectors) },
{ LPARRAY(s_gs123_g1_sectors) },
{},
};
static const struct GroundLink s_gs123_links[] = { /* 0x81f9594 */
/* link 0 */ { { /*x*/ 39, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 11, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 41, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 10, /*y*/ 15, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 48, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 3, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 35, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 16, /*y*/ 20, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 25, /*y*/ 23, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 31, /*y*/ 7, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 19, /*y*/ 7, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 25, /*y*/ 7, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs123 = { LPARRAY(s_gs123_groups), s_gs123_links }; /* 0x81f95f4 */

View File

@@ -0,0 +1,303 @@
static const struct ScriptCommand s_gs124_g0_s0_station_sref_script[] = { /* 0x81f9608 */
DEBUGINFO,
SELECT_MAP(124),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs124_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs124_g0_s0_station_sref_script }; /* 0x81f9884 */
static const struct ScriptCommand s_gs124_g0_s1_lives0_dlg0[] = { /* 0x81f9890 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g0_s1_lives1_dlg0[] = { /* 0x81f98d0 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g0_s3_lives0_dlg0[] = { /* 0x81f9910 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g0_s3_lives1_dlg0[] = { /* 0x81f9950 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g0_s4_lives0_dlg0[] = { /* 0x81f9990 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g0_s4_lives1_dlg0[] = { /* 0x81f99c0 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs124_g1_s0_lives0_dlg1[] = { /* 0x81f99f0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives0_dlg2[] = { /* 0x81f9a20 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives1_dlg1[] = { /* 0x81f9a40 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives1_dlg2[] = { /* 0x81f9a70 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives2_dlg1[] = { /* 0x81f9a90 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives2_dlg2[] = { /* 0x81f9ac0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives3_dlg1[] = { /* 0x81f9ae0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives3_dlg2[] = { /* 0x81f9b10 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives4_dlg1[] = { /* 0x81f9b30 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives4_dlg2[] = { /* 0x81f9b60 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives5_dlg1[] = { /* 0x81f9b80 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives5_dlg2[] = { /* 0x81f9bb0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives6_dlg1[] = { /* 0x81f9bd0 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives6_dlg2[] = { /* 0x81f9c00 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives7_dlg1[] = { /* 0x81f9c20 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives7_dlg2[] = { /* 0x81f9c50 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs124_g1_s0_lives8_dlg1[] = { /* 0x81f9c70 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs124_g1_s0_lives8_dlg2[] = { /* 0x81f9ca0 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs124_g0_s1_lives[] = { /* 0x81f9cc0 */
/* 0 */ { 0, 4, 0, 0, { 30, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs124_g0_s3_lives[] = { /* 0x81f9cf0 */
/* 0 */ { 0, 4, 0, 0, { 30, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs124_g0_s4_lives[] = { /* 0x81f9d20 */
/* 0 */ { 0, 0, 0, 0, { 30, 32, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs124_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs124_g1_s0_lives[] = { /* 0x81f9d50 */
/* 0 */ { 14, 0, 0, 0, { 27, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives0_dlg1,
[2] = s_gs124_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 33, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives1_dlg1,
[2] = s_gs124_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 22, 32, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives2_dlg1,
[2] = s_gs124_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 38, 32, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives3_dlg1,
[2] = s_gs124_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 18, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives4_dlg1,
[2] = s_gs124_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 42, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives5_dlg1,
[2] = s_gs124_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 24, 20, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives6_dlg1,
[2] = s_gs124_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 36, 20, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives7_dlg1,
[2] = s_gs124_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 30, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs124_g1_s0_lives8_dlg1,
[2] = s_gs124_g1_s0_lives8_dlg2,
} },
};
static const struct GroundEventData s_gs124_g0_s0_evts[] = { /* 0x81f9e28 */
/* 0 */ { 60, 1, 0, 0, { 1, 38, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81f9e34 */
&s_gs124_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs124_g0_sectors[] = { /* 0x81f9e38 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs124_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs124_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs124_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs124_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs124_g1_sectors[] = { /* 0x81f9f00 */
{ LPARRAY(s_gs124_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs124_groups[] = { /* 0x81f9f28 */
{ LPARRAY(s_gs124_g0_sectors) },
{ LPARRAY(s_gs124_g1_sectors) },
{},
};
static const struct GroundLink s_gs124_links[] = { /* 0x81f9f40 */
/* link 0 */ { { /*x*/ 27, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 33, /*y*/ 18, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 21, /*y*/ 18, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 39, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 15, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 35, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 19, /*y*/ 30, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 30, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 24, /*y*/ 24, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs124 = { LPARRAY(s_gs124_groups), s_gs124_links }; /* 0x81f9f88 */

View File

@@ -0,0 +1,422 @@
static const struct ScriptCommand s_gs125_g0_s0_station_sref_script[] = { /* 0x81f9f9c */
DEBUGINFO,
SELECT_MAP(125),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs125_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs125_g0_s0_station_sref_script }; /* 0x81fa218 */
static const struct ScriptCommand s_gs125_g0_s1_lives0_dlg0[] = { /* 0x81fa224 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g0_s1_lives1_dlg0[] = { /* 0x81fa264 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g0_s3_lives0_dlg0[] = { /* 0x81fa2a4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g0_s3_lives1_dlg0[] = { /* 0x81fa2e4 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g0_s4_lives0_dlg0[] = { /* 0x81fa324 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g0_s4_lives1_dlg0[] = { /* 0x81fa354 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs125_g1_s0_lives0_dlg1[] = { /* 0x81fa384 */
DEBUGINFO,
{ 0x51, 0x00, 0x000f, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives0_dlg2[] = { /* 0x81fa3b4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives1_dlg1[] = { /* 0x81fa3d4 */
DEBUGINFO,
{ 0x51, 0x00, 0x000e, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives1_dlg2[] = { /* 0x81fa404 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives2_dlg1[] = { /* 0x81fa424 */
DEBUGINFO,
{ 0x51, 0x00, 0x000d, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives2_dlg2[] = { /* 0x81fa454 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives3_dlg1[] = { /* 0x81fa474 */
DEBUGINFO,
{ 0x51, 0x00, 0x000c, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives3_dlg2[] = { /* 0x81fa4a4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives4_dlg1[] = { /* 0x81fa4c4 */
DEBUGINFO,
{ 0x51, 0x00, 0x000b, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives4_dlg2[] = { /* 0x81fa4f4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives5_dlg1[] = { /* 0x81fa514 */
DEBUGINFO,
{ 0x51, 0x00, 0x000a, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives5_dlg2[] = { /* 0x81fa544 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives6_dlg1[] = { /* 0x81fa564 */
DEBUGINFO,
{ 0x51, 0x00, 0x0009, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives6_dlg2[] = { /* 0x81fa594 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives7_dlg1[] = { /* 0x81fa5b4 */
DEBUGINFO,
{ 0x51, 0x00, 0x0008, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives7_dlg2[] = { /* 0x81fa5e4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives8_dlg1[] = { /* 0x81fa604 */
DEBUGINFO,
{ 0x51, 0x00, 0x0007, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives8_dlg2[] = { /* 0x81fa634 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives9_dlg1[] = { /* 0x81fa654 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives9_dlg2[] = { /* 0x81fa684 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives10_dlg1[] = { /* 0x81fa6a4 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives10_dlg2[] = { /* 0x81fa6d4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives11_dlg1[] = { /* 0x81fa6f4 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives11_dlg2[] = { /* 0x81fa724 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives12_dlg1[] = { /* 0x81fa744 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives12_dlg2[] = { /* 0x81fa774 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives13_dlg1[] = { /* 0x81fa794 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives13_dlg2[] = { /* 0x81fa7c4 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives14_dlg1[] = { /* 0x81fa7e4 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives14_dlg2[] = { /* 0x81fa814 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs125_g1_s0_lives15_dlg1[] = { /* 0x81fa834 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs125_g1_s0_lives15_dlg2[] = { /* 0x81fa864 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs125_g0_s1_lives[] = { /* 0x81fa884 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs125_g0_s3_lives[] = { /* 0x81fa8b4 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs125_g0_s4_lives[] = { /* 0x81fa8e4 */
/* 0 */ { 0, 0, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs125_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs125_g1_s0_lives[] = { /* 0x81fa914 */
/* 0 */ { 14, 0, 0, 0, { 30, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives0_dlg1,
[2] = s_gs125_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 25, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives1_dlg1,
[2] = s_gs125_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 35, 33, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives2_dlg1,
[2] = s_gs125_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 21, 36, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives3_dlg1,
[2] = s_gs125_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 39, 36, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives4_dlg1,
[2] = s_gs125_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 19, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives5_dlg1,
[2] = s_gs125_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 41, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives6_dlg1,
[2] = s_gs125_g1_s0_lives6_dlg2,
} },
/* 7 */ { 21, 0, 0, 0, { 25, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives7_dlg1,
[2] = s_gs125_g1_s0_lives7_dlg2,
} },
/* 8 */ { 22, 0, 0, 0, { 35, 28, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives8_dlg1,
[2] = s_gs125_g1_s0_lives8_dlg2,
} },
/* 9 */ { 23, 0, 0, 0, { 30, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives9_dlg1,
[2] = s_gs125_g1_s0_lives9_dlg2,
} },
/* 10 */ { 24, 0, 0, 0, { 21, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives10_dlg1,
[2] = s_gs125_g1_s0_lives10_dlg2,
} },
/* 11 */ { 25, 0, 0, 0, { 39, 26, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives11_dlg1,
[2] = s_gs125_g1_s0_lives11_dlg2,
} },
/* 12 */ { 26, 0, 0, 0, { 27, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives12_dlg1,
[2] = s_gs125_g1_s0_lives12_dlg2,
} },
/* 13 */ { 27, 0, 0, 0, { 33, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives13_dlg1,
[2] = s_gs125_g1_s0_lives13_dlg2,
} },
/* 14 */ { 28, 0, 0, 0, { 21, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives14_dlg1,
[2] = s_gs125_g1_s0_lives14_dlg2,
} },
/* 15 */ { 29, 0, 0, 0, { 39, 22, 0, CPOS_HALFTILE }, {
[1] = s_gs125_g1_s0_lives15_dlg1,
[2] = s_gs125_g1_s0_lives15_dlg2,
} },
};
static const struct GroundEventData s_gs125_g0_s0_evts[] = { /* 0x81faa94 */
/* 0 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81faaa0 */
&s_gs125_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs125_g0_sectors[] = { /* 0x81faaa4 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs125_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs125_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs125_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs125_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs125_g1_sectors[] = { /* 0x81fab6c */
{ LPARRAY(s_gs125_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs125_groups[] = { /* 0x81fab94 */
{ LPARRAY(s_gs125_g0_sectors) },
{ LPARRAY(s_gs125_g1_sectors) },
{},
};
static const struct GroundLink s_gs125_links[] = { /* 0x81fabac */
/* link 0 */ { { /*x*/ 37, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 19, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 31, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 25, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 37, /*y*/ 25, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 19, /*y*/ 25, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 28, /*y*/ 25, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 7 */ { { /*x*/ 33, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 8 */ { { /*x*/ 23, /*y*/ 27, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 9 */ { { /*x*/ 39, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 10 */ { { /*x*/ 17, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 11 */ { { /*x*/ 37, /*y*/ 34, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 12 */ { { /*x*/ 19, /*y*/ 34, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 13 */ { { /*x*/ 33, /*y*/ 31, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 14 */ { { /*x*/ 23, /*y*/ 31, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
/* link 15 */ { { /*x*/ 28, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 4, /*h*/ 4, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs125 = { LPARRAY(s_gs125_groups), s_gs125_links }; /* 0x81fac2c */

View File

@@ -0,0 +1,270 @@
static const struct ScriptCommand s_gs126_g0_s0_station_sref_script[] = { /* 0x81fac40 */
DEBUGINFO,
SELECT_MAP(126),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
JUMP_LABEL(0),
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 2),
JUMP_LABEL(3),
LABEL(2), /* = 0x02 */
JUMP_LABEL(3),
LABEL(0), /* = 0x00 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(3),
LABEL(3), /* = 0x03 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(121),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs126_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs126_g0_s0_station_sref_script }; /* 0x81fae8c */
static const struct ScriptCommand s_gs126_g0_s1_lives0_dlg0[] = { /* 0x81fae98 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g0_s1_lives1_dlg0[] = { /* 0x81faed8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g0_s3_lives0_dlg0[] = { /* 0x81faf18 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g0_s3_lives1_dlg0[] = { /* 0x81faf58 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g0_s4_lives0_dlg0[] = { /* 0x81faf98 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g0_s4_lives1_dlg0[] = { /* 0x81fafc8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs126_g1_s0_lives0_dlg1[] = { /* 0x81faff8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0006, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives0_dlg2[] = { /* 0x81fb028 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives1_dlg1[] = { /* 0x81fb048 */
DEBUGINFO,
{ 0x51, 0x00, 0x0005, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives1_dlg2[] = { /* 0x81fb078 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives2_dlg1[] = { /* 0x81fb098 */
DEBUGINFO,
{ 0x51, 0x00, 0x0004, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives2_dlg2[] = { /* 0x81fb0c8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives3_dlg1[] = { /* 0x81fb0e8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0003, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives3_dlg2[] = { /* 0x81fb118 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives4_dlg1[] = { /* 0x81fb138 */
DEBUGINFO,
{ 0x51, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives4_dlg2[] = { /* 0x81fb168 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives5_dlg1[] = { /* 0x81fb188 */
DEBUGINFO,
{ 0x51, 0x00, 0x0001, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives5_dlg2[] = { /* 0x81fb1b8 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct ScriptCommand s_gs126_g1_s0_lives6_dlg1[] = { /* 0x81fb1d8 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs126_g1_s0_lives6_dlg2[] = { /* 0x81fb208 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs126_g0_s1_lives[] = { /* 0x81fb228 */
/* 0 */ { 0, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs126_g0_s3_lives[] = { /* 0x81fb258 */
/* 0 */ { 0, 4, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs126_g0_s4_lives[] = { /* 0x81fb288 */
/* 0 */ { 0, 0, 0, 0, { 29, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 29, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs126_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs126_g1_s0_lives[] = { /* 0x81fb2b8 */
/* 0 */ { 14, 0, 0, 0, { 22, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives0_dlg1,
[2] = s_gs126_g1_s0_lives0_dlg2,
} },
/* 1 */ { 15, 0, 0, 0, { 35, 31, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives1_dlg1,
[2] = s_gs126_g1_s0_lives1_dlg2,
} },
/* 2 */ { 16, 0, 0, 0, { 16, 25, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives2_dlg1,
[2] = s_gs126_g1_s0_lives2_dlg2,
} },
/* 3 */ { 17, 0, 0, 0, { 41, 24, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives3_dlg1,
[2] = s_gs126_g1_s0_lives3_dlg2,
} },
/* 4 */ { 18, 0, 0, 0, { 28, 19, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives4_dlg1,
[2] = s_gs126_g1_s0_lives4_dlg2,
} },
/* 5 */ { 19, 0, 0, 0, { 15, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives5_dlg1,
[2] = s_gs126_g1_s0_lives5_dlg2,
} },
/* 6 */ { 20, 0, 0, 0, { 43, 11, 0, CPOS_HALFTILE }, {
[1] = s_gs126_g1_s0_lives6_dlg1,
[2] = s_gs126_g1_s0_lives6_dlg2,
} },
};
static const struct GroundEventData s_gs126_g0_s0_evts[] = { /* 0x81fb360 */
/* 0 */ { 57, 1, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 57, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 2 */ { 1, 42, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
/* 3 */ { 1, 42, 0, 0, { 56, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81fb390 */
&s_gs126_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs126_g0_sectors[] = { /* 0x81fb394 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs126_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs126_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs126_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs126_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs126_g1_sectors[] = { /* 0x81fb45c */
{ LPARRAY(s_gs126_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs126_groups[] = { /* 0x81fb484 */
{ LPARRAY(s_gs126_g0_sectors) },
{ LPARRAY(s_gs126_g1_sectors) },
{},
};
static const struct GroundLink s_gs126_links[] = { /* 0x81fb49c */
/* link 0 */ { { /*x*/ 40, /*y*/ 8, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 1 */ { { /*x*/ 12, /*y*/ 9, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 2 */ { { /*x*/ 25, /*y*/ 17, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 3 */ { { /*x*/ 38, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 4 */ { { /*x*/ 13, /*y*/ 21, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 5 */ { { /*x*/ 32, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
/* link 6 */ { { /*x*/ 19, /*y*/ 29, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs126 = { LPARRAY(s_gs126_groups), s_gs126_links }; /* 0x81fb4d4 */

View File

@@ -0,0 +1,184 @@
static const struct ScriptCommand s_gs127_g0_s0_station_sref_script[] = { /* 0x81fb4e8 */
DEBUGINFO,
SELECT_MAP(127),
CJUMP_SCENARIO_0(SCENARIO_MAIN),
COND(JUDGE_EQ, 3, /* to label */ 0),
JUMP_LABEL(1),
JUMP_LABEL(2),
LABEL(0), /* = 0x00 */
CJUMP_SCENARIO_1(SCENARIO_MAIN),
COND(JUDGE_LE, 2, /* to label */ 3),
JUMP_LABEL(2),
LABEL(3), /* = 0x03 */
JUMP_LABEL(2),
LABEL(1), /* = 0x01 */
SELECT_ENTITIES(1, 0),
JUMP_LABEL(2),
LABEL(2), /* = 0x02 */
JUMPIF_EQUAL(START_MODE, 1, /* to label */ 4),
JUMPIF_EQUAL(START_MODE, 3, /* to label */ 5),
JUMPIF_EQUAL(START_MODE, 2, /* to label */ 6),
JUMPIF_EQUAL(START_MODE, 9, /* to label */ 6),
JUMP_LABEL(4),
LABEL(6), /* = 0x06 */
CJUMP_VAR(GROUND_GETOUT),
COND_EQUAL(1, /* to label */ 7),
JUMP_LABEL(7),
LABEL(4), /* = 0x04 */
SELECT_LIVES(0, 3),
JUMP_LABEL(8),
LABEL(5), /* = 0x05 */
SELECT_LIVES(0, 4),
JUMP_LABEL(8),
LABEL(7), /* = 0x07 */
SELECT_LIVES(0, 1),
JUMP_LABEL(8),
LABEL(8), /* = 0x08 */
BGM_SWITCH(127),
JUMP_SCRIPT(COMMON_ENTER),
};
static const struct ScriptRef s_gs127_g0_s0_station_sref = { 404, 1, NULL /* ENTER_CONTROL */, s_gs127_g0_s0_station_sref_script }; /* 0x81fb764 */
static const struct ScriptCommand s_gs127_g0_s0_evt1_sref_script[] = { /* 0x81fb770 */
DEBUGINFO,
JUMP_SCRIPT(GETOUT_HABITAT),
};
static const struct ScriptRef s_gs127_g0_s0_evt1_sref = { 358, 2, NULL /* GETOUT_HABITAT */, s_gs127_g0_s0_evt1_sref_script }; /* 0x81fb790 */
static const struct ScriptCommand s_gs127_g0_s0_evt2_sref_script[] = { /* 0x81fb79c */
DEBUGINFO,
JUMP_SCRIPT(GETOUT_HABITAT),
};
static const struct ScriptRef s_gs127_g0_s0_evt2_sref = { 358, 2, NULL /* GETOUT_HABITAT */, s_gs127_g0_s0_evt2_sref_script }; /* 0x81fb7bc */
static const struct ScriptCommand s_gs127_g0_s1_lives0_dlg0[] = { /* 0x81fb7c8 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g0_s1_lives1_dlg0[] = { /* 0x81fb808 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g0_s3_lives0_dlg0[] = { /* 0x81fb848 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g0_s3_lives1_dlg0[] = { /* 0x81fb888 */
DEBUGINFO,
{ 0x54, 0x00, 0x0002, 0x00000000, 0x00000000, NULL },
CALL_SCRIPT(WAIT_START_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g0_s4_lives0_dlg0[] = { /* 0x81fb8c8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g0_s4_lives1_dlg0[] = { /* 0x81fb8f8 */
DEBUGINFO,
CALL_SCRIPT(LIVES_WARP_ARRIVE2_FUNC),
RET,
};
static const struct ScriptCommand s_gs127_g1_s0_lives0_dlg1[] = { /* 0x81fb928 */
DEBUGINFO,
{ 0x51, 0x00, 0x0000, 0x00000000, 0x00000000, NULL },
JUMP_SCRIPT(HABITAT_MOVE1),
};
static const struct ScriptCommand s_gs127_g1_s0_lives0_dlg2[] = { /* 0x81fb958 */
DEBUGINFO,
JUMP_SCRIPT(HABITAT_TALK),
};
static const struct GroundLivesData s_gs127_g0_s1_lives[] = { /* 0x81fb978 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s1_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s1_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs127_g0_s3_lives[] = { /* 0x81fb9a8 */
/* 0 */ { 0, 4, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s3_lives0_dlg0,
} },
/* 1 */ { 4, 4, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s3_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs127_g0_s4_lives[] = { /* 0x81fb9d8 */
/* 0 */ { 0, 0, 0, 0, { 30, 35, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s4_lives0_dlg0,
} },
/* 1 */ { 4, 0, 0, 0, { 30, 38, CPOS_HALFTILE, CPOS_HALFTILE }, {
[0] = s_gs127_g0_s4_lives1_dlg0,
} },
};
static const struct GroundLivesData s_gs127_g1_s0_lives[] = { /* 0x81fba08 */
/* 0 */ { 14, 0, 0, 0, { 30, 21, 0, CPOS_HALFTILE }, {
[1] = s_gs127_g1_s0_lives0_dlg1,
[2] = s_gs127_g1_s0_lives0_dlg2,
} },
};
static const struct GroundEventData s_gs127_g0_s0_evts[] = { /* 0x81fba20 */
/* 0 */ { 60, 1, 0, 0, { 0, 41, 0, 0 }, &gFunctionScriptTable[358] },
/* 1 */ { 3, 42, 0, 0, { 0, 0, 0, 0 }, &s_gs127_g0_s0_evt1_sref },
/* 2 */ { 3, 42, 0, 0, { 57, 0, 0, 0 }, &s_gs127_g0_s0_evt2_sref },
/* 3 */ { 60, 3, 0, 0, { 0, 0, 0, 0 }, &gFunctionScriptTable[358] },
};
static const struct ScriptRef * const (sStationScripts[]) = { /* 0x81fba50 */
&s_gs127_g0_s0_station_sref,
};
static const struct GroundScriptSector s_gs127_g0_sectors[] = { /* 0x81fba54 */
{ 0,NULL, 0,NULL, 0,NULL, LPARRAY(s_gs127_g0_s0_evts), 1,&sStationScripts[0], },
{ LPARRAY(s_gs127_g0_s1_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs127_g0_s3_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
{ LPARRAY(s_gs127_g0_s4_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptSector s_gs127_g1_sectors[] = { /* 0x81fbb1c */
{ LPARRAY(s_gs127_g1_s0_lives), 0,NULL, 0,NULL, 0,NULL, 0,NULL, },
};
static const struct GroundScriptGroup s_gs127_groups[] = { /* 0x81fbb44 */
{ LPARRAY(s_gs127_g0_sectors) },
{ LPARRAY(s_gs127_g1_sectors) },
{},
};
static const struct GroundLink s_gs127_links[] = { /* 0x81fbb5c */
/* link 0 */ { { /*x*/ 27, /*y*/ 19, /*flags*/ 0, 0 }, /*w*/ 6, /*h*/ 6, /*ret*/ 3, /*?*/ 2 },
};
/*extern*/ const struct GroundScriptHeader gGroundScript_gs127 = { LPARRAY(s_gs127_groups), s_gs127_links }; /* 0x81fbb64 */

Some files were not shown because too many files have changed in this diff Show More