summaryrefslogtreecommitdiff
path: root/engine/phone/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'engine/phone/scripts')
-rw-r--r--engine/phone/scripts/alan.asm60
-rw-r--r--engine/phone/scripts/anthony.asm61
-rw-r--r--engine/phone/scripts/arnie.asm64
-rw-r--r--engine/phone/scripts/beth.asm39
-rw-r--r--engine/phone/scripts/beverly.asm26
-rw-r--r--engine/phone/scripts/bike_shop.asm5
-rw-r--r--engine/phone/scripts/bill.asm41
-rw-r--r--engine/phone/scripts/brent.asm44
-rw-r--r--engine/phone/scripts/brent_gossip.asm62
-rw-r--r--engine/phone/scripts/buena.asm169
-rw-r--r--engine/phone/scripts/callers.asm961
-rw-r--r--engine/phone/scripts/chad.asm49
-rw-r--r--engine/phone/scripts/chad_gossip.asm62
-rw-r--r--engine/phone/scripts/dana.asm65
-rw-r--r--engine/phone/scripts/derek.asm48
-rw-r--r--engine/phone/scripts/elm.asm101
-rw-r--r--engine/phone/scripts/erin.asm40
-rw-r--r--engine/phone/scripts/gaven.asm44
-rw-r--r--engine/phone/scripts/generic.asm1263
-rw-r--r--engine/phone/scripts/gina.asm72
-rw-r--r--engine/phone/scripts/hangups.asm183
-rw-r--r--engine/phone/scripts/hangups_2.asm49
-rw-r--r--engine/phone/scripts/huey.asm41
-rw-r--r--engine/phone/scripts/irwin.asm19
-rw-r--r--engine/phone/scripts/irwin_gossip.asm88
-rw-r--r--engine/phone/scripts/jack.asm49
-rw-r--r--engine/phone/scripts/jack_gossip.asm68
-rw-r--r--engine/phone/scripts/joey.asm41
-rw-r--r--engine/phone/scripts/jose.asm59
-rw-r--r--engine/phone/scripts/kenji.asm9
-rw-r--r--engine/phone/scripts/liz.asm102
-rw-r--r--engine/phone/scripts/liz_gossip.asm62
-rw-r--r--engine/phone/scripts/mom.asm142
-rw-r--r--engine/phone/scripts/parry.asm40
-rw-r--r--engine/phone/scripts/ralph.asm59
-rw-r--r--engine/phone/scripts/reena.asm39
-rw-r--r--engine/phone/scripts/reminders.asm95
-rw-r--r--engine/phone/scripts/reminders_2.asm15
-rw-r--r--engine/phone/scripts/tiffany.asm98
-rw-r--r--engine/phone/scripts/todd.asm59
-rw-r--r--engine/phone/scripts/tully.asm60
-rw-r--r--engine/phone/scripts/unused.asm3
-rw-r--r--engine/phone/scripts/vance.asm40
-rw-r--r--engine/phone/scripts/wade.asm113
-rw-r--r--engine/phone/scripts/wilton.asm75
45 files changed, 4884 insertions, 0 deletions
diff --git a/engine/phone/scripts/alan.asm b/engine/phone/scripts/alan.asm
new file mode 100644
index 000000000..d2cdccd9f
--- /dev/null
+++ b/engine/phone/scripts/alan.asm
@@ -0,0 +1,60 @@
+AlanPhoneScript1:
+ trainertotext SCHOOLBOY, ALAN1, MEM_BUFFER_0
+ checkflag ENGINE_ALAN
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
+ iftrue .NotWednesday
+ checkflag ENGINE_ALAN_HAS_FIRE_STONE
+ iftrue .FireStone
+ checkcode VAR_WEEKDAY
+ ifnotequal WEDNESDAY, .NotWednesday
+ checktime DAY
+ iftrue AlanWednesdayDay
+
+.NotWednesday:
+ farjump UnknownScript_0xa0970
+
+.WantsBattle:
+ landmarktotext ROUTE_36, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a73
+
+.FireStone:
+ landmarktotext ROUTE_36, MEM_BUFFER_2
+ farjump UnknownScript_0xa0ac5
+
+AlanPhoneScript2:
+ trainertotext SCHOOLBOY, ALAN1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_ALAN
+ iftrue .Generic
+ checkflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
+ iftrue .Generic
+ checkflag ENGINE_ALAN_HAS_FIRE_STONE
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, AlanWantsBattle
+ checkevent EVENT_ALAN_GAVE_FIRE_STONE
+ iftrue .FireStone
+ farscall PhoneScript_Random2
+ ifequal 0, AlanHasFireStone
+
+.FireStone:
+ farscall PhoneScript_Random11
+ ifequal 0, AlanHasFireStone
+
+.Generic:
+ farjump Phone_GenericCall_Male
+
+AlanWednesdayDay:
+ setflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
+
+AlanWantsBattle:
+ landmarktotext ROUTE_36, MEM_BUFFER_2
+ setflag ENGINE_ALAN
+ farjump PhoneScript_WantsToBattle_Male
+
+AlanHasFireStone:
+ setflag ENGINE_ALAN_HAS_FIRE_STONE
+ landmarktotext ROUTE_36, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Male
diff --git a/engine/phone/scripts/anthony.asm b/engine/phone/scripts/anthony.asm
new file mode 100644
index 000000000..59064c80f
--- /dev/null
+++ b/engine/phone/scripts/anthony.asm
@@ -0,0 +1,61 @@
+AnthonyPhoneScript1:
+ trainertotext HIKER, ANTHONY2, MEM_BUFFER_0
+ checkflag ENGINE_ANTHONY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_ANTHONY_FRIDAY_NIGHT
+ iftrue .NotFriday
+ checkcode VAR_WEEKDAY
+ ifnotequal FRIDAY, .NotFriday
+ checktime NITE
+ iftrue AnthonyFridayNight
+
+.NotFriday:
+ checkflag ENGINE_DUNSPARCE_SWARM
+ iftrue .AlreadySwarming
+ farjump UnknownScript_0xa0950
+
+.WantsBattle:
+ landmarktotext ROUTE_33, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a5f
+
+.AlreadySwarming:
+ landmarktotext ROUTE_33, MEM_BUFFER_2
+ farjump UnknownScript_0xa0afa
+
+AnthonyPhoneScript2:
+ trainertotext HIKER, ANTHONY2, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .TriesSwarm
+ checkflag ENGINE_ANTHONY
+ iftrue .TriesSwarm
+ checkflag ENGINE_ANTHONY_FRIDAY_NIGHT
+ iftrue .TriesSwarm
+ farscall PhoneScript_Random2
+ ifequal 0, AnthonyWantsBattle
+
+.TriesSwarm:
+ farscall PhoneScript_Random5
+ ifequal 0, AnthonyTriesDunsparceSwarm
+ farjump Phone_GenericCall_Male
+
+AnthonyFridayNight:
+ setflag ENGINE_ANTHONY_FRIDAY_NIGHT
+
+AnthonyWantsBattle:
+ landmarktotext ROUTE_33, MEM_BUFFER_2
+ setflag ENGINE_ANTHONY
+ farjump PhoneScript_WantsToBattle_Male
+
+AnthonyTriesDunsparceSwarm:
+ checkflag ENGINE_DUNSPARCE_SWARM
+ iftrue .Generic
+ setflag ENGINE_DUNSPARCE_SWARM
+ pokenamemem DUNSPARCE, MEM_BUFFER_1
+ swarm SWARM_DUNSPARCE, DARK_CAVE_VIOLET_ENTRANCE
+ landmarktotext DARK_CAVE, MEM_BUFFER_2
+ farjump UnknownScript_0xa05de
+
+.Generic:
+ farjump Phone_GenericCall_Male
diff --git a/engine/phone/scripts/arnie.asm b/engine/phone/scripts/arnie.asm
new file mode 100644
index 000000000..bac4baec4
--- /dev/null
+++ b/engine/phone/scripts/arnie.asm
@@ -0,0 +1,64 @@
+ArniePhoneScript1:
+ trainertotext BUG_CATCHER, ARNIE1, MEM_BUFFER_0
+ checkflag ENGINE_ARNIE
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_ARNIE_TUESDAY_MORNING
+ iftrue .NotTuesday
+ checkcode VAR_WEEKDAY
+ ifnotequal TUESDAY, .NotTuesday
+ checktime MORN
+ iftrue ArnieTuesdayMorning
+
+.NotTuesday:
+ checkflag ENGINE_YANMA_SWARM
+ iftrue .AlreadySwarming
+ farjump UnknownScript_0xa0968
+
+.WantsBattle:
+ landmarktotext ROUTE_35, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a6e
+
+.AlreadySwarming:
+ landmarktotext ROUTE_35, MEM_BUFFER_2
+ farjump UnknownScript_0xa0aff
+
+ArniePhoneScript2:
+ trainertotext BUG_CATCHER, ARNIE1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_ARNIE
+ iftrue .Swarm
+ checkflag ENGINE_ARNIE_TUESDAY_MORNING
+ iftrue .Swarm
+ farscall PhoneScript_Random2
+ ifequal 0, ArnieWantsBattle
+
+.Swarm:
+ farscall PhoneScript_Random5
+ ifequal 0, ArnieYanmaSwarm
+ farscall PhoneScript_Random3
+ ifequal 0, ArnieFoundRare
+ farjump Phone_GenericCall_Male
+
+ArnieTuesdayMorning:
+ setflag ENGINE_ARNIE_TUESDAY_MORNING
+
+ArnieWantsBattle:
+ landmarktotext ROUTE_35, MEM_BUFFER_2
+ setflag ENGINE_ARNIE
+ farjump PhoneScript_WantsToBattle_Male
+
+ArnieYanmaSwarm: ; start swarm
+ checkflag ENGINE_YANMA_SWARM
+ iftrue ArnieYanmaAlreadySwarming
+ setflag ENGINE_YANMA_SWARM
+ pokenamemem YANMA, MEM_BUFFER_1
+ swarm SWARM_YANMA, ROUTE_35
+ landmarktotext ROUTE_35, MEM_BUFFER_2
+ farjump UnknownScript_0xa05ce
+
+ArnieFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+ArnieYanmaAlreadySwarming:
+ farjump Phone_GenericCall_Male
diff --git a/engine/phone/scripts/beth.asm b/engine/phone/scripts/beth.asm
new file mode 100644
index 000000000..26b998ac8
--- /dev/null
+++ b/engine/phone/scripts/beth.asm
@@ -0,0 +1,39 @@
+BethPhoneScript1:
+ trainertotext COOLTRAINERF, BETH1, MEM_BUFFER_0
+ checkflag ENGINE_BETH
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_BETH_FRIDAY_AFTERNOON
+ iftrue .NotFriday
+ checkcode VAR_WEEKDAY
+ ifnotequal FRIDAY, .NotFriday
+ checktime DAY
+ iftrue BethFridayAfternoon
+
+.NotFriday:
+ farjump UnknownScript_0xa0918
+
+.WantsBattle:
+ landmarktotext ROUTE_26, MEM_BUFFER_2
+ farjump BethBattleReminderScript
+
+BethPhoneScript2:
+ trainertotext COOLTRAINERF, BETH1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_BETH
+ iftrue .Generic
+ checkflag ENGINE_BETH_FRIDAY_AFTERNOON
+ iftrue .Generic
+ farscall PhoneScript_Random2
+ ifequal 0, BethWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Female
+
+BethFridayAfternoon:
+ setflag ENGINE_BETH_FRIDAY_AFTERNOON
+
+BethWantsBattle:
+ landmarktotext ROUTE_26, MEM_BUFFER_2
+ setflag ENGINE_BETH
+ farjump PhoneScript_WantsToBattle_Female
diff --git a/engine/phone/scripts/beverly.asm b/engine/phone/scripts/beverly.asm
new file mode 100644
index 000000000..46d9eea98
--- /dev/null
+++ b/engine/phone/scripts/beverly.asm
@@ -0,0 +1,26 @@
+BeverlyPhoneScript1:
+ trainertotext POKEFANF, BEVERLY1, MEM_BUFFER_0
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_BEVERLY_HAS_NUGGET
+ iftrue .HasNugget
+ farjump UnknownScript_0xa0900
+
+.HasNugget:
+ landmarktotext NATIONAL_PARK, MEM_BUFFER_2
+ farjump UnknownScript_0xa0aa5
+
+BeverlyPhoneScript2:
+ trainertotext POKEFANF, BEVERLY1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_BEVERLY_HAS_NUGGET
+ iftrue .HasNugget
+ farscall PhoneScript_Random4
+ ifequal 0, .FoundNugget
+
+.HasNugget:
+ farjump Phone_GenericCall_Female
+
+.FoundNugget:
+ setflag ENGINE_BEVERLY_HAS_NUGGET
+ landmarktotext NATIONAL_PARK, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Female
diff --git a/engine/phone/scripts/bike_shop.asm b/engine/phone/scripts/bike_shop.asm
new file mode 100644
index 000000000..e571d1f9d
--- /dev/null
+++ b/engine/phone/scripts/bike_shop.asm
@@ -0,0 +1,5 @@
+BikeShopPhoneScript:
+ farwritetext UnknownText_0x174000
+ clearflag ENGINE_BIKE_SHOP_CALL_ENABLED
+ specialphonecall SPECIALCALL_NONE
+ end
diff --git a/engine/phone/scripts/bill.asm b/engine/phone/scripts/bill.asm
new file mode 100644
index 000000000..62c6fe5da
--- /dev/null
+++ b/engine/phone/scripts/bill.asm
@@ -0,0 +1,41 @@
+BillPhoneScript1:
+ checktime DAY
+ iftrue .daygreet
+ checktime NITE
+ iftrue .nitegreet
+ farwritetext BillPhoneMornGreetingText
+ buttonsound
+ jump .main
+
+.daygreet
+ farwritetext BillPhoneDayGreetingText
+ buttonsound
+ jump .main
+
+.nitegreet
+ farwritetext BillPhoneNiteGreetingText
+ buttonsound
+ jump .main
+
+.main
+ farwritetext BillPhoneGenericText
+ buttonsound
+ checkcode VAR_BOXSPACE
+ vartomem MEM_BUFFER_0
+ ifequal 0, .full
+ ifless PARTY_LENGTH, .nearlyfull
+ farwritetext BillPhoneNotFullText
+ end
+
+.nearlyfull
+ farwritetext BillPhoneNearlyFullText
+ end
+
+.full
+ farwritetext BillPhoneFullText
+ end
+
+BillPhoneScript2:
+ farwritetext BillPhoneNewlyFullText
+ waitbutton
+ end
diff --git a/engine/phone/scripts/brent.asm b/engine/phone/scripts/brent.asm
new file mode 100644
index 000000000..758bb585f
--- /dev/null
+++ b/engine/phone/scripts/brent.asm
@@ -0,0 +1,44 @@
+BrentPhoneScript1:
+ trainertotext POKEMANIAC, BRENT1, MEM_BUFFER_0
+ checkflag ENGINE_BRENT
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_BRENT_MONDAY_MORNING
+ iftrue .NotMonday
+ checkcode VAR_WEEKDAY
+ ifnotequal MONDAY, .NotMonday
+ checktime MORN
+ iftrue BrentMondayMorning
+
+.NotMonday:
+ farjump UnknownScript_0xa0998
+
+.WantsBattle:
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a87
+
+BrentPhoneScript2:
+ trainertotext POKEMANIAC, BRENT1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farscall PhoneScript_Random2
+ ifequal 0, BrentBillTrivia
+ checkflag ENGINE_BRENT
+ iftrue .Generic
+ checkflag ENGINE_BRENT_MONDAY_MORNING
+ iftrue .Generic
+ farscall PhoneScript_Random2
+ ifequal 0, BrentWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Male
+
+BrentMondayMorning:
+ setflag ENGINE_BRENT_MONDAY_MORNING
+
+BrentWantsBattle:
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ setflag ENGINE_BRENT
+ farjump PhoneScript_WantsToBattle_Male
+
+BrentBillTrivia:
+ farjump BrentBillTriviaScript
diff --git a/engine/phone/scripts/brent_gossip.asm b/engine/phone/scripts/brent_gossip.asm
new file mode 100644
index 000000000..11a91fe8c
--- /dev/null
+++ b/engine/phone/scripts/brent_gossip.asm
@@ -0,0 +1,62 @@
+BrentBillTriviaScript:
+ random 10
+ ifequal 0, .Father
+ ifequal 1, .Grandpa
+ ifequal 2, .Goldenrod
+ ifequal 3, .Route25
+ ifequal 4, .Abra
+ ifequal 5, .Sister
+ ifequal 6, .Milk
+ ifequal 7, .Battling
+ ifequal 8, .FlowerShop
+ ifequal 9, .KimonoGirl
+
+.Father:
+ farwritetext UnknownText_0x662bc
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Grandpa:
+ farwritetext UnknownText_0x662fc
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Goldenrod:
+ farwritetext UnknownText_0x66335
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Route25:
+ farwritetext UnknownText_0x66366
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Abra:
+ farwritetext UnknownText_0x663a1
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Sister:
+ farwritetext UnknownText_0x663e6
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Milk:
+ farwritetext UnknownText_0x66421
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Battling:
+ farwritetext UnknownText_0x6645f
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.FlowerShop:
+ farwritetext UnknownText_0x6649b
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.KimonoGirl:
+ farwritetext UnknownText_0x664dd
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/buena.asm b/engine/phone/scripts/buena.asm
new file mode 100644
index 000000000..68c5c01b9
--- /dev/null
+++ b/engine/phone/scripts/buena.asm
@@ -0,0 +1,169 @@
+BuenaPhoneScript1:
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue BuenaPhoneScript_Rocket
+ checkcode VAR_HOUR
+ ifgreater 17, BuenaPhoneScript_AfterMidnight1
+ scall BuenaPhoneScript_CheckTimeOfDay1
+ jump BuenaPhoneScript_Random1
+
+BuenaPhoneScript2:
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue BuenaPhoneScript_Rocket
+ scall BuenaPhoneScript_CheckTimeOfDay2
+ jump BuenaPhoneScript_Random2
+
+BuenaPhoneScript_CheckTimeOfDay1:
+ checktime MORN
+ iftrue .morn
+ checktime DAY
+ iftrue .day
+ writetext UnknownText_0xa0d42
+ buttonsound
+ end
+
+.morn
+ writetext UnknownText_0xa0c28
+ buttonsound
+ end
+
+.day
+ writetext UnknownText_0xa0c72
+ buttonsound
+ end
+
+BuenaPhoneScript_AfterMidnight1:
+ writetext UnknownText_0xa0caf
+ end
+
+BuenaPhoneScript_CheckTimeOfDay2:
+ checkcode VAR_HOUR
+ ifgreater 17, BuenaPhoneScript_AfterMidnight2
+ checktime MORN
+ iftrue .morn
+ checktime DAY
+ iftrue .day
+ writetext UnknownText_0xa0e29
+ buttonsound
+ end
+
+.morn
+ writetext UnknownText_0xa0d96
+ buttonsound
+ end
+
+.day
+ writetext UnknownText_0xa0dcf
+ buttonsound
+ end
+
+BuenaPhoneScript_AfterMidnight2:
+ writetext UnknownText_0xa0e01
+ buttonsound
+ end
+
+BuenaPhoneScript_Rocket:
+ writetext UnknownText_0xa0e5e
+ end
+
+BuenaPhoneScript_Random2:
+ checkevent EVENT_BEAT_ELITE_FOUR
+ iftrue .PostE4
+ random 11
+ jump .Jumptable
+
+.PostE4:
+ random 14
+
+.Jumptable:
+ ifequal 0, .zero
+ ifequal 1, .one
+ ifequal 2, .two
+ ifequal 3, .three
+ ifequal 4, .four
+ ifequal 5, .five
+ ifequal 6, .six
+ ifequal 7, .seven
+ ifequal 8, .eight
+ ifequal 9, .nine
+ ifequal 10, .ten
+ ifequal 11, .eleven
+ ifequal 12, .twelve
+ ifequal 13, .thirteen
+
+.zero
+ writetext UnknownText_0xa0efb
+ jump .finish
+
+.one
+ writetext UnknownText_0xa0fcf
+ jump .finish
+
+.two
+ writetext UnknownText_0xa109d
+ jump .finish
+
+.three
+ writetext UnknownText_0xa1143
+ jump .finish
+
+.four
+ writetext UnknownText_0xa1244
+ jump .finish
+
+.five
+ writetext UnknownText_0xa1318
+ jump .finish
+
+.six
+ writetext UnknownText_0xa13d8
+ jump .finish
+
+.seven
+ writetext UnknownText_0xa1488
+ jump .finish
+
+.eight
+ writetext UnknownText_0xa15de
+ jump .finish
+
+.nine
+ writetext UnknownText_0xa1717
+ jump .finish
+
+.ten
+ writetext UnknownText_0xa183d
+ jump .finish
+
+.eleven
+ writetext UnknownText_0xa19b1
+ jump .finish
+
+.twelve
+ writetext UnknownText_0xa1ac0
+ jump .finish
+
+.thirteen
+ writetext UnknownText_0xa1bed
+
+.finish
+ end
+
+BuenaPhoneScript_Random1:
+ random 3
+ ifequal 0, .zero
+ ifequal 1, .one
+ ifequal 2, .two
+
+.zero
+ writetext UnknownText_0xa1c88
+ end
+
+.one
+ writetext UnknownText_0xa1d5f
+ end
+
+.two
+ writetext UnknownText_0xa1e2f
+ end
+
+INCLUDE "data/phone/text/buena.asm"
diff --git a/engine/phone/scripts/callers.asm b/engine/phone/scripts/callers.asm
new file mode 100644
index 000000000..a929ba1d8
--- /dev/null
+++ b/engine/phone/scripts/callers.asm
@@ -0,0 +1,961 @@
+Phone_GenericCall_Male:
+ special RandomPhoneMon
+ farscall PhoneScript_Random2
+ ifequal 0, .Bragging
+ farscall PhoneScript_Generic_Male
+ farjump Phone_FoundAMon_Male
+
+.Bragging:
+ farjump Phone_BraggingCall_Male
+
+Phone_GenericCall_Female:
+ special RandomPhoneMon
+ farscall PhoneScript_Random2
+ ifequal 0, .Bragging
+ farscall PhoneScript_Generic_Female
+ farjump Phone_FoundAMon_Female
+
+.Bragging:
+ farjump Phone_BraggingCall_Female
+
+Phone_BraggingCall_Male:
+ farscall Phone_WhosBragging_Male
+ farjump Phone_FoundAMon_Male
+
+Phone_BraggingCall_Female:
+ farscall Phone_WhosBragging_Female
+ farjump Phone_FoundAMon_Female
+
+Phone_FoundAMon_Male:
+ special RandomPhoneWildMon
+ farscall PhoneScript_Random2
+ ifequal 0, .GotAway
+ farscall Phone_WhoDefeatedMon_Male
+ farjump PhoneScript_HangupText_Male
+
+.GotAway:
+ farjump Phone_GotAwayCall_Male
+
+Phone_FoundAMon_Female:
+ special RandomPhoneWildMon
+ farscall PhoneScript_Random2
+ ifequal 0, .GotAway
+ farscall Phone_WhoDefeatedMon_Female
+ farjump PhoneScript_HangupText_Female
+
+.GotAway:
+ farjump Phone_GotAwayCall_Female
+
+Phone_GotAwayCall_Male:
+ farscall Phone_WhoLostAMon_Male
+ farjump PhoneScript_HangupText_Male
+
+Phone_GotAwayCall_Female:
+ farscall Phone_WhoLostAMon_Female
+ farjump PhoneScript_HangupText_Female
+
+Phone_WhosBragging_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext JackIntelligenceText
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext GavenGreaterText
+ buttonsound
+ end
+
+.Jose:
+ farwritetext JoseAromaText
+ buttonsound
+ end
+
+.Joey:
+ farwritetext JoeySharperText
+ buttonsound
+ end
+
+.Wade:
+ farwritetext WadeAreYouGrowingText
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext RalphNeglectingKidsText
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext AnthonyAteBerriesText
+ buttonsound
+ end
+
+.Todd:
+ farwritetext ToddLooksCuteLikeMeText
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext ArnieLovesTheCuteText
+ buttonsound
+ end
+
+.Alan:
+ farwritetext AlanGettingStrongerText
+ buttonsound
+ end
+
+.Chad:
+ farwritetext ChadObservingWildText
+ buttonsound
+ end
+
+.Derek:
+ farwritetext DerekCheekPincherText
+ buttonsound
+ end
+
+.Tully:
+ farwritetext TullyGrownText
+ buttonsound
+ end
+
+.Brent:
+ farwritetext BrentRareTradeText
+ buttonsound
+ end
+
+.Vance:
+ farwritetext VanceLiftoffText
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext WiltonGrownText
+ buttonsound
+ end
+
+.Parry:
+ farwritetext ParryNoMatchText
+ buttonsound
+ end
+
+Phone_WhosBragging_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x174688
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x174c7f
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1752f5
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x175fda
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1771fd
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x64f74
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x665ad
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x6717a
+ buttonsound
+ end
+
+Phone_WhoDefeatedMon_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext JackDefeatedMonText
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x174a80
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x174f90
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x175591
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x175869
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x175c24
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x176aef
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x176e9c
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x64a13
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x64cf3
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x65318
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x65b29
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x65e42
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x6613c
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x669b2
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x66b3e
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x66fc0
+ buttonsound
+ end
+
+Phone_WhoDefeatedMon_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1746c3
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x174cf6
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x17536b
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x17602d
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x177237
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x64fb2
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x66605
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x671a4
+ buttonsound
+ end
+
+Phone_WhoLostAMon_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x174165
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x174b2d
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x174ffd
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x175611
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1758e4
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x175c9f
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x176b45
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x176eee
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x64a71
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x64d4f
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x65399
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x65bc8
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x65eac
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x6618c
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x669ed
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x66b8f
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x67001
+ buttonsound
+ end
+
+Phone_WhoLostAMon_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x174734
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x174d86
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1753c5
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x176095
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x177297
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x6501c
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x66688
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x671eb
+ buttonsound
+ end
+
+PhoneScript_WantsToBattle_Male:
+ farscall PhoneScript_RematchText_Male
+ farjump PhoneScript_HangupText_Male
+
+PhoneScript_WantsToBattle_Female:
+ farscall PhoneScript_RematchText_Female
+ farjump PhoneScript_HangupText_Female
+
+PhoneScript_RematchText_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1741e1
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1748ea
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x174bc5
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x17507d
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x175693
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x175976
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x175d40
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x176bee
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x176f60
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x64ada
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x64da4
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x65419
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x65f17
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x66214
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x66a3a
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x66bf3
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x67096
+ buttonsound
+ end
+
+PhoneScript_RematchText_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beth:
+ farwritetext UnknownText_0x174e4e
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x17543a
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x17610a
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1772e2
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x65091
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x66730
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x6722e
+ buttonsound
+ end
+
+LizWrongNumberScript:
+ farwritetext LizHiTaniaText
+ end
+
+TiffanyItsAwful:
+ farwritetext TiffanyItsAwfulText
+ end
+
+PhoneScript_HangupText_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x174251
+ end
+
+.Huey:
+ farwritetext UnknownText_0x174962
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x174c0e
+ end
+
+.Jose:
+ farwritetext UnknownText_0x175106
+ end
+
+.Joey:
+ farwritetext UnknownText_0x17570a
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1759e7
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x175db7
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x176c47
+ end
+
+.Todd:
+ farwritetext UnknownText_0x176fdb
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x64000
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x64b48
+ end
+
+.Alan:
+ farwritetext UnknownText_0x64e1f
+ end
+
+.Chad:
+ farwritetext UnknownText_0x65471
+ end
+
+.Derek:
+ farwritetext UnknownText_0x65c4e
+ end
+
+.Tully:
+ farwritetext UnknownText_0x65f6e
+ end
+
+.Brent:
+ farwritetext UnknownText_0x662a9
+ end
+
+.Vance:
+ farwritetext UnknownText_0x66a93
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x66c58
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x66dab
+ end
+
+.Parry:
+ farwritetext UnknownText_0x670eb
+ end
+
+PhoneScript_HangupText_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1747ac
+ end
+
+.Beth:
+ farwritetext UnknownText_0x174eb7
+ end
+
+.Reena:
+ farwritetext UnknownText_0x175488
+ end
+
+.Liz:
+ farwritetext UnknownText_0x17620a
+ end
+
+.Gina:
+ farwritetext UnknownText_0x177361
+ end
+
+.Dana:
+ farwritetext UnknownText_0x650e2
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x667f7
+ end
+
+.Erin:
+ farwritetext UnknownText_0x67281
+ end
+
+Phone_CheckIfUnseenRare_Male:
+ scall PhoneScriptRareWildMon
+ iffalse .HangUp
+ farjump Phone_GenericCall_Male
+
+.HangUp:
+ farjump PhoneScript_HangupText_Male
+
+Phone_CheckIfUnseenRare_Female:
+ scall PhoneScriptRareWildMon
+ iffalse .HangUp
+ farjump Phone_GenericCall_Female
+
+.HangUp:
+ farjump PhoneScript_HangupText_Female
+
+PhoneScriptRareWildMon:
+ special RandomUnseenWildMon
+ end
+
+PhoneScript_BugCatchingContest:
+ checkcode VAR_CALLERID
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+
+.Wade:
+ farwritetext WadeBugCatchingContestText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Derek:
+ farwritetext DerekBugCatchingContestText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+IrwinRocketRumor:
+ farwritetext UnknownText_0x64032
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa05c6:
+ farwritetext UnknownText_0x177378
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa05ce:
+ farwritetext UnknownText_0x64b5f
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa05d6:
+ farwritetext UnknownText_0x175dd9
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa05de:
+ farwritetext UnknownText_0x176c61
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+PhoneScript_FoundItem_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_FISHER_WILTON, .Wilton
+
+.Jose:
+ farwritetext JoseFoundSomethingText
+ end
+
+.Wade:
+ farwritetext WadeFoundBerryText
+ end
+
+.Alan:
+ farwritetext UnknownText_0x64e2f
+ end
+
+.Derek:
+ farwritetext UnknownText_0x65cf9
+ end
+
+.Tully:
+ farwritetext UnknownText_0x65f88
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x66c6b
+ end
+
+PhoneScript_FoundItem_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+
+.Beverly:
+ farwritetext BeverlyFoundNuggetText
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1773e7
+ end
+
+.Dana:
+ farwritetext UnknownText_0x650ec
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x66801
+ end
+
+UnknownScript_0xa0644:
+ farwritetext UnknownText_0x176feb
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+KenjiCallingPhoneScript:
+ farwritetext UnknownText_0x66dc5
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/chad.asm b/engine/phone/scripts/chad.asm
new file mode 100644
index 000000000..f90d5c143
--- /dev/null
+++ b/engine/phone/scripts/chad.asm
@@ -0,0 +1,49 @@
+ChadPhoneScript1:
+ trainertotext SCHOOLBOY, CHAD1, MEM_BUFFER_0
+ checkflag ENGINE_CHAD
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_CHAD_FRIDAY_MORNING
+ iftrue .NotFriday
+ checkcode VAR_WEEKDAY
+ ifnotequal FRIDAY, .NotFriday
+ checktime MORN
+ iftrue ChadFridayMorning
+
+.NotFriday:
+ farjump UnknownScript_0xa0980
+
+.WantsBattle:
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a7d
+
+ChadPhoneScript2:
+ trainertotext SCHOOLBOY, CHAD1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farscall PhoneScript_Random2
+ ifequal 0, ChadOakGossip
+ checkflag ENGINE_CHAD
+ iftrue .Generic
+ checkflag ENGINE_CHAD_FRIDAY_MORNING
+ iftrue .Generic
+ farscall PhoneScript_Random2
+ ifequal 0, ChadWantsBattle
+
+.Generic:
+ farscall PhoneScript_Random3
+ ifequal 0, ChadFoundRare
+ farjump Phone_GenericCall_Male
+
+ChadFridayMorning:
+ setflag ENGINE_CHAD_FRIDAY_MORNING
+
+ChadWantsBattle:
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ setflag ENGINE_CHAD
+ farjump PhoneScript_WantsToBattle_Male
+
+ChadFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+ChadOakGossip:
+ farjump ChadOakGossipScript
diff --git a/engine/phone/scripts/chad_gossip.asm b/engine/phone/scripts/chad_gossip.asm
new file mode 100644
index 000000000..e273e656d
--- /dev/null
+++ b/engine/phone/scripts/chad_gossip.asm
@@ -0,0 +1,62 @@
+ChadOakGossipScript:
+ random 10
+ ifequal 0, .Blue
+ ifequal 1, .Daisy
+ ifequal 2, .ProfElm
+ ifequal 3, .Dream
+ ifequal 4, .Kurt
+ ifequal 5, .League
+ ifequal 6, .RadioShow
+ ifequal 7, .Battling
+ ifequal 8, .DaisyTea
+ ifequal 9, .Traveled
+
+.Blue:
+ farwritetext ChadBlueGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Daisy:
+ farwritetext ChadDaisyGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.ProfElm:
+ farwritetext ChadProfElmGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Dream:
+ farwritetext ChadDreamGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Kurt:
+ farwritetext ChadKurtGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.League:
+ farwritetext ChadLeagueGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.RadioShow:
+ farwritetext ChadRadioShowGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Battling:
+ farwritetext ChadBattlingGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.DaisyTea:
+ farwritetext ChadDaisyTeaGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Traveled:
+ farwritetext ChadTravelGossipText
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/dana.asm b/engine/phone/scripts/dana.asm
new file mode 100644
index 000000000..825eab61d
--- /dev/null
+++ b/engine/phone/scripts/dana.asm
@@ -0,0 +1,65 @@
+DanaPhoneScript1:
+ trainertotext LASS, DANA1, MEM_BUFFER_0
+ checkflag ENGINE_DANA
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_DANA_THURSDAY_NIGHT
+ iftrue .NotThursday
+ checkflag ENGINE_DANA_HAS_THUNDERSTONE
+ iftrue .HasThunderstone
+ checkcode VAR_WEEKDAY
+ ifnotequal THURSDAY, .NotThursday
+ checktime NITE
+ iftrue DanaThursdayNight
+
+.NotThursday:
+ farjump UnknownScript_0xa0978
+
+.WantsBattle:
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a78
+
+.HasThunderstone:
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ farjump UnknownScript_0xa0acd
+
+DanaPhoneScript2:
+ trainertotext LASS, DANA1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_DANA
+ iftrue .Generic
+ checkflag ENGINE_DANA_THURSDAY_NIGHT
+ iftrue .Generic
+ checkflag ENGINE_DANA_HAS_THUNDERSTONE
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, DanaWantsBattle
+ checkevent EVENT_DANA_GAVE_THUNDERSTONE
+ iftrue .Thunderstone
+ farscall PhoneScript_Random2
+ ifequal 0, DanaHasThunderstone
+
+.Thunderstone:
+ farscall PhoneScript_Random11
+ ifequal 0, DanaHasThunderstone
+
+.Generic:
+ farscall PhoneScript_Random3
+ ifequal 0, DanaFoundRare
+ farjump Phone_GenericCall_Female
+
+DanaThursdayNight:
+ setflag ENGINE_DANA_THURSDAY_NIGHT
+
+DanaWantsBattle:
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ setflag ENGINE_DANA
+ farjump PhoneScript_WantsToBattle_Female
+
+DanaFoundRare:
+ farjump Phone_CheckIfUnseenRare_Female
+
+DanaHasThunderstone:
+ setflag ENGINE_DANA_HAS_THUNDERSTONE
+ landmarktotext ROUTE_38, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Female
diff --git a/engine/phone/scripts/derek.asm b/engine/phone/scripts/derek.asm
new file mode 100644
index 000000000..637342093
--- /dev/null
+++ b/engine/phone/scripts/derek.asm
@@ -0,0 +1,48 @@
+DerekPhoneScript1:
+ trainertotext POKEFANM, DEREK1, MEM_BUFFER_0
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_DEREK_HAS_NUGGET
+ iftrue .Nugget
+ farscall PhoneScript_Random2
+ ifequal 0, .NoContest
+ checkflag ENGINE_DAILY_BUG_CONTEST
+ iftrue .NoContest
+ checkcode VAR_WEEKDAY
+ ifequal TUESDAY, .ContestToday
+ ifequal THURSDAY, .ContestToday
+ ifequal SATURDAY, .ContestToday
+
+.NoContest:
+ farjump UnknownScript_0xa0988
+
+.ContestToday:
+ farjump PhoneScript_BugCatchingContest
+
+.Nugget:
+ landmarktotext ROUTE_39, MEM_BUFFER_2
+ farjump UnknownScript_0xa0ad5
+
+DerekPhoneScript2:
+ trainertotext POKEFANM, DEREK1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farscall PhoneScript_Random2
+ ifequal 0, .NoContest
+ checkflag ENGINE_DAILY_BUG_CONTEST
+ iftrue .NoContest
+ checkcode VAR_WEEKDAY
+ ifequal TUESDAY, .ContestToday
+ ifequal THURSDAY, .ContestToday
+ ifequal SATURDAY, .ContestToday
+
+.NoContest:
+ farscall PhoneScript_Random4
+ ifequal 0, .Nugget
+ farjump Phone_GenericCall_Male
+
+.ContestToday:
+ farjump PhoneScript_BugCatchingContest
+
+.Nugget:
+ setflag ENGINE_DEREK_HAS_NUGGET
+ landmarktotext ROUTE_39, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Male
diff --git a/engine/phone/scripts/elm.asm b/engine/phone/scripts/elm.asm
new file mode 100644
index 000000000..6a954b3f7
--- /dev/null
+++ b/engine/phone/scripts/elm.asm
@@ -0,0 +1,101 @@
+ElmPhoneScript1:
+ checkcode VAR_SPECIALPHONECALL
+ ifequal SPECIALCALL_POKERUS, .pokerus
+ checkevent EVENT_SHOWED_TOGEPI_TO_ELM
+ iftrue .discovery
+ checkevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
+ iffalse .next
+ checkevent EVENT_TOGEPI_HATCHED
+ iftrue .egghatched
+.next
+ checkevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
+ iftrue .eggunhatched
+ checkevent EVENT_ELMS_AIDE_IN_LAB
+ iftrue .assistant
+ checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
+ iftrue .checkingegg
+ checkevent EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
+ iftrue .stolen
+ checkevent EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON
+ iftrue .sawmrpokemon
+ farwritetext ElmPhoneStartText
+ end
+
+.sawmrpokemon
+ farwritetext ElmPhoneSawMrPokemonText
+ end
+
+.stolen
+ farwritetext ElmPhonePokemonStolenText
+ end
+
+.checkingegg
+ farwritetext ElmPhoneCheckingEggText
+ end
+
+.assistant
+ farwritetext ElmPhoneAssistantText
+ end
+
+.eggunhatched
+ farwritetext ElmPhoneEggUnhatchedText
+ end
+
+.egghatched
+ farwritetext ElmPhoneEggHatchedText
+ setevent EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE
+ end
+
+.discovery
+ random 2
+ ifequal 0, .nextdiscovery
+ farwritetext ElmPhoneDiscovery1Text
+ end
+
+.nextdiscovery
+ farwritetext ElmPhoneDiscovery2Text
+ end
+
+.pokerus
+ farwritetext ElmPhonePokerusText
+ specialphonecall SPECIALCALL_NONE
+ end
+
+ElmPhoneScript2:
+ checkcode VAR_SPECIALPHONECALL
+ ifequal SPECIALCALL_ROBBED, .disaster
+ ifequal SPECIALCALL_ASSISTANT, .assistant
+ ifequal SPECIALCALL_WEIRDBROADCAST, .rocket
+ ifequal SPECIALCALL_SSTICKET, .gift
+ ifequal SPECIALCALL_MASTERBALL, .gift
+ farwritetext ElmPhonePokerusText
+ specialphonecall SPECIALCALL_NONE
+ end
+
+.disaster
+ farwritetext ElmPhoneDisasterText
+ specialphonecall SPECIALCALL_NONE
+ setevent EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
+ end
+
+.assistant
+ farwritetext ElmPhoneEggAssistantText
+ specialphonecall SPECIALCALL_NONE
+ clearevent EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
+ setevent EVENT_ELMS_AIDE_IN_LAB
+ end
+
+.rocket
+ farwritetext ElmPhoneRocketText
+ specialphonecall SPECIALCALL_NONE
+ end
+
+.gift
+ farwritetext ElmPhoneGiftText
+ specialphonecall SPECIALCALL_NONE
+ end
+
+.unused
+ farwritetext ElmPhoneUnusedText
+ specialphonecall SPECIALCALL_NONE
+ end
diff --git a/engine/phone/scripts/erin.asm b/engine/phone/scripts/erin.asm
new file mode 100644
index 000000000..e486aa724
--- /dev/null
+++ b/engine/phone/scripts/erin.asm
@@ -0,0 +1,40 @@
+ErinPhoneScript1:
+ trainertotext PICNICKER, ERIN1, MEM_BUFFER_0
+ checkflag ENGINE_ERIN
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_ERIN_SATURDAY_NIGHT
+ iftrue .NotSaturday
+ checkcode VAR_WEEKDAY
+ ifnotequal SATURDAY, .NotSaturday
+ checktime NITE
+ iftrue ErinSaturdayNight
+
+.NotSaturday:
+ farjump ErinWorkingHardScript
+
+.WantsBattle:
+ landmarktotext ROUTE_46, MEM_BUFFER_2
+ farjump ErinComeBattleScript
+
+ErinPhoneScript2:
+ trainertotext PICNICKER, ERIN1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_ERIN
+ iftrue .GenericCall
+ checkflag ENGINE_ERIN_SATURDAY_NIGHT
+ iftrue .GenericCall
+ farscall PhoneScript_Random3
+ ifequal 0, ErinWantsBattle
+ ifequal 1, ErinWantsBattle
+
+.GenericCall:
+ farjump Phone_GenericCall_Female
+
+ErinSaturdayNight:
+ setflag ENGINE_ERIN_SATURDAY_NIGHT
+
+ErinWantsBattle:
+ landmarktotext ROUTE_46, MEM_BUFFER_2
+ setflag ENGINE_ERIN
+ farjump PhoneScript_WantsToBattle_Female
diff --git a/engine/phone/scripts/gaven.asm b/engine/phone/scripts/gaven.asm
new file mode 100644
index 000000000..ff4c6c66c
--- /dev/null
+++ b/engine/phone/scripts/gaven.asm
@@ -0,0 +1,44 @@
+GavenPhoneScript1:
+ trainertotext COOLTRAINERM, GAVEN3, MEM_BUFFER_0
+ checkflag ENGINE_GAVEN
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_GAVEN_THURSDAY_MORNING
+ iftrue .NotThursday
+ checkcode VAR_WEEKDAY
+ ifnotequal THURSDAY, .NotThursday
+ checktime MORN
+ iftrue GavenThursdayMorning
+
+.NotThursday:
+ farjump UnknownScript_0xa0910
+
+.WantsBattle:
+ landmarktotext ROUTE_26, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a37
+
+GavenPhoneScript2:
+ trainertotext COOLTRAINERM, GAVEN3, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_GAVEN
+ iftrue .WaitingForBattle
+ checkflag ENGINE_GAVEN_THURSDAY_MORNING
+ iftrue .WaitingForBattle
+ farscall PhoneScript_Random2
+ ifequal 0, GavenWantsRematch
+
+.WaitingForBattle:
+ farscall PhoneScript_Random3
+ ifequal 0, GavenFoundRare
+ farjump Phone_GenericCall_Male
+
+GavenThursdayMorning:
+ setflag ENGINE_GAVEN_THURSDAY_MORNING
+
+GavenWantsRematch:
+ landmarktotext ROUTE_26, MEM_BUFFER_2
+ setflag ENGINE_GAVEN
+ farjump PhoneScript_WantsToBattle_Male
+
+GavenFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
diff --git a/engine/phone/scripts/generic.asm b/engine/phone/scripts/generic.asm
new file mode 100644
index 000000000..407480d36
--- /dev/null
+++ b/engine/phone/scripts/generic.asm
@@ -0,0 +1,1263 @@
+PhoneScript_Random2:
+ random 2
+ end
+
+PhoneScript_Random3:
+ random 3
+ end
+
+PhoneScript_Random4:
+ random 4
+ end
+
+PhoneScript_Random5:
+ random 5
+ end
+
+PhoneScript_Random11:
+ random 11
+ end
+
+PhoneScript_AnswerPhone_Male:
+ checktime DAY
+ iftrue PhoneScript_AnswerPhone_Male_Day
+ checktime NITE
+ iftrue PhoneScript_AnswerPhone_Male_Nite
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4dc5
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b5073
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b5270
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b55ae
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b589a
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5a3b
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5c10
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b5f7a
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b60f5
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b638c
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b6454
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b659d
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b67e2
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b69a8
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6b39
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6c96
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7019
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b71d5
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b730b
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b73c7
+ buttonsound
+ end
+
+PhoneScript_AnswerPhone_Male_Day:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4ded
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b509b
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b52a5
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b55da
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b58c2
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5a74
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5c63
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b5f9e
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b611b
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b63a8
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b647e
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b65c7
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b680e
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b69d2
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6b65
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6cc6
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7057
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b71fc
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b7331
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b73ef
+ buttonsound
+ end
+
+PhoneScript_AnswerPhone_Male_Nite:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4e16
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b50c2
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b52cc
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b55fc
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b58ea
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5a9f
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5cb6
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b5fc9
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b6149
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b63c4
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b64a8
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b65e3
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b6836
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b69f8
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6b92
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6cf6
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7092
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b722a
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b7357
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b7417
+ buttonsound
+ end
+
+PhoneScript_AnswerPhone_Female:
+ checktime DAY
+ iftrue PhoneScript_AnswerPhone_Female_Day
+ checktime NITE
+ iftrue PhoneScript_AnswerPhone_Female_Nite
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b4f21
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b53f7
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b5702
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5d9f
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b626a
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b66c8
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6e7c
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b751a
+ buttonsound
+ end
+
+PhoneScript_AnswerPhone_Female_Day:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b4f4d
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b5424
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b572e
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5dcc
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b6296
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b66ec
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6ea6
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b7548
+ buttonsound
+ end
+
+PhoneScript_AnswerPhone_Female_Nite:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b4f75
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b5446
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b575a
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5df8
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b62c5
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b6713
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6ec9
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b756f
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Male:
+ checktime DAY
+ iftrue PhoneScript_GreetPhone_Male_Day
+ checktime NITE
+ iftrue PhoneScript_GreetPhone_Male_Nite
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4e3e
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b50e9
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b5301
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b5628
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b5912
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5ad8
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5d09
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b5ff6
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b616e
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b63e3
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b64d2
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b660d
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b6862
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b6a22
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6bb9
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6d26
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b70e7
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b725c
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b737f
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b743f
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Male_Day:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4e72
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b511a
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b5335
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b564c
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b5948
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5b0b
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5d21
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b6017
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b618f
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b6407
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b6506
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b6624
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b6890
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b6a56
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6bef
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6d57
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7112
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b7283
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b7397
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b746f
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Male_Nite:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4e9e
+ buttonsound
+ end
+
+.Huey:
+ farwritetext UnknownText_0x1b5154
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b535f
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b5670
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b597c
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5b37
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5d39
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b6041
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b61bd
+ buttonsound
+ end
+
+.Irwin:
+ farwritetext UnknownText_0x1b642c
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b6539
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b663b
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b68ba
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b6a8b
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6c23
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6d88
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7132
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b72a5
+ buttonsound
+ end
+
+.Kenji:
+ farwritetext UnknownText_0x1b73af
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b749b
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Female:
+ checktime DAY
+ iftrue PhoneScript_GreetPhone_Female_Day
+ checktime NITE
+ iftrue PhoneScript_GreetPhone_Female_Nite
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b4fa1
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b5472
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b5786
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5e25
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b62f1
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b6738
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6ef3
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b758f
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Female_Day:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b4fda
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b54a6
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b57b7
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5e59
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b630e
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b6757
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6f1c
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b75ac
+ buttonsound
+ end
+
+PhoneScript_GreetPhone_Female_Nite:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b5004
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b54d4
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b57e8
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5e8e
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b6331
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b6776
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6f37
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b75c9
+ buttonsound
+ end
+
+PhoneScript_Generic_Male:
+ checkcode VAR_CALLERID
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
+
+.Jack:
+ farwritetext UnknownText_0x1b4ecd
+ buttonsound
+ end
+
+.Unknown:
+ farwritetext UnknownText_0x1b518b
+ buttonsound
+ end
+
+.Gaven:
+ farwritetext UnknownText_0x1b5393
+ buttonsound
+ end
+
+.Jose:
+ farwritetext UnknownText_0x1b5694
+ buttonsound
+ end
+
+.Joey:
+ farwritetext UnknownText_0x1b59b2
+ buttonsound
+ end
+
+.Wade:
+ farwritetext UnknownText_0x1b5b68
+ buttonsound
+ end
+
+.Ralph:
+ farwritetext UnknownText_0x1b5d51
+ buttonsound
+ end
+
+.Anthony:
+ farwritetext UnknownText_0x1b606f
+ buttonsound
+ end
+
+.Todd:
+ farwritetext UnknownText_0x1b61f2
+ buttonsound
+ end
+
+.Arnie:
+ farwritetext UnknownText_0x1b656c
+ buttonsound
+ end
+
+.Alan:
+ farwritetext UnknownText_0x1b6652
+ buttonsound
+ end
+
+.Chad:
+ farwritetext UnknownText_0x1b68e8
+ buttonsound
+ end
+
+.Derek:
+ farwritetext UnknownText_0x1b6ac2
+ buttonsound
+ end
+
+.Tully:
+ farwritetext UnknownText_0x1b6c56
+ buttonsound
+ end
+
+.Brent:
+ farwritetext UnknownText_0x1b6db9
+ buttonsound
+ end
+
+.Vance:
+ farwritetext UnknownText_0x1b7161
+ buttonsound
+ end
+
+.Wilton:
+ farwritetext UnknownText_0x1b72d0
+ buttonsound
+ end
+
+.Parry:
+ farwritetext UnknownText_0x1b74c8
+ buttonsound
+ end
+
+PhoneScript_Generic_Female:
+ checkcode VAR_CALLERID
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
+
+.Beverly:
+ farwritetext UnknownText_0x1b502b
+ buttonsound
+ end
+
+.Beth:
+ farwritetext UnknownText_0x1b5510
+ buttonsound
+ end
+
+.Reena:
+ farwritetext UnknownText_0x1b5819
+ buttonsound
+ end
+
+.Liz:
+ farwritetext UnknownText_0x1b5ebe
+ buttonsound
+ end
+
+.Gina:
+ farwritetext UnknownText_0x1b6352
+ buttonsound
+ end
+
+.Dana:
+ farwritetext UnknownText_0x1b6795
+ buttonsound
+ end
+
+.Tiffany:
+ farwritetext UnknownText_0x1b6f60
+ buttonsound
+ end
+
+.Erin:
+ farwritetext UnknownText_0x1b75e5
+ buttonsound
+ end
+
+PhoneScript_MonFlavorText:
+ special RandomPhoneMon
+ farscall PhoneScript_Random2
+ ifequal $0, .TooEnergetic
+ farwritetext UnknownText_0x1b518b
+ buttonsound
+ farjump PhoneScript_HangupText_Male
+
+.TooEnergetic:
+ farjump .unnecessary
+
+.unnecessary
+ farwritetext UnknownText_0x1b522b
+ buttonsound
+ farjump PhoneScript_HangupText_Male
+
+GrandmaString: db "Grandma@"
+GrandpaString: db "Grandpa@"
+MomString: db "Mom@"
+DadString: db "Dad@"
+SisterString: db "Sister@"
+BrotherString: db "Brother@"
diff --git a/engine/phone/scripts/gina.asm b/engine/phone/scripts/gina.asm
new file mode 100644
index 000000000..ff8471070
--- /dev/null
+++ b/engine/phone/scripts/gina.asm
@@ -0,0 +1,72 @@
+GinaPhoneScript1:
+ trainertotext PICNICKER, GINA1, MEM_BUFFER_0
+ checkflag ENGINE_GINA
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_GINA_SUNDAY_AFTERNOON
+ iftrue .NotSunday
+ checkflag ENGINE_GINA_HAS_LEAF_STONE
+ iftrue .HasLeafStone
+ checkcode VAR_WEEKDAY
+ ifnotequal SUNDAY, .NotSunday
+ checktime DAY
+ iftrue GinaSundayDay
+
+.NotSunday:
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue .Rockets
+ farjump UnknownScript_0xa0960
+
+.Rockets:
+ farjump UnknownScript_0xa05c6
+
+.WantsBattle:
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a69
+
+.HasLeafStone:
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ farjump UnknownScript_0xa0abd
+
+GinaPhoneScript2:
+ trainertotext PICNICKER, GINA1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue GinaRockets
+ checkflag ENGINE_GINA
+ iftrue .Generic
+ checkflag ENGINE_GINA_SUNDAY_AFTERNOON
+ iftrue .Generic
+ checkflag ENGINE_GINA_HAS_LEAF_STONE
+ iftrue .Generic
+ checkevent EVENT_GINA_GAVE_LEAF_STONE
+ iftrue .GaveLeafStone
+ farscall PhoneScript_Random2
+ ifequal 0, GinaHasLeafStone
+
+.GaveLeafStone:
+ farscall PhoneScript_Random11
+ ifequal 0, GinaHasLeafStone
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, GinaWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Female
+
+GinaSundayDay:
+ setflag ENGINE_GINA_SUNDAY_AFTERNOON
+
+GinaWantsBattle:
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ setflag ENGINE_GINA
+ farjump PhoneScript_WantsToBattle_Female
+
+GinaRockets:
+ farjump UnknownScript_0xa05c6
+
+GinaHasLeafStone:
+ setflag ENGINE_GINA_HAS_LEAF_STONE
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Female
diff --git a/engine/phone/scripts/hangups.asm b/engine/phone/scripts/hangups.asm
new file mode 100644
index 000000000..3dca4a0bb
--- /dev/null
+++ b/engine/phone/scripts/hangups.asm
@@ -0,0 +1,183 @@
+JackPhoneTips:
+ farwritetext UnknownText_0x1745c2
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0900:
+ farwritetext UnknownText_0x17485b
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0908:
+ farwritetext UnknownText_0x17496b
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0910:
+ farwritetext UnknownText_0x174c29
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0918:
+ farwritetext UnknownText_0x174ec5
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0920:
+ farwritetext UnknownText_0x17519b
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0928:
+ farwritetext UnknownText_0x17549b
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0930:
+ farwritetext UnknownText_0x17571d
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0938:
+ farwritetext UnknownText_0x175abe
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0940:
+ farwritetext UnknownText_0x175eaf
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0948:
+ farwritetext UnknownText_0x1768b0
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0950:
+ farwritetext UnknownText_0x176d32
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0958:
+ farwritetext UnknownText_0x1770fb
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0960:
+ farwritetext UnknownText_0x177465
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0968:
+ farwritetext UnknownText_0x64bc6
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0970:
+ farwritetext UnknownText_0x64e90
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0978:
+ farwritetext UnknownText_0x65161
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0980:
+ farwritetext UnknownText_0x65a23
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0988:
+ farwritetext UnknownText_0x65d5c
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0990:
+ farwritetext UnknownText_0x65ff2
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0998:
+ farwritetext UnknownText_0x6651e
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa09a0:
+ farwritetext UnknownText_0x66882
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+VanceLookingForward:
+ farwritetext VanceLookingForwardText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+WiltonHaventFoundAnything:
+ farwritetext WiltonHaventFoundAnythingText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+ParryBattleWithMe:
+ farwritetext ParryBattleWithMeText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+ErinWorkingHardScript:
+ farwritetext ErinWorkingHardText
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa09c8:
+ random 3
+ ifequal 0, UnknownScript_0xa09d6
+ ifequal 1, UnknownScript_0xa09de
+ ifequal 2, UnknownScript_0xa09e6
+
+UnknownScript_0xa09d6:
+ farwritetext UnknownText_0x64846
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa09de:
+ farwritetext UnknownText_0x64881
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa09e6:
+ farwritetext UnknownText_0x648dc
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+KenjiAnswerPhoneScript:
+ checkcode VAR_KENJI_BREAK
+ ifequal 2, .Training
+ ifequal 1, .OnBreak
+ farwritetext UnknownText_0x66e17
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Training:
+ farwritetext UnknownText_0x66e67
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.OnBreak:
+ checktime MORN
+ iftrue .Morning
+ checktime NITE
+ iftrue .Night
+ setevent EVENT_KENJI_ON_BREAK
+ farwritetext KenjiBreakText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Morning:
+ farwritetext UnknownText_0x66ed3
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Night:
+ farwritetext UnknownText_0x66f52
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/hangups_2.asm b/engine/phone/scripts/hangups_2.asm
new file mode 100644
index 000000000..9aff4267c
--- /dev/null
+++ b/engine/phone/scripts/hangups_2.asm
@@ -0,0 +1,49 @@
+UnknownScript_0xa0aa5:
+ farwritetext UnknownText_0x174895
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0aad:
+ farwritetext UnknownText_0x17529c
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0ab5:
+ farwritetext UnknownText_0x175b6d
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0abd:
+ farwritetext UnknownText_0x17750e
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0ac5:
+ farwritetext UnknownText_0x64f1a
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0acd:
+ farwritetext UnknownText_0x6520f
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+UnknownScript_0xa0ad5:
+ farwritetext UnknownText_0x65da6
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0add:
+ farwritetext UnknownText_0x66087
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+UnknownScript_0xa0ae5:
+ farwritetext UnknownText_0x6691d
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+WiltonWantThis:
+ farwritetext WiltonWantThisText
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/huey.asm b/engine/phone/scripts/huey.asm
new file mode 100644
index 000000000..da79d1c6c
--- /dev/null
+++ b/engine/phone/scripts/huey.asm
@@ -0,0 +1,41 @@
+HueyPhoneScript1:
+ trainertotext SAILOR, HUEY1, MEM_BUFFER_0
+ checkflag ENGINE_HUEY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_HUEY_WEDNESDAY_NIGHT
+ iftrue .NotWednesday
+ checkcode VAR_WEEKDAY
+ ifnotequal WEDNESDAY, .NotWednesday
+ checktime NITE
+ iftrue HueyWednesdayNight
+
+.NotWednesday:
+ special RandomPhoneMon
+ farjump UnknownScript_0xa0908
+
+.WantsBattle:
+ landmarktotext LIGHTHOUSE, MEM_BUFFER_2
+ farjump HueyWantsBattleScript
+
+HueyPhoneScript2:
+ trainertotext SAILOR, HUEY1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_HUEY
+ iftrue .Flavor
+ checkflag ENGINE_HUEY_WEDNESDAY_NIGHT
+ iftrue .Flavor
+ farscall PhoneScript_Random3
+ ifequal 0, HueyWantsBattle
+ ifequal 1, HueyWantsBattle
+
+.Flavor:
+ farjump PhoneScript_MonFlavorText
+
+HueyWednesdayNight:
+ setflag ENGINE_HUEY_WEDNESDAY_NIGHT
+
+HueyWantsBattle:
+ landmarktotext LIGHTHOUSE, MEM_BUFFER_2
+ setflag ENGINE_HUEY
+ farjump PhoneScript_WantsToBattle_Male
diff --git a/engine/phone/scripts/irwin.asm b/engine/phone/scripts/irwin.asm
new file mode 100644
index 000000000..8b8afbd1e
--- /dev/null
+++ b/engine/phone/scripts/irwin.asm
@@ -0,0 +1,19 @@
+IrwinPhoneScript1:
+ trainertotext JUGGLER, IRWIN1, MEM_BUFFER_0
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue .Rockets
+ farjump UnknownScript_0xa09c8
+
+.Rockets:
+ farjump IrwinRocketRumor
+
+IrwinPhoneScript2:
+ trainertotext JUGGLER, IRWIN1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
+ iftrue .Rockets
+ farjump IrwinRumorScript
+
+.Rockets:
+ farjump IrwinRocketRumor
diff --git a/engine/phone/scripts/irwin_gossip.asm b/engine/phone/scripts/irwin_gossip.asm
new file mode 100644
index 000000000..b7de916cd
--- /dev/null
+++ b/engine/phone/scripts/irwin_gossip.asm
@@ -0,0 +1,88 @@
+IrwinRumorScript:
+ checkevent EVENT_OPENED_MT_SILVER
+ iftrue .MtSilver
+ checkevent EVENT_FOUGHT_SNORLAX
+ iftrue .Snorlax
+ checkevent EVENT_GOT_PASS_FROM_COPYCAT
+ iftrue .TrainPass
+ checkflag ENGINE_MARSHBADGE
+ iftrue .MarshBadge
+ checkflag ENGINE_FLYPOINT_VERMILION
+ iftrue .VermilionCity
+ checkevent EVENT_BEAT_ELITE_FOUR
+ iftrue .EliteFour
+ checkflag ENGINE_RISINGBADGE
+ iftrue .RisingBadge
+ checkevent EVENT_CLEARED_RADIO_TOWER
+ iftrue .RadioTower
+ checkevent EVENT_CLEARED_ROCKET_HIDEOUT
+ iftrue .RocketHideout
+ checkevent EVENT_JASMINE_RETURNED_TO_GYM
+ iftrue .JasmineReturned
+ checkflag ENGINE_FOGBADGE
+ iftrue .FogBadge
+ checkflag ENGINE_PLAINBADGE
+ iftrue .PlainBadge
+ farwritetext IrwinCalledRightAwayText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.PlainBadge:
+ farwritetext UnknownText_0x64099
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.JasmineReturned:
+ farwritetext UnknownText_0x640e6
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.RocketHideout:
+ farwritetext UnknownText_0x6416d
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.RadioTower:
+ farwritetext UnknownText_0x641e8
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.RisingBadge:
+ farwritetext UnknownText_0x64247
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.EliteFour:
+ farwritetext UnknownText_0x642bb
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.VermilionCity:
+ farwritetext UnknownText_0x643d4
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.TrainPass:
+ farwritetext UnknownText_0x64448
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Snorlax:
+ farwritetext UnknownText_0x6455b
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.MtSilver:
+ farwritetext UnknownText_0x645ff
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.FogBadge:
+ farwritetext UnknownText_0x646df
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.MarshBadge:
+ farwritetext UnknownText_0x647d8
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/jack.asm b/engine/phone/scripts/jack.asm
new file mode 100644
index 000000000..7e2cfad25
--- /dev/null
+++ b/engine/phone/scripts/jack.asm
@@ -0,0 +1,49 @@
+JackPhoneScript1:
+ trainertotext SCHOOLBOY, JACK1, MEM_BUFFER_0
+ checkflag ENGINE_JACK
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_JACK_MONDAY_MORNING
+ iftrue .NotMonday
+ checkcode VAR_WEEKDAY
+ ifnotequal MONDAY, .NotMonday
+ checktime MORN
+ iftrue JackMondayMorning
+
+.NotMonday:
+ farjump JackPhoneTips
+
+.WantsBattle:
+ landmarktotext NATIONAL_PARK, MEM_BUFFER_2
+ farjump JackWantsBattleScript
+
+JackPhoneScript2:
+ trainertotext SCHOOLBOY, JACK1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farscall PhoneScript_Random2
+ ifequal 0, JackBattleTrivia
+ checkflag ENGINE_JACK
+ iftrue .WaitingForBattle
+ checkflag ENGINE_JACK_MONDAY_MORNING
+ iftrue .WaitingForBattle
+ farscall PhoneScript_Random2
+ ifequal 0, JackWantsToBattle
+
+.WaitingForBattle:
+ farscall PhoneScript_Random3
+ ifequal 0, JackFindsRare
+ farjump Phone_GenericCall_Male
+
+JackMondayMorning:
+ setflag ENGINE_JACK_MONDAY_MORNING
+
+JackWantsToBattle:
+ landmarktotext NATIONAL_PARK, MEM_BUFFER_2
+ setflag ENGINE_JACK
+ farjump PhoneScript_WantsToBattle_Male
+
+JackFindsRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+JackBattleTrivia:
+ farjump JackTriviaScript
diff --git a/engine/phone/scripts/jack_gossip.asm b/engine/phone/scripts/jack_gossip.asm
new file mode 100644
index 000000000..41a0ba4c2
--- /dev/null
+++ b/engine/phone/scripts/jack_gossip.asm
@@ -0,0 +1,68 @@
+JackTriviaScript:
+ random 11
+ ifequal 0, .Thunder
+ ifequal 1, .Rollout
+ ifequal 2, .Solarbeam
+ ifequal 3, .Stomp
+ ifequal 4, .Gust
+ ifequal 5, .Twister
+ ifequal 6, .Earthquake
+ ifequal 7, .Magnitude
+ ifequal 8, .Sandstorm
+ ifequal 9, .SunnyDay
+ ifequal 10, .RainDance
+
+.Thunder:
+ farwritetext JackThunderTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Rollout:
+ farwritetext JackRolloutTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Solarbeam:
+ farwritetext JackSolarbeamTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Stomp:
+ farwritetext JackStompTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Gust:
+ farwritetext JackGustTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Twister:
+ farwritetext JackTwisterTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Earthquake:
+ farwritetext JackEarthquakeTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Magnitude:
+ farwritetext JackMagnitudeTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.Sandstorm:
+ farwritetext JackSandstormTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.SunnyDay:
+ farwritetext JackSunnyDayTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
+
+.RainDance:
+ farwritetext JackRainDanceTriviaText
+ buttonsound
+ jump PhoneScript_HangupText_Male
diff --git a/engine/phone/scripts/joey.asm b/engine/phone/scripts/joey.asm
new file mode 100644
index 000000000..0fc19f61f
--- /dev/null
+++ b/engine/phone/scripts/joey.asm
@@ -0,0 +1,41 @@
+JoeyPhoneScript1:
+ trainertotext YOUNGSTER, JOEY1, MEM_BUFFER_0
+ checkflag ENGINE_JOEY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_JOEY_MONDAY_AFTERNOON
+ iftrue .NotMonday
+ checkcode VAR_WEEKDAY
+ ifnotequal MONDAY, .NotMonday
+ checktime DAY
+ iftrue JoeyMondayAfternoon
+
+.NotMonday:
+ special RandomPhoneMon
+ farjump UnknownScript_0xa0930
+
+.WantsBattle:
+ landmarktotext ROUTE_30, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a4b
+
+JoeyPhoneScript2:
+ trainertotext YOUNGSTER, JOEY1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_JOEY
+ iftrue .Generic
+ checkflag ENGINE_JOEY_MONDAY_AFTERNOON
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, JoeyWantsBattle
+ ifequal 1, JoeyWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Male
+
+JoeyMondayAfternoon:
+ setflag ENGINE_JOEY_MONDAY_AFTERNOON
+
+JoeyWantsBattle:
+ landmarktotext ROUTE_30, MEM_BUFFER_2
+ setflag ENGINE_JOEY
+ farjump PhoneScript_WantsToBattle_Male
diff --git a/engine/phone/scripts/jose.asm b/engine/phone/scripts/jose.asm
new file mode 100644
index 000000000..d9a86723d
--- /dev/null
+++ b/engine/phone/scripts/jose.asm
@@ -0,0 +1,59 @@
+JosePhoneScript1:
+ trainertotext BIRD_KEEPER, JOSE2, MEM_BUFFER_0
+ checkflag ENGINE_JOSE
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_JOSE_SATURDAY_NIGHT
+ iftrue .NotSaturday
+ checkflag ENGINE_JOSE_HAS_STAR_PIECE
+ iftrue .HasItem
+ checkcode VAR_WEEKDAY
+ ifnotequal SATURDAY, .NotSaturday
+ checktime NITE
+ iftrue JoseSaturdayNight
+
+.NotSaturday:
+ farjump UnknownScript_0xa0920
+
+.WantsBattle:
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a41
+
+.HasItem:
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a41
+
+JosePhoneScript2:
+ trainertotext BIRD_KEEPER, JOSE2, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_JOSE
+ iftrue .Generic
+ checkflag ENGINE_JOSE_SATURDAY_NIGHT
+ iftrue .Generic
+ checkflag ENGINE_JOSE_HAS_STAR_PIECE
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, JoseWantsBattle
+ farscall PhoneScript_Random3
+ ifequal 0, JoseHasStarPiece
+
+.Generic:
+ farscall PhoneScript_Random3
+ ifequal 0, JoseFoundRare
+ farjump Phone_GenericCall_Male
+
+JoseSaturdayNight:
+ setflag ENGINE_JOSE_SATURDAY_NIGHT
+
+JoseWantsBattle:
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ setflag ENGINE_JOSE
+ farjump PhoneScript_WantsToBattle_Male
+
+JoseFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+JoseHasStarPiece:
+ setflag ENGINE_JOSE_HAS_STAR_PIECE
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Male
diff --git a/engine/phone/scripts/kenji.asm b/engine/phone/scripts/kenji.asm
new file mode 100644
index 000000000..4d03c9097
--- /dev/null
+++ b/engine/phone/scripts/kenji.asm
@@ -0,0 +1,9 @@
+KenjiPhoneScript1:
+ trainertotext BLACKBELT_T, KENJI3, MEM_BUFFER_0
+ farscall PhoneScript_AnswerPhone_Male
+ farjump KenjiAnswerPhoneScript
+
+KenjiPhoneScript2:
+ trainertotext BLACKBELT_T, KENJI3, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farjump KenjiCallingPhoneScript
diff --git a/engine/phone/scripts/liz.asm b/engine/phone/scripts/liz.asm
new file mode 100644
index 000000000..812d7dd40
--- /dev/null
+++ b/engine/phone/scripts/liz.asm
@@ -0,0 +1,102 @@
+LizPhoneScript1:
+ trainertotext PICNICKER, LIZ1, MEM_BUFFER_0
+ checkflag ENGINE_LIZ
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_LIZ_THURSDAY_AFTERNOON
+ iftrue .NotThursday
+ checkcode VAR_WEEKDAY
+ ifnotequal THURSDAY, .NotThursday
+ checktime DAY
+ iftrue LizThursdayAfternoon
+
+.NotThursday:
+ special RandomPhoneMon
+ farjump UnknownScript_0xa0948
+
+.WantsBattle:
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a5a
+
+LizPhoneScript2:
+ trainertotext PICNICKER, LIZ1, MEM_BUFFER_0
+ farscall PhoneScript_Random4
+ ifequal 0, LizWrongNumber
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_LIZ
+ iftrue .next
+ checkflag ENGINE_LIZ_THURSDAY_AFTERNOON
+ iftrue .next
+
+.next:
+ farscall PhoneScript_Random2
+ ifequal 0, LizGossip
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .Generic
+ farscall PhoneScript_Random2
+ ifequal 0, LizWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Female
+
+LizThursdayAfternoon:
+ setflag ENGINE_LIZ_THURSDAY_AFTERNOON
+
+LizWantsBattle:
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ setflag ENGINE_LIZ
+ farjump PhoneScript_WantsToBattle_Female
+
+LizWrongNumber:
+ farjump LizWrongNumberScript
+
+LizGossip:
+ random 9
+ ifequal 0, .CoolTrainerM
+ ifequal 1, .Beauty
+ ifequal 2, .Grunt
+ ifequal 3, .Teacher
+ ifequal 4, .SwimmerF
+ ifequal 5, .KimonoGirl
+ ifequal 6, .Skier
+ ifequal 7, .Medium
+ ifequal 8, .PokefanM
+
+.CoolTrainerM:
+ trainerclassname COOLTRAINERM, NICK
+ jump LizGossipScript
+
+.Beauty:
+ trainerclassname BEAUTY, VICTORIA
+ jump LizGossipScript
+
+.Grunt:
+ trainerclassname GRUNTM, GRUNTM_1
+ jump LizGossipScript
+
+.Teacher:
+ trainerclassname TEACHER, COLETTE
+ jump LizGossipScript
+
+.SwimmerF:
+ trainerclassname SWIMMERF, ELAINE
+ jump LizGossipScript
+
+.KimonoGirl:
+ trainerclassname KIMONO_GIRL, NAOKO1
+ jump LizGossipScript
+
+.Skier:
+ trainerclassname SKIER, ROXANNE
+ jump LizGossipScript
+
+.Medium:
+ trainerclassname MEDIUM, MARTHA
+ jump LizGossipScript
+
+.PokefanM:
+ trainerclassname POKEFANM, WILLIAM
+ jump LizGossipScript
+
+LizGossipScript:
+ farjump UnknownScript_0xa06da
diff --git a/engine/phone/scripts/liz_gossip.asm b/engine/phone/scripts/liz_gossip.asm
new file mode 100644
index 000000000..bb76813c1
--- /dev/null
+++ b/engine/phone/scripts/liz_gossip.asm
@@ -0,0 +1,62 @@
+UnknownScript_0xa06da:
+ random 10
+ ifequal 0, .RuinsOfAlph
+ ifequal 1, .Falkner
+ ifequal 2, .Earl
+ ifequal 3, .SurfPikachu
+ ifequal 4, .MooMooMilk
+ ifequal 5, .Salon
+ ifequal 6, .Whitney
+ ifequal 7, .BugCatchingContest
+ ifequal 8, .BeautifulMon
+ ifequal 9, .Forgot
+
+.RuinsOfAlph:
+ farwritetext UnknownText_0x176223
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.Falkner:
+ farwritetext UnknownText_0x1762c3
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.Earl:
+ farwritetext UnknownText_0x17638a
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.SurfPikachu:
+ farwritetext UnknownText_0x176424
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.MooMooMilk:
+ farwritetext UnknownText_0x1764eb
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.Salon:
+ farwritetext UnknownText_0x176599
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.Whitney:
+ farwritetext UnknownText_0x1766ac
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.BugCatchingContest:
+ farwritetext UnknownText_0x17674f
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.BeautifulMon:
+ farwritetext UnknownText_0x176816
+ buttonsound
+ jump PhoneScript_HangupText_Female
+
+.Forgot:
+ farwritetext UnknownText_0x17686d
+ buttonsound
+ jump PhoneScript_HangupText_Female
diff --git a/engine/phone/scripts/mom.asm b/engine/phone/scripts/mom.asm
new file mode 100644
index 000000000..b4c949f09
--- /dev/null
+++ b/engine/phone/scripts/mom.asm
@@ -0,0 +1,142 @@
+MomPhoneScript:
+ checkevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
+ iftrue .bcec5
+ checkevent EVENT_DUDE_TALKED_TO_YOU
+ iftrue MomPhoneLectureScript
+ checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
+ iftrue MomPhoneNoGymQuestScript
+ checkevent EVENT_GOT_A_POKEMON_FROM_ELM
+ iftrue MomPhoneNoPokedexScript
+ jump MomPhoneNoPokemonScript
+
+.bcec5
+ checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_8
+ iftrue MomPhoneHangUpScript
+ farwritetext MomPhoneGreetingText
+ buttonsound
+ mapnametotext MEM_BUFFER_0
+ checkcode VAR_ROOFPALETTE
+ ifequal 1, MomPhonePalette1
+ ifequal 2, MomPhonePalette2
+ jump MomPhoneOther
+
+MomPhoneLandmark:
+ farwritetext MomPhoneLandmarkText
+ buttonsound
+ jump MomSavingMoney
+
+MomPhonePalette1:
+ checkcode VAR_MAPGROUP
+ ifequal GROUP_NEW_BARK_TOWN, .newbark
+ ifequal GROUP_CHERRYGROVE_CITY, .cherrygrove
+ ifequal GROUP_VIOLET_CITY, .violet
+ ifequal GROUP_AZALEA_TOWN, .azalea
+ ifequal GROUP_GOLDENROD_CITY, .goldenrod
+ farwritetext MomPhoneGenericAreaText
+ buttonsound
+ jump MomSavingMoney
+
+.newbark
+ farwritetext MomPhoneNewBarkText
+ buttonsound
+ jump MomSavingMoney
+
+.cherrygrove
+ farwritetext MomPhoneCherrygroveText
+ buttonsound
+ jump MomSavingMoney
+
+.violet
+ landmarktotext SPROUT_TOWER, MEM_BUFFER_1
+ jump MomPhoneLandmark
+.azalea
+ landmarktotext SLOWPOKE_WELL, MEM_BUFFER_1
+ jump MomPhoneLandmark
+.goldenrod
+ landmarktotext RADIO_TOWER, MEM_BUFFER_1
+ jump MomPhoneLandmark
+
+MomPhonePalette2:
+ farwritetext MomOtherAreaText
+ buttonsound
+ jump MomSavingMoney
+
+MomPhoneOther:
+ farwritetext MomDeterminedText
+ buttonsound
+ jump MomSavingMoney
+
+MomSavingMoney:
+ checkflag ENGINE_MOM_SAVING_MONEY
+ iffalse .NotSaving
+ checkmoney MOMS_MONEY, 0
+ ifequal HAVE_MORE, .SavingHasMoney
+ jump .SavingNoMoney
+
+.NotSaving:
+ checkmoney MOMS_MONEY, 0
+ ifequal HAVE_MORE, .HasMoney
+ jump .NoMoney
+
+.SavingHasMoney:
+ readmoney MOMS_MONEY, MEM_BUFFER_0
+ farwritetext MomCheckBalanceText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ jump MomPhoneWontSaveMoneyScript
+
+.SavingNoMoney:
+ farwritetext MomImportantToSaveText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ jump MomPhoneWontSaveMoneyScript
+
+.NoMoney:
+ farwritetext MomYoureNotSavingText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ jump MomPhoneWontSaveMoneyScript
+
+.HasMoney:
+ readmoney MOMS_MONEY, MEM_BUFFER_0
+ farwritetext MomYouveSavedText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ jump MomPhoneWontSaveMoneyScript
+
+MomPhoneSaveMoneyScript:
+ setflag ENGINE_MOM_SAVING_MONEY
+ farwritetext MomOKIllSaveText
+ buttonsound
+ jump MomPhoneHangUpScript
+
+MomPhoneWontSaveMoneyScript:
+ clearflag ENGINE_MOM_SAVING_MONEY
+ farwritetext MomPhoneWontSaveMoneyText
+ buttonsound
+ jump MomPhoneHangUpScript
+
+MomPhoneHangUpScript:
+ farwritetext MomPhoneHangUpText
+ end
+
+MomPhoneNoPokemonScript:
+ farwritetext MomPhoneNoPokemonText
+ end
+
+MomPhoneNoPokedexScript:
+ farwritetext MomPhoneNoPokedexText
+ end
+
+MomPhoneNoGymQuestScript:
+ farwritetext MomPhoneNoGymQuestText
+ end
+
+MomPhoneLectureScript:
+ setevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
+ setflag ENGINE_MOM_ACTIVE
+ specialphonecall SPECIALCALL_NONE
+ farwritetext MomPhoneLectureText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ jump MomPhoneWontSaveMoneyScript
diff --git a/engine/phone/scripts/parry.asm b/engine/phone/scripts/parry.asm
new file mode 100644
index 000000000..0a91e2349
--- /dev/null
+++ b/engine/phone/scripts/parry.asm
@@ -0,0 +1,40 @@
+ParryPhoneScript1:
+ trainertotext HIKER, PARRY1, MEM_BUFFER_0
+ checkflag ENGINE_PARRY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_PARRY_FRIDAY_AFTERNOON
+ iftrue .WantsRematch
+ checkcode VAR_WEEKDAY
+ ifnotequal FRIDAY, .WantsRematch
+ checktime DAY
+ iftrue ParryFridayDay
+
+.WantsRematch:
+ farjump ParryBattleWithMe
+
+.WantsBattle:
+ landmarktotext ROUTE_45, MEM_BUFFER_2
+ farjump ParryHaventYouGottenTo
+
+ParryPhoneScript2:
+ trainertotext HIKER, PARRY1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_PARRY
+ iftrue .GenericCall
+ checkflag ENGINE_PARRY_FRIDAY_AFTERNOON
+ iftrue .GenericCall
+ farscall PhoneScript_Random2
+ ifequal 0, ParryWantsBattle
+ ifequal 1, ParryWantsBattle
+
+.GenericCall:
+ farjump Phone_GenericCall_Male
+
+ParryFridayDay:
+ setflag ENGINE_PARRY_FRIDAY_AFTERNOON
+
+ParryWantsBattle:
+ landmarktotext ROUTE_45, MEM_BUFFER_2
+ setflag ENGINE_PARRY
+ farjump PhoneScript_WantsToBattle_Male
diff --git a/engine/phone/scripts/ralph.asm b/engine/phone/scripts/ralph.asm
new file mode 100644
index 000000000..2fe9449f3
--- /dev/null
+++ b/engine/phone/scripts/ralph.asm
@@ -0,0 +1,59 @@
+RalphPhoneScript1:
+ trainertotext FISHER, RALPH1, MEM_BUFFER_0
+ checkflag ENGINE_RALPH
+ iftrue .Rematch
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_RALPH_WEDNESDAY_MORNING
+ iftrue .CheckSwarm
+ checkcode VAR_WEEKDAY
+ ifnotequal WEDNESDAY, .CheckSwarm
+ checktime MORN
+ iftrue Ralph_WednesdayMorning
+.CheckSwarm:
+ checkflag ENGINE_FISH_SWARM
+ iftrue .ReportSwarm
+ farjump UnknownScript_0xa0940
+
+.Rematch:
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a55
+
+.ReportSwarm:
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ farjump UnknownScript_0xa0af5
+
+RalphPhoneScript2:
+ trainertotext FISHER, RALPH1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .CheckSwarm
+ checkflag ENGINE_RALPH
+ iftrue .CheckSwarm
+ checkflag ENGINE_RALPH_WEDNESDAY_MORNING
+ iftrue .CheckSwarm
+ farscall PhoneScript_Random2
+ ifequal 0, Ralph_FightMe
+.CheckSwarm:
+ farscall PhoneScript_Random5
+ ifequal 0, Ralph_SetUpSwarm
+ farjump Phone_GenericCall_Male
+
+Ralph_WednesdayMorning:
+ setflag ENGINE_RALPH_WEDNESDAY_MORNING
+Ralph_FightMe:
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ setflag ENGINE_RALPH
+ farjump PhoneScript_WantsToBattle_Male
+
+Ralph_SetUpSwarm:
+ checkflag ENGINE_FISH_SWARM
+ iftrue .Generic
+ setflag ENGINE_FISH_SWARM
+ pokenamemem QWILFISH, MEM_BUFFER_1
+ landmarktotext ROUTE_32, MEM_BUFFER_2
+ writebyte FISHSWARM_QWILFISH
+ special ActivateFishingSwarm
+ farjump UnknownScript_0xa05d6
+
+.Generic:
+ farjump Phone_GenericCall_Male
diff --git a/engine/phone/scripts/reena.asm b/engine/phone/scripts/reena.asm
new file mode 100644
index 000000000..dd7818f7d
--- /dev/null
+++ b/engine/phone/scripts/reena.asm
@@ -0,0 +1,39 @@
+ReenaPhoneScript1:
+ trainertotext COOLTRAINERF, REENA1, MEM_BUFFER_0
+ checkflag ENGINE_REENA
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_REENA_SUNDAY_MORNING
+ iftrue .NotSunday
+ checkcode VAR_WEEKDAY
+ ifnotequal SUNDAY, .NotSunday
+ checktime MORN
+ iftrue ReenaSundayMorning
+
+.NotSunday:
+ farjump UnknownScript_0xa0928
+
+.WantsBattle:
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a46
+
+ReenaPhoneScript2:
+ trainertotext COOLTRAINERF, REENA1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_REENA
+ iftrue .Generic
+ checkflag ENGINE_REENA_SUNDAY_MORNING
+ iftrue .Generic
+ farscall PhoneScript_Random2
+ ifequal 0, ReenaWantsBattle
+
+.Generic:
+ farjump Phone_GenericCall_Female
+
+ReenaSundayMorning:
+ setflag ENGINE_REENA_SUNDAY_MORNING
+
+ReenaWantsBattle:
+ landmarktotext ROUTE_27, MEM_BUFFER_2
+ setflag ENGINE_REENA
+ farjump PhoneScript_WantsToBattle_Female
diff --git a/engine/phone/scripts/reminders.asm b/engine/phone/scripts/reminders.asm
new file mode 100644
index 000000000..d93418d36
--- /dev/null
+++ b/engine/phone/scripts/reminders.asm
@@ -0,0 +1,95 @@
+JackWantsBattleScript:
+ farwritetext UnknownText_0x174638
+ end
+
+HueyWantsBattleScript:
+ farwritetext UnknownText_0x1749c7
+ end
+
+UnknownScript_0xa0a37:
+ farwritetext UnknownText_0x174c49
+ end
+
+BethBattleReminderScript:
+ farwritetext BethForgetDealText
+ end
+
+UnknownScript_0xa0a41:
+ farwritetext UnknownText_0x17520a
+ end
+
+UnknownScript_0xa0a46:
+ farwritetext UnknownText_0x1754e5
+ end
+
+UnknownScript_0xa0a4b:
+ farwritetext UnknownText_0x175786
+ end
+
+UnknownScript_0xa0a50:
+ farwritetext UnknownText_0x175b1e
+ end
+
+UnknownScript_0xa0a55:
+ farwritetext UnknownText_0x175f11
+ end
+
+UnknownScript_0xa0a5a:
+ farwritetext UnknownText_0x1769da
+ end
+
+UnknownScript_0xa0a5f:
+ farwritetext UnknownText_0x176d85
+ end
+
+UnknownScript_0xa0a64:
+ farwritetext UnknownText_0x177138
+ end
+
+UnknownScript_0xa0a69:
+ farwritetext UnknownText_0x1774c1
+ end
+
+UnknownScript_0xa0a6e:
+ farwritetext UnknownText_0x64c13
+ end
+
+UnknownScript_0xa0a73:
+ farwritetext UnknownText_0x64ed4
+ end
+
+UnknownScript_0xa0a78:
+ farwritetext UnknownText_0x651bf
+ end
+
+UnknownScript_0xa0a7d:
+ farwritetext UnknownText_0x65a63
+ end
+
+UnknownScript_0xa0a82:
+ farwritetext UnknownText_0x66043
+ end
+
+UnknownScript_0xa0a87:
+ farwritetext UnknownText_0x66579
+ end
+
+UnknownScript_0xa0a8c:
+ farwritetext UnknownText_0x668a3
+ end
+
+VanceHurryHurry:
+ farwritetext VanceHurryHurryText
+ end
+
+WiltonNotBiting:
+ farwritetext WiltonNotBitingText
+ end
+
+ParryHaventYouGottenTo:
+ farwritetext ParryHaventYouGottenToText
+ end
+
+ErinComeBattleScript:
+ farwritetext ErinComeBattleText
+ end
diff --git a/engine/phone/scripts/reminders_2.asm b/engine/phone/scripts/reminders_2.asm
new file mode 100644
index 000000000..9cbc5cfd7
--- /dev/null
+++ b/engine/phone/scripts/reminders_2.asm
@@ -0,0 +1,15 @@
+UnknownScript_0xa0af5:
+ farwritetext UnknownText_0x175f70
+ end
+
+UnknownScript_0xa0afa:
+ farwritetext UnknownText_0x176dd1
+ end
+
+UnknownScript_0xa0aff:
+ farwritetext UnknownText_0x64c5a
+ end
+
+UnknownScript_0xa0b04:
+ farwritetext UnknownText_0x17717c
+ end
diff --git a/engine/phone/scripts/tiffany.asm b/engine/phone/scripts/tiffany.asm
new file mode 100644
index 000000000..8f7f5dd0e
--- /dev/null
+++ b/engine/phone/scripts/tiffany.asm
@@ -0,0 +1,98 @@
+TiffanyPhoneScript1:
+ trainertotext PICNICKER, TIFFANY3, MEM_BUFFER_0
+ checkflag ENGINE_TIFFANY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Female
+ checkflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
+ iftrue .NotTuesday
+ checkflag ENGINE_TIFFANY_HAS_PINK_BOW
+ iftrue .HasItem
+ checkcode VAR_WEEKDAY
+ ifnotequal TUESDAY, .NotTuesday
+ checktime DAY
+ iftrue TiffanyTuesdayAfternoon
+
+.NotTuesday:
+ farjump UnknownScript_0xa09a0
+
+.WantsBattle:
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a8c
+
+.HasItem:
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ farjump UnknownScript_0xa0ae5
+
+TiffanyPhoneScript2:
+ trainertotext PICNICKER, TIFFANY3, MEM_BUFFER_0
+ farscall PhoneScript_Random4
+ ifequal 0, TiffanysFamilyMembers
+ farscall PhoneScript_GreetPhone_Female
+ checkflag ENGINE_TIFFANY
+ iftrue .Generic
+ checkflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
+ iftrue .Generic
+ checkflag ENGINE_TIFFANY_HAS_PINK_BOW
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, TiffanyWantsBattle
+ checkevent EVENT_TIFFANY_GAVE_PINK_BOW
+ iftrue .PinkBow
+ farscall PhoneScript_Random2
+ ifequal 0, TiffanyHasPinkBow
+
+.PinkBow:
+ farscall PhoneScript_Random11
+ ifequal 0, TiffanyHasPinkBow
+
+.Generic:
+ farjump Phone_GenericCall_Female
+
+TiffanyTuesdayAfternoon:
+ setflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
+
+TiffanyWantsBattle:
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ setflag ENGINE_TIFFANY
+ farjump PhoneScript_WantsToBattle_Female
+
+TiffanysFamilyMembers:
+ random 6
+ ifequal 0, .Grandma
+ ifequal 1, .Grandpa
+ ifequal 2, .Mom
+ ifequal 3, .Dad
+ ifequal 4, .Sister
+ ifequal 5, .Brother
+
+.Grandma:
+ stringtotext GrandmaString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.Grandpa:
+ stringtotext GrandpaString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.Mom:
+ stringtotext MomString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.Dad:
+ stringtotext DadString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.Sister:
+ stringtotext SisterString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.Brother:
+ stringtotext BrotherString, MEM_BUFFER_1
+ jump .PoorClefairy
+
+.PoorClefairy:
+ farjump TiffanyItsAwful
+
+TiffanyHasPinkBow:
+ setflag ENGINE_TIFFANY_HAS_PINK_BOW
+ landmarktotext ROUTE_43, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Female
diff --git a/engine/phone/scripts/todd.asm b/engine/phone/scripts/todd.asm
new file mode 100644
index 000000000..e3a024f00
--- /dev/null
+++ b/engine/phone/scripts/todd.asm
@@ -0,0 +1,59 @@
+ToddPhoneScript1:
+ trainertotext CAMPER, TODD1, MEM_BUFFER_0
+ checkflag ENGINE_TODD
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_TODD_SATURDAY_MORNING
+ iftrue .NotSaturday
+ checkcode VAR_WEEKDAY
+ ifnotequal SATURDAY, .NotSaturday
+ checktime MORN
+ iftrue ToddSaturdayMorning
+
+.NotSaturday:
+ checkflag ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON
+ iftrue .SaleOn
+ farjump UnknownScript_0xa0958
+
+.WantsBattle:
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a64
+
+.SaleOn:
+ farjump UnknownScript_0xa0b04
+
+ToddPhoneScript2:
+ trainertotext CAMPER, TODD1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_TODD
+ iftrue .TryForSale
+ checkflag ENGINE_TODD_SATURDAY_MORNING
+ iftrue .TryForSale
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .NoGoldenrod
+ farscall PhoneScript_Random2
+ ifequal 0, ToddWantsBattle
+
+.TryForSale:
+ farscall PhoneScript_Random2
+ ifequal 0, ToddDeptStoreSale
+
+.NoGoldenrod:
+ farscall PhoneScript_Random3
+ ifequal 0, ToddFoundRare
+ farjump Phone_GenericCall_Male
+
+ToddSaturdayMorning:
+ setflag ENGINE_TODD_SATURDAY_MORNING
+
+ToddWantsBattle:
+ landmarktotext ROUTE_34, MEM_BUFFER_2
+ setflag ENGINE_TODD
+ farjump PhoneScript_WantsToBattle_Male
+
+ToddFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+ToddDeptStoreSale:
+ setflag ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON
+ farjump UnknownScript_0xa0644
diff --git a/engine/phone/scripts/tully.asm b/engine/phone/scripts/tully.asm
new file mode 100644
index 000000000..981ae2481
--- /dev/null
+++ b/engine/phone/scripts/tully.asm
@@ -0,0 +1,60 @@
+TullyPhoneScript1:
+ trainertotext FISHER, TULLY1, MEM_BUFFER_0
+ checkflag ENGINE_TULLY
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_TULLY_SUNDAY_NIGHT
+ iftrue .NotSunday
+ checkflag ENGINE_TULLY_HAS_WATER_STONE
+ iftrue .WaterStone
+ checkcode VAR_WEEKDAY
+ ifnotequal SUNDAY, .NotSunday
+ checktime NITE
+ iftrue TullySundayNight
+
+.NotSunday:
+ farjump UnknownScript_0xa0990
+
+.WantsBattle:
+ landmarktotext ROUTE_42, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a82
+
+.WaterStone:
+ landmarktotext ROUTE_42, MEM_BUFFER_2
+ farjump UnknownScript_0xa0add
+
+TullyPhoneScript2:
+ trainertotext FISHER, TULLY1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_TULLY
+ iftrue .Generic
+ checkflag ENGINE_TULLY_SUNDAY_NIGHT
+ iftrue .Generic
+ checkflag ENGINE_TULLY_HAS_WATER_STONE
+ iftrue .Generic
+ farscall PhoneScript_Random3
+ ifequal 0, TullyWantsBattle
+ checkevent EVENT_TULLY_GAVE_WATER_STONE
+ iftrue .WaterStone
+ farscall PhoneScript_Random2
+ ifequal 0, TullyFoundWaterStone
+
+.WaterStone:
+ farscall PhoneScript_Random11
+ ifequal 0, TullyFoundWaterStone
+
+.Generic:
+ farjump Phone_GenericCall_Male
+
+TullySundayNight:
+ setflag ENGINE_TULLY_SUNDAY_NIGHT
+
+TullyWantsBattle:
+ landmarktotext ROUTE_42, MEM_BUFFER_2
+ setflag ENGINE_TULLY
+ farjump PhoneScript_WantsToBattle_Male
+
+TullyFoundWaterStone:
+ setflag ENGINE_TULLY_HAS_WATER_STONE
+ landmarktotext ROUTE_42, MEM_BUFFER_2
+ farjump PhoneScript_FoundItem_Male
diff --git a/engine/phone/scripts/unused.asm b/engine/phone/scripts/unused.asm
new file mode 100644
index 000000000..b6b2531b1
--- /dev/null
+++ b/engine/phone/scripts/unused.asm
@@ -0,0 +1,3 @@
+UnusedPhoneScript:
+ farwritetext UnusedPhoneText
+ end
diff --git a/engine/phone/scripts/vance.asm b/engine/phone/scripts/vance.asm
new file mode 100644
index 000000000..81afedfaf
--- /dev/null
+++ b/engine/phone/scripts/vance.asm
@@ -0,0 +1,40 @@
+VancePhoneScript1:
+ trainertotext BIRD_KEEPER, VANCE1, MEM_BUFFER_0
+ checkflag ENGINE_VANCE
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_VANCE_WEDNESDAY_NIGHT
+ iftrue .NotWednesday
+ checkcode VAR_WEEKDAY
+ ifnotequal WEDNESDAY, .NotWednesday
+ checktime NITE
+ iftrue VanceWednesdayNight
+
+.NotWednesday:
+ farjump VanceLookingForward
+
+.WantsBattle:
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ farjump VanceHurryHurry
+
+VancePhoneScript2:
+ trainertotext BIRD_KEEPER, VANCE1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_VANCE
+ iftrue .WantsBattle
+ checkflag ENGINE_VANCE_WEDNESDAY_NIGHT
+ iftrue .WantsBattle
+ farscall PhoneScript_Random3
+ ifequal 0, VanceWantsRematch
+ ifequal 1, VanceWantsRematch
+
+.WantsBattle:
+ farjump Phone_GenericCall_Male
+
+VanceWednesdayNight:
+ setflag ENGINE_VANCE_WEDNESDAY_NIGHT
+
+VanceWantsRematch:
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ setflag ENGINE_VANCE
+ farjump PhoneScript_WantsToBattle_Male
diff --git a/engine/phone/scripts/wade.asm b/engine/phone/scripts/wade.asm
new file mode 100644
index 000000000..5b317f5f9
--- /dev/null
+++ b/engine/phone/scripts/wade.asm
@@ -0,0 +1,113 @@
+WadePhoneScript1:
+ trainertotext BUG_CATCHER, WADE1, MEM_BUFFER_0
+ checkflag ENGINE_WADE
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_WADE_TUESDAY_NIGHT
+ iftrue .NotTuesday
+ checkflag ENGINE_WADE_HAS_ITEM
+ iftrue .HasItem
+ checkcode VAR_WEEKDAY
+ ifnotequal TUESDAY, .NotTuesday
+ checktime NITE
+ iftrue WadeTuesdayNight
+
+.NotTuesday:
+ farscall PhoneScript_Random2
+ ifequal 0, .NoContest
+ checkflag ENGINE_DAILY_BUG_CONTEST
+ iftrue .NoContest
+ checkcode VAR_WEEKDAY
+ ifequal TUESDAY, .ContestToday
+ ifequal THURSDAY, .ContestToday
+ ifequal SATURDAY, .ContestToday
+
+.NoContest:
+ farjump UnknownScript_0xa0938
+
+.ContestToday:
+ farjump PhoneScript_BugCatchingContest
+
+.WantsBattle:
+ landmarktotext ROUTE_31, MEM_BUFFER_2
+ farjump UnknownScript_0xa0a50
+
+.HasItem:
+ landmarktotext ROUTE_31, MEM_BUFFER_2
+ farjump UnknownScript_0xa0ab5
+
+WadePhoneScript2:
+ trainertotext BUG_CATCHER, WADE1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ farscall PhoneScript_Random2
+ ifequal 0, .NoContest
+ checkflag ENGINE_DAILY_BUG_CONTEST
+ iftrue .NoContest
+ checkcode VAR_WEEKDAY
+ ifequal TUESDAY, .ContestToday
+ ifequal THURSDAY, .ContestToday
+ ifequal SATURDAY, .ContestToday
+
+.NoContest:
+ checkflag ENGINE_WADE
+ iftrue .next
+ checkflag ENGINE_WADE_TUESDAY_NIGHT
+ iftrue .next
+ checkflag ENGINE_WADE_HAS_ITEM
+ iftrue .next
+ farscall PhoneScript_Random2
+ ifequal 0, WadeHasItem2
+ checkflag ENGINE_FLYPOINT_GOLDENROD
+ iffalse .next
+ farscall PhoneScript_Random2
+ ifequal 0, WadeWantsBattle2
+
+.next:
+ farscall PhoneScript_Random3
+ ifequal 0, WadeFoundRare
+ farjump Phone_GenericCall_Male
+
+.ContestToday:
+ farjump PhoneScript_BugCatchingContest
+
+WadeTuesdayNight:
+ setflag ENGINE_WADE_TUESDAY_NIGHT
+
+WadeWantsBattle2:
+ landmarktotext ROUTE_31, MEM_BUFFER_2
+ setflag ENGINE_WADE
+ farjump PhoneScript_WantsToBattle_Male
+
+WadeFoundRare:
+ farjump Phone_CheckIfUnseenRare_Male
+
+WadeHasItem2:
+ setflag ENGINE_WADE_HAS_ITEM
+ landmarktotext ROUTE_31, MEM_BUFFER_2
+ clearevent EVENT_WADE_HAS_BERRY
+ clearevent EVENT_WADE_HAS_PSNCUREBERRY
+ clearevent EVENT_WADE_HAS_PRZCUREBERRY
+ clearevent EVENT_WADE_HAS_BITTER_BERRY
+ random 4
+ ifequal 0, .Berry
+ ifequal 1, .PsnCureBerry
+ ifequal 2, .PrzCureBerry
+ ifequal 3, .Bitterberry
+
+.Berry:
+ setevent EVENT_WADE_HAS_BERRY
+ jump .FoundBerry
+
+.PsnCureBerry:
+ setevent EVENT_WADE_HAS_PSNCUREBERRY
+ jump .FoundBerry
+
+.PrzCureBerry:
+ setevent EVENT_WADE_HAS_PRZCUREBERRY
+ jump .FoundBerry
+
+.Bitterberry:
+ setevent EVENT_WADE_HAS_BITTER_BERRY
+
+.FoundBerry:
+ farjump PhoneScript_FoundItem_Male
diff --git a/engine/phone/scripts/wilton.asm b/engine/phone/scripts/wilton.asm
new file mode 100644
index 000000000..732e49b96
--- /dev/null
+++ b/engine/phone/scripts/wilton.asm
@@ -0,0 +1,75 @@
+WiltonPhoneScript1:
+ trainertotext FISHER, WILTON1, MEM_BUFFER_0
+ checkflag ENGINE_WILTON
+ iftrue .WantsBattle
+ farscall PhoneScript_AnswerPhone_Male
+ checkflag ENGINE_WILTON_THURSDAY_MORNING
+ iftrue .NotThursday
+ checkflag ENGINE_WILTON_HAS_ITEM
+ iftrue .HasItem
+ checkcode VAR_WEEKDAY
+ ifnotequal THURSDAY, .NotThursday
+ checktime MORN
+ iftrue WiltonThursdayMorning
+
+.NotThursday:
+ farjump WiltonHaventFoundAnything
+
+.WantsBattle:
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ farjump WiltonNotBiting
+
+.HasItem:
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ farjump WiltonWantThis
+
+WiltonPhoneScript2:
+ trainertotext FISHER, WILTON1, MEM_BUFFER_0
+ farscall PhoneScript_GreetPhone_Male
+ checkflag ENGINE_WILTON
+ iftrue .GenericCall
+ checkflag ENGINE_WILTON_THURSDAY_MORNING
+ iftrue .GenericCall
+ checkflag ENGINE_WILTON_HAS_ITEM
+ iftrue .GenericCall
+ farscall PhoneScript_Random2
+ ifequal 0, WiltonWantsBattle
+ farscall PhoneScript_Random2
+ ifequal 0, WiltonHasItem
+
+.GenericCall:
+ farjump Phone_GenericCall_Male
+
+WiltonThursdayMorning:
+ setflag ENGINE_WILTON_THURSDAY_MORNING
+
+WiltonWantsBattle:
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ setflag ENGINE_WILTON
+ farjump PhoneScript_WantsToBattle_Male
+
+WiltonHasItem:
+ setflag ENGINE_WILTON_HAS_ITEM
+ landmarktotext ROUTE_44, MEM_BUFFER_2
+ clearevent EVENT_WILTON_HAS_ULTRA_BALL
+ clearevent EVENT_WILTON_HAS_GREAT_BALL
+ clearevent EVENT_WILTON_HAS_POKE_BALL
+ random 5
+ ifequal 0, .UltraBall
+ random 3
+ ifequal 0, .GreatBall
+ jump .PokeBall
+
+.UltraBall:
+ setevent EVENT_WILTON_HAS_ULTRA_BALL
+ jump .FoundItem
+
+.GreatBall:
+ setevent EVENT_WILTON_HAS_GREAT_BALL
+ jump .FoundItem
+
+.PokeBall:
+ setevent EVENT_WILTON_HAS_POKE_BALL
+
+.FoundItem:
+ farjump PhoneScript_FoundItem_Male