216 lines
6.1 KiB
C++
216 lines
6.1 KiB
C++
.set LOCALID_STEVEN, 1
|
|
|
|
GraniteCave_StevensRoom_MapScripts::
|
|
.byte 0
|
|
|
|
GraniteCave_StevensRoom_EventScript_Steven::
|
|
lock
|
|
faceplayer
|
|
msgbox GraniteCave_StevensRoom_Text_ImStevenLetterForMe, MSGBOX_DEFAULT
|
|
//setvar VAR_0x8004, ITEM_LETTER
|
|
//call Common_EventScript_PlayerHandedOverTheItem
|
|
//setflag FLAG_DELIVERED_STEVEN_LETTER
|
|
//msgbox GraniteCave_StevensRoom_Text_ThankYouTakeThis, MSGBOX_DEFAULT
|
|
//giveitem ITEM_TM47
|
|
//call_if_eq VAR_RESULT, FALSE, GraniteCave_StevensRoom_EventScript_BagFull
|
|
//msgbox GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister, MSGBOX_DEFAULT
|
|
//closemessage
|
|
//delay 30
|
|
//playfanfare MUS_REGISTER_MATCH_CALL
|
|
//msgbox GraniteCave_StevensRoom_Text_RegisteredSteven, MSGBOX_DEFAULT
|
|
//waitfanfare
|
|
//closemessage
|
|
//delay 30
|
|
//setflag FLAG_REGISTERED_STEVEN_POKENAV
|
|
//insert own script here
|
|
goto GraniteCave_StevensRoom_EventScript_Colapse
|
|
msgbox GraniteCave_StevensRoom_Text_IveGotToHurryAlong, MSGBOX_DEFAULT
|
|
closemessage
|
|
call_if_eq VAR_FACING, DIR_NORTH, GraniteCave_StevensRoom_EventScript_StevenExitNorth
|
|
call_if_eq VAR_FACING, DIR_SOUTH, GraniteCave_StevensRoom_EventScript_StevenExitSouth
|
|
call_if_eq VAR_FACING, DIR_WEST, GraniteCave_StevensRoom_EventScript_StevenExitWestEast
|
|
call_if_eq VAR_FACING, DIR_EAST, GraniteCave_StevensRoom_EventScript_StevenExitWestEast
|
|
playse SE_EXIT
|
|
removeobject LOCALID_STEVEN
|
|
release
|
|
end
|
|
|
|
GraniteCave_StevensRoom_EventScript_StevenExitNorth::
|
|
applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
|
|
waitmovement 0
|
|
return
|
|
|
|
GraniteCave_StevensRoom_EventScript_StevenExitWestEast::
|
|
applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
|
|
applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
|
|
waitmovement 0
|
|
return
|
|
|
|
GraniteCave_StevensRoom_EventScript_StevenExitSouth::
|
|
applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
|
|
applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExitSouth
|
|
waitmovement 0
|
|
return
|
|
|
|
GraniteCave_StevensRoom_EventScript_BagFull::
|
|
msgbox GraniteCave_StevensRoom_Text_OhBagIsFull, MSGBOX_DEFAULT
|
|
return
|
|
|
|
GraniteCave_StevensRoom_Movement_StevenExit:
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
delay_8
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit:
|
|
delay_16
|
|
delay_16
|
|
delay_16
|
|
walk_in_place_faster_up
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_Movement_StevenExitSouth:
|
|
walk_left
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
walk_right
|
|
walk_up
|
|
walk_up
|
|
delay_8
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_Text_ImStevenLetterForMe:
|
|
.string "My name is STEVEN.\p"
|
|
.string "I'm interested in rare stones,\n"
|
|
.string "so I travel here and there.\p"
|
|
.string "Oh?\n"
|
|
.string "A LETTER for me?$"
|
|
|
|
GraniteCave_StevensRoom_Text_ThankYouTakeThis:
|
|
.string "STEVEN: Thank you.\p"
|
|
.string "You went through all this trouble to\n"
|
|
.string "deliver that. I need to thank you.\p"
|
|
.string "Let me see…\n"
|
|
.string "I'll give you this TM.\p"
|
|
.string "It contains my favorite move,\n"
|
|
.string "STEEL WING.$"
|
|
|
|
GraniteCave_StevensRoom_Text_CouldBecomeChampionLetsRegister:
|
|
.string "STEVEN: Your POKéMON appear quite\n"
|
|
.string "capable.\p"
|
|
.string "If you keep training, you could even\n"
|
|
.string "become the CHAMPION of the POKéMON\l"
|
|
.string "LEAGUE one day. That's what I think.\p"
|
|
.string "I know, since we've gotten to know each\n"
|
|
.string "other, let's register one another in\l"
|
|
.string "our POKéNAVS.\p"
|
|
.string "… … … … … …$"
|
|
|
|
GraniteCave_StevensRoom_Text_RegisteredSteven:
|
|
.string "Registered STEVEN\n"
|
|
.string "in the POKéNAV.$"
|
|
|
|
GraniteCave_StevensRoom_Text_IveGotToHurryAlong:
|
|
.string "Now, I've got to hurry along.$"
|
|
|
|
GraniteCave_StevensRoom_Text_OhBagIsFull:
|
|
.string "Oh, your BAG is full…\n"
|
|
.string "That's too bad, then.$"
|
|
|
|
//Extra
|
|
GraniteCave_StevensRoom_EventScript_Steven_AskForHelp::
|
|
msgbox GraniteCave_StevensRoom_Text_CouldUseSomeHelp, MSGBOX_YESNO
|
|
//goto_if_eq VAR_RESULT, YES, GraniteCave_StevensRoom_EventScript_CouldUseSomeHelp_Yes
|
|
//msgbox GraniteCave_StevensRoom_Text_CouldUseSomeHelp_No, MSGBOX_NPC
|
|
closemessage
|
|
goto GraniteCave_StevensRoom_EventScript_Colapse
|
|
end
|
|
|
|
GraniteCave_StevensRoom_Text_CouldUseSomeHelp:
|
|
.string "While I have you, maybe you could help\n"
|
|
.string "me. Would you mind?$"
|
|
|
|
GraniteCave_StevensRoom_Movement_CheckDoor:
|
|
walk_up
|
|
delay_16
|
|
walk_down
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_Movement_StevenLookAround:
|
|
face_left
|
|
delay_16
|
|
face_right
|
|
delay_16
|
|
face_down
|
|
delay_16
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_Text_AfterFall:
|
|
.string "That was unexpected...\l"
|
|
.string "Looks like that letter will need to wait.\p"
|
|
.string "....................$"
|
|
|
|
GraniteCave_StevensRoom_Text_UseDig:
|
|
.string "I have an idea.\l"
|
|
.string "Baltoy, use dig!$"
|
|
|
|
GraniteCave_StevensRoom_Movement_ReleaseBaltoy:
|
|
face_left
|
|
walk_faster_left
|
|
face_down
|
|
step_end
|
|
|
|
GraniteCave_StevensRoom_EventScript_Colapse::
|
|
lockall
|
|
delay 16
|
|
setvar VAR_0x8004, 0 @ vertical pan
|
|
setvar VAR_0x8005, 2 @ horizontal pan
|
|
setvar VAR_0x8006, 40 @ num shakes
|
|
setvar VAR_0x8007, 4 @ shake delay
|
|
special ShakeCamera
|
|
playse SE_M_EARTHQUAKE
|
|
delay 64
|
|
fadescreen 1 //screen to black
|
|
setobjectxyperm 2, 7, 4 //set rock to location
|
|
removeobject 2
|
|
setflag FLAG_STEVENS_CAVE_ROCK
|
|
clearflag FLAG_STEVENS_CAVE_ROCK
|
|
showobjectat 2, MAP_GRANITE_CAVE_STEVENS_ROOM
|
|
applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_CheckDoor
|
|
waitstate // wait for shake
|
|
waitse
|
|
fadescreen 0 //fade back to normal
|
|
applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenLookAround
|
|
delay 128
|
|
lockall
|
|
faceplayer
|
|
msgbox GraniteCave_StevensRoom_Text_AfterFall, MSGBOX_NPC
|
|
delay 64
|
|
msgbox GraniteCave_StevensRoom_Text_UseDig, MSGBOX_NPC
|
|
delay 32
|
|
fadescreen 3
|
|
//applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_ReleaseBaltoy
|
|
setobjectxyperm 3, 6, 8
|
|
showobjectat 3, MAP_GRANITE_CAVE_STEVENS_ROOM
|
|
addobject 3
|
|
fadescreen 2
|
|
delay 64
|
|
setvar VAR_0x8004, 0 @ vertical pan
|
|
setvar VAR_0x8005, 2 @ horizontal pan
|
|
setvar VAR_0x8006, 30 @ num shakes
|
|
setvar VAR_0x8007, 2 @ shake delay
|
|
special ShakeCamera
|
|
waitstate
|
|
setvar VAR_GRANITECAVE_AGGRON, 0
|
|
releaseall
|
|
warp MAP_GRANITE_CAVE_B3F, 3, 0, 0
|
|
delay 32
|
|
end
|
|
|
|
|
|
|