summaryrefslogtreecommitdiff
path: root/maps/KurtsHouse.asm
diff options
context:
space:
mode:
Diffstat (limited to 'maps/KurtsHouse.asm')
-rw-r--r--maps/KurtsHouse.asm497
1 files changed, 497 insertions, 0 deletions
diff --git a/maps/KurtsHouse.asm b/maps/KurtsHouse.asm
new file mode 100644
index 00000000..df26a5fc
--- /dev/null
+++ b/maps/KurtsHouse.asm
@@ -0,0 +1,497 @@
+ const_def 2 ; object constants
+ const KURTSHOUSE_KURT1
+ const KURTSHOUSE_TWIN1
+ const KURTSHOUSE_SLOWPOKE
+ const KURTSHOUSE_KURT2
+ const KURTSHOUSE_TWIN2
+
+KurtsHouse_MapScripts:
+ db 0 ; scene scripts
+
+ db 1 ; callbacks
+ callback MAPCALLBACK_OBJECTS, .KurtCallback
+
+.KurtCallback:
+ checkevent EVENT_CLEARED_SLOWPOKE_WELL
+ iffalse .Done
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .MakingBalls
+ disappear KURTSHOUSE_KURT2
+ appear KURTSHOUSE_KURT1
+ return
+
+.MakingBalls:
+ disappear KURTSHOUSE_KURT1
+ appear KURTSHOUSE_KURT2
+.Done:
+ return
+
+Kurt1:
+ faceplayer
+ opentext
+ checkevent EVENT_KURT_GAVE_YOU_LURE_BALL
+ iftrue .GotLureBall
+ checkevent EVENT_CLEARED_SLOWPOKE_WELL
+ iftrue .ClearedSlowpokeWell
+ writetext UnknownText_0x18e473
+ waitbutton
+ closetext
+ special FadeOutMusic
+ setevent EVENT_AZALEA_TOWN_SLOWPOKETAIL_ROCKET
+ checkcode VAR_FACING
+ ifequal UP, .RunAround
+ turnobject PLAYER, DOWN
+ playsound SFX_FLY
+ applymovement KURTSHOUSE_KURT1, MovementData_0x18e466
+ playsound SFX_EXIT_BUILDING
+ disappear KURTSHOUSE_KURT1
+ waitsfx
+ special RestartMapMusic
+ end
+
+.RunAround:
+ turnobject PLAYER, DOWN
+ playsound SFX_FLY
+ applymovement KURTSHOUSE_KURT1, MovementData_0x18e46c
+ playsound SFX_EXIT_BUILDING
+ disappear KURTSHOUSE_KURT1
+ waitsfx
+ special RestartMapMusic
+ end
+
+.ClearedSlowpokeWell:
+ writetext UnknownText_0x18e615
+ buttonsound
+ verbosegiveitem LURE_BALL
+ iffalse .NoRoomForBall
+ setevent EVENT_KURT_GAVE_YOU_LURE_BALL
+.GotLureBall:
+ checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
+ iftrue .ThatTurnedOutGreat
+ checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
+ iftrue .WaitForApricorns
+ checkevent EVENT_GAVE_KURT_RED_APRICORN
+ iftrue .GiveLevelBall
+ checkevent EVENT_GAVE_KURT_BLU_APRICORN
+ iftrue .GiveLureBall
+ checkevent EVENT_GAVE_KURT_YLW_APRICORN
+ iftrue .GiveMoonBall
+ checkevent EVENT_GAVE_KURT_GRN_APRICORN
+ iftrue .GiveFriendBall
+ checkevent EVENT_GAVE_KURT_WHT_APRICORN
+ iftrue .GiveFastBall
+ checkevent EVENT_GAVE_KURT_BLK_APRICORN
+ iftrue .GiveHeavyBall
+ checkevent EVENT_GAVE_KURT_PNK_APRICORN
+ iftrue .GiveLoveBall
+ writetext UnknownText_0x18e6c9
+ buttonsound
+.CheckApricorns:
+ checkitem RED_APRICORN
+ iftrue .AskApricorn
+ checkitem BLU_APRICORN
+ iftrue .AskApricorn
+ checkitem YLW_APRICORN
+ iftrue .AskApricorn
+ checkitem GRN_APRICORN
+ iftrue .AskApricorn
+ checkitem WHT_APRICORN
+ iftrue .AskApricorn
+ checkitem BLK_APRICORN
+ iftrue .AskApricorn
+ checkitem PNK_APRICORN
+ iftrue .AskApricorn
+ closetext
+ end
+
+.AskApricorn:
+ writetext UnknownText_0x18e736
+ buttonsound
+ special SelectApricornForKurt
+ ifequal FALSE, .Cancel
+ ifequal BLU_APRICORN, .Blu
+ ifequal YLW_APRICORN, .Ylw
+ ifequal GRN_APRICORN, .Grn
+ ifequal WHT_APRICORN, .Wht
+ ifequal BLK_APRICORN, .Blk
+ ifequal PNK_APRICORN, .Pnk
+; .Red
+ setevent EVENT_GAVE_KURT_RED_APRICORN
+ jump .GaveKurtApricorns
+
+.Blu:
+ setevent EVENT_GAVE_KURT_BLU_APRICORN
+ jump .GaveKurtApricorns
+
+.Ylw:
+ setevent EVENT_GAVE_KURT_YLW_APRICORN
+ jump .GaveKurtApricorns
+
+.Grn:
+ setevent EVENT_GAVE_KURT_GRN_APRICORN
+ jump .GaveKurtApricorns
+
+.Wht:
+ setevent EVENT_GAVE_KURT_WHT_APRICORN
+ jump .GaveKurtApricorns
+
+.Blk:
+ setevent EVENT_GAVE_KURT_BLK_APRICORN
+ jump .GaveKurtApricorns
+
+.Pnk:
+ setevent EVENT_GAVE_KURT_PNK_APRICORN
+ jump .GaveKurtApricorns
+
+.GaveKurtApricorns:
+ setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
+ setflag ENGINE_KURT_MAKING_BALLS
+.WaitForApricorns:
+ writetext UnknownText_0x18e779
+ waitbutton
+ closetext
+ end
+
+.Cancel:
+ writetext UnknownText_0x18e7bc
+ waitbutton
+ closetext
+ end
+
+.KurtMakingBallsScript:
+ writetext UnknownText_0x18e7d8
+ waitbutton
+ closetext
+ end
+
+._ThatTurnedOutGreat:
+ setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
+.ThatTurnedOutGreat:
+ writetext UnknownText_0x18e82a
+ waitbutton
+.NoRoomForBall:
+ closetext
+ end
+
+.GiveLevelBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem LEVEL_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_RED_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveLureBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem LURE_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_BLU_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveMoonBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem MOON_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_YLW_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveFriendBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem FRIEND_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_GRN_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveFastBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem FAST_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_WHT_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveHeavyBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem HEAVY_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_BLK_APRICORN
+ jump ._ThatTurnedOutGreat
+
+.GiveLoveBall:
+ checkflag ENGINE_KURT_MAKING_BALLS
+ iftrue .KurtMakingBallsScript
+ writetext UnknownText_0x18e7fb
+ buttonsound
+ verbosegiveitem LOVE_BALL
+ iffalse .NoRoomForBall
+ clearevent EVENT_GAVE_KURT_PNK_APRICORN
+ jump ._ThatTurnedOutGreat
+
+KurtsGranddaughter:
+ faceplayer
+ opentext
+ checkevent EVENT_FAST_SHIP_FIRST_TIME
+ iftrue .Dad
+ checkevent EVENT_CLEARED_SLOWPOKE_WELL
+ iftrue .SlowpokeBack
+ checkevent EVENT_AZALEA_TOWN_SLOWPOKETAIL_ROCKET
+ iftrue .Lonely
+ writetext KurtsGranddaughterSlowpokeGoneText
+ waitbutton
+ closetext
+ end
+
+.SlowpokeBack:
+ writetext KurtsGranddaughterSlowpokeBackText
+ waitbutton
+ closetext
+ end
+
+.Lonely:
+ writetext KurtsGranddaughterLonelyText
+ waitbutton
+ closetext
+ end
+
+.Dad:
+ writetext KurtsGranddaughterDadText
+ waitbutton
+ closetext
+ end
+
+KurtsHouseSlowpoke:
+ faceplayer
+ opentext
+ writetext KurtsHouseSlowpokeText
+ cry SLOWPOKE
+ waitbutton
+ closetext
+ end
+
+KurtsHouseOakPhoto:
+ jumptext KurtsHouseOakPhotoText
+
+KurtsHouseCelebiStatue:
+ jumptext KurtsHouseCelebiStatueText
+
+KurtsHouseBookshelf:
+ jumpstd difficultbookshelf
+
+KurtsHouseRadio:
+ jumpstd radio2
+
+MovementData_0x18e466:
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ step_end
+
+MovementData_0x18e46c:
+ big_step RIGHT
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ big_step DOWN
+ step_end
+
+UnknownText_0x18e473:
+ text "Hm? Who are you?"
+
+ para "<PLAYER>, eh? You"
+ line "want me to make"
+ cont "some BALLS?"
+
+ para "Sorry, but that'll"
+ line "have to wait."
+
+ para "Do you know TEAM"
+ line "ROCKET? Ah, don't"
+
+ para "worry. I'll tell"
+ line "you anyhow."
+
+ para "TEAM ROCKET's an"
+ line "evil gang that"
+
+ para "uses #MON for"
+ line "their dirty work."
+
+ para "They're supposed"
+ line "to have disbanded"
+ cont "three years ago."
+
+ para "Anyway, they're at"
+ line "the WELL, cutting"
+
+ para "off SLOWPOKETAILS"
+ line "for sale!"
+
+ para "So I'm going to"
+ line "go give them a"
+ cont "lesson in pain!"
+
+ para "Hang on, SLOWPOKE!"
+ line "Old KURT is on his"
+ cont "way!"
+ done
+
+UnknownText_0x18e615:
+ text "KURT: Hi, <PLAYER>!"
+
+ para "You handled your-"
+ line "self like a real"
+ cont "hero at the WELL."
+
+ para "I like your style!"
+
+ para "I would be honored"
+ line "to make BALLS for"
+
+ para "a trainer like"
+ line "you."
+
+ para "This is all I have"
+ line "now, but take it."
+ done
+
+UnknownText_0x18e6c9:
+ text "KURT: I make BALLS"
+ line "from APRICORNS."
+
+ para "Collect them from"
+ line "trees and bring"
+ cont "'em to me."
+
+ para "I'll make BALLS"
+ line "out of them."
+ done
+
+UnknownText_0x18e736:
+ text "KURT: You have an"
+ line "APRICORN for me?"
+
+ para "Fine! I'll turn it"
+ line "into a BALL."
+ done
+
+UnknownText_0x18e779:
+ text "KURT: It'll take a"
+ line "day to make you a"
+
+ para "BALL. Come back"
+ line "for it later."
+ done
+
+UnknownText_0x18e7bc:
+ text "KURT: Oh…"
+ line "That's a letdown."
+ done
+
+UnknownText_0x18e7d8:
+ text "KURT: I'm working!"
+ line "Don't bother me!"
+ done
+
+UnknownText_0x18e7fb:
+ text "KURT: Ah, <PLAYER>!"
+ line "I just finished"
+ cont "your BALL. Here!"
+ done
+
+UnknownText_0x18e82a:
+ text "KURT: That turned"
+ line "out great."
+
+ para "Try catching"
+ line "#MON with it."
+ done
+
+KurtsGranddaughterSlowpokeGoneText:
+ text "The SLOWPOKE are"
+ line "gone… Were they"
+
+ para "taken away by bad"
+ line "people?"
+ done
+
+KurtsGranddaughterLonelyText:
+ text "Grandpa's gone…"
+ line "I'm so lonely…"
+ done
+
+KurtsGranddaughterSlowpokeBackText:
+ text "The SLOWPOKE my"
+ line "Dad gave me came"
+
+ para "back! Its TAIL is"
+ line "growing back too!"
+ done
+
+KurtsGranddaughterDadText:
+ text "Dad works at SILPH"
+ line "where he studies"
+ cont "# BALLS."
+
+ para "I have to stay"
+ line "home with Grandpa"
+ cont "and SLOWPOKE."
+ done
+
+KurtsHouseSlowpokeText:
+ text "SLOWPOKE: …"
+ line "Yawn?"
+ done
+
+KurtsHouseOakPhotoText:
+ text "…A young PROF."
+ line "OAK?"
+ done
+
+KurtsHouseCelebiStatueText:
+ text "It's a statue of"
+ line "the forest's pro-"
+ cont "tector."
+ done
+
+KurtsHouse_MapEvents:
+ db 0, 0 ; filler
+
+ db 2 ; warp events
+ warp_event 3, 7, AZALEA_TOWN, 4
+ warp_event 4, 7, AZALEA_TOWN, 4
+
+ db 0 ; coord events
+
+ db 7 ; bg events
+ bg_event 6, 1, BGEVENT_READ, KurtsHouseRadio
+ bg_event 8, 0, BGEVENT_READ, KurtsHouseOakPhoto
+ bg_event 9, 0, BGEVENT_READ, KurtsHouseOakPhoto
+ bg_event 5, 1, BGEVENT_READ, KurtsHouseBookshelf
+ bg_event 2, 1, BGEVENT_READ, KurtsHouseBookshelf
+ bg_event 3, 1, BGEVENT_READ, KurtsHouseBookshelf
+ bg_event 4, 1, BGEVENT_READ, KurtsHouseCelebiStatue
+
+ db 4 ; object events
+ object_event 3, 2, SPRITE_KURT, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Kurt1, EVENT_KURTS_HOUSE_KURT_1
+ object_event 5, 3, SPRITE_TWIN, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, KurtsGranddaughter, -1
+ object_event 6, 3, SPRITE_SLOWPOKE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, KurtsHouseSlowpoke, EVENT_KURTS_HOUSE_SLOWPOKE
+ object_event 14, 3, SPRITE_KURT, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Kurt1, EVENT_KURTS_HOUSE_KURT_2