pokeemmo/data/maps/Route119/scripts.inc
RoamerX 6f69e7f5eb 对于对战开拓区&对战帐篷的文本进行了重新翻译
虽然原本进行了一些修正和润色,但是整体质量偏低,于是重新进行了汉化
调整了开拓区对战设施的成绩页面文字展示位置
对培育屋的文本进行了重新翻译
参照官方正作的使用逻辑统一调整了数字使用阿拉伯数字和汉字的情况
参照官方正作的使用逻辑统一调整了使用“战斗”和“对战”的情况
修正了部分连接相关文本的译名
主要参考deepseek英文翻译及原版英文
2025-05-18 00:10:23 +08:00

536 lines
17 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.set LOCALID_RIVAL, 16
.set LOCALID_RIVAL_ON_BIKE, 25
.set LOCALID_SCOTT, 43
Route119_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route119_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route119_OnTransition
.byte 0
Route119_OnResume:
call_if_set FLAG_SYS_CTRL_OBJ_DELETE, Route119_EventScript_TryRemoveKecleon
end
Route119_EventScript_TryRemoveKecleon::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
removeobject VAR_LAST_TALKED
return
Route119_OnTransition:
call Common_EventScript_SetupRivalGfxId
call Common_EventScript_SetupRivalOnBikeGfxId
call_if_eq VAR_WEATHER_INSTITUTE_STATE, 1, Route119_EventScript_MoveInstituteWorkersDownstairs
special SetRoute119Weather
end
Route119_EventScript_MoveInstituteWorkersDownstairs::
setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS
clearflag FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS
setvar VAR_WEATHER_INSTITUTE_STATE, 2
return
Route119_EventScript_RivalTrigger1::
setvar VAR_TEMP_1, 1
goto Route119_EventScript_RivalEncounter
end
Route119_EventScript_RivalTrigger2::
setvar VAR_TEMP_1, 2
goto Route119_EventScript_RivalEncounter
end
Route119_EventScript_RivalEncounter::
lockall
addobject LOCALID_RIVAL_ON_BIKE
checkplayergender
call_if_eq VAR_RESULT, MALE, Route119_EventScript_PlayMayMusic
call_if_eq VAR_RESULT, FEMALE, Route119_EventScript_PlayBrendanMusic
delay 65
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_RivalEnter1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_RivalEnter2
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetRivalPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetRivalPos2
removeobject LOCALID_RIVAL_ON_BIKE
addobject LOCALID_RIVAL
delay 30
checkplayergender
goto_if_eq VAR_RESULT, MALE, Route119_EventScript_BattleMay
goto_if_eq VAR_RESULT, FEMALE, Route119_EventScript_BattleBrendan
releaseall
end
Route119_EventScript_PlayMayMusic::
playbgm MUS_ENCOUNTER_MAY, TRUE
return
Route119_EventScript_PlayBrendanMusic::
playbgm MUS_ENCOUNTER_BRENDAN, TRUE
return
Route119_EventScript_BattleMay::
msgbox Route119_Text_MayIntro, MSGBOX_DEFAULT
switch VAR_STARTER_MON
case 0, Route119_EventScript_BattleMayTreecko
case 1, Route119_EventScript_BattleMayTorchic
case 2, Route119_EventScript_BattleMayMudkip
end
Route119_EventScript_BattleMayTreecko::
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TREECKO, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayTorchic::
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TORCHIC, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayMudkip::
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_MUDKIP, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_DefeatedMay::
msgbox Route119_Text_MayPresentForYou, MSGBOX_DEFAULT
call Route119_EventScript_GiveFlyHM
msgbox Route119_Text_MayExplainFly, MSGBOX_DEFAULT
goto Route119_EventScript_RivalExitScottArrive
end
Route119_EventScript_BattleBrendan::
msgbox Route119_Text_BrendanIntro, MSGBOX_DEFAULT
switch VAR_STARTER_MON
case 0, Route119_EventScript_BattleBrendanTreecko
case 1, Route119_EventScript_BattleBrendanTorchic
case 2, Route119_EventScript_BattleBrendanMudkip
end
Route119_EventScript_BattleBrendanTreecko::
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TREECKO, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanTorchic::
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TORCHIC, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanMudkip::
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_MUDKIP, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_DefeatedBrendan::
msgbox Route119_Text_BrendanIllGiveYouThis, MSGBOX_DEFAULT
call Route119_EventScript_GiveFlyHM
msgbox Route119_Text_BrendanExplainFly, MSGBOX_DEFAULT
goto Route119_EventScript_RivalExitScottArrive
end
Route119_EventScript_GiveFlyHM::
giveitem ITEM_HM_FLY
setflag FLAG_RECEIVED_HM_FLY
return
Route119_EventScript_RivalExitScottArrive::
closemessage
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetRivalPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetRivalPos2
removeobject LOCALID_RIVAL
addobject LOCALID_RIVAL_ON_BIKE
delay 30
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_RivalExit1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_RivalExit2
removeobject LOCALID_RIVAL_ON_BIKE
setvar VAR_ROUTE119_STATE, 1
savebgm MUS_DUMMY
fadedefaultbgm
delay 60
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetScottPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetScottPos2
addobject LOCALID_SCOTT
applymovement LOCALID_SCOTT, Route119_Movement_ScottEnter
waitmovement 0
addvar VAR_SCOTT_STATE, 1
msgbox Route119_Text_ScottWayToGoBeSeeingYou, MSGBOX_DEFAULT
closemessage
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_ScottExit1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_ScottExit2
removeobject LOCALID_SCOTT
releaseall
end
Route119_EventScript_SetScottPos1::
setobjectxyperm LOCALID_SCOTT, 27, 25
return
Route119_EventScript_SetScottPos2::
setobjectxyperm LOCALID_SCOTT, 28, 25
return
Route119_EventScript_ScottExit1::
applymovement LOCALID_SCOTT, Route119_Movement_ScottExit1
waitmovement 0
return
Route119_EventScript_ScottExit2::
applymovement LOCALID_SCOTT, Route119_Movement_ScottExit2
waitmovement 0
return
Route119_EventScript_RivalEnter1::
applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter1
waitmovement 0
return
Route119_EventScript_RivalEnter2::
applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter2
waitmovement 0
return
Route119_EventScript_RivalExit1::
applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit1
applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit1
waitmovement 0
return
Route119_EventScript_RivalExit2::
applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit2
applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit2
waitmovement 0
return
Route119_EventScript_SetRivalPos1::
setobjectxyperm LOCALID_RIVAL, 25, 32
setobjectxyperm LOCALID_RIVAL_ON_BIKE, 25, 32
return
Route119_EventScript_SetRivalPos2::
setobjectxyperm LOCALID_RIVAL, 26, 32
setobjectxyperm LOCALID_RIVAL_ON_BIKE, 26, 32
return
Route119_Movement_PlayerWatchRivalExit1:
delay_16
walk_in_place_faster_right
delay_8
walk_in_place_faster_up
step_end
Route119_Movement_PlayerWatchRivalExit2:
delay_16
walk_in_place_faster_left
delay_8
walk_in_place_faster_up
step_end
Route119_Movement_RivalEnter1:
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_up
step_end
Route119_Movement_RivalEnter2:
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_up
step_end
Route119_Movement_RivalExit1:
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_up
step_end
Route119_Movement_RivalExit2:
walk_fast_left
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_right
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_up
step_end
Route119_Movement_ScottEnter:
walk_down
walk_down
walk_down
walk_down
walk_left
walk_left
walk_down
step_end
Route119_Movement_ScottExit1:
walk_up
walk_right
walk_right
walk_up
walk_up
walk_up
walk_up
walk_up
step_end
Route119_Movement_ScottExit2:
walk_up
walk_right
walk_up
walk_up
walk_up
walk_up
walk_up
step_end
Route119_EventScript_CyclingTriathleteM::
msgbox Route119_Text_TallGrassSnaresBikeTires, MSGBOX_NPC
end
Route119_EventScript_RouteSignFortree::
msgbox Route119_Text_RouteSignFortree, MSGBOX_SIGN
end
Route119_EventScript_WeatherInstituteSign::
msgbox Route119_Text_WeatherInstitute, MSGBOX_SIGN
end
Route119_EventScript_Brent::
trainerbattle_single TRAINER_BRENT, Route119_Text_BrentIntro, Route119_Text_BrentDefeat
msgbox Route119_Text_BrentPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Donald::
trainerbattle_single TRAINER_DONALD, Route119_Text_DonaldIntro, Route119_Text_DonaldDefeat
msgbox Route119_Text_DonaldPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Taylor::
trainerbattle_single TRAINER_TAYLOR, Route119_Text_TaylorIntro, Route119_Text_TaylorDefeat
msgbox Route119_Text_TaylorPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Doug::
trainerbattle_single TRAINER_DOUG, Route119_Text_DougIntro, Route119_Text_DougDefeat
msgbox Route119_Text_DougPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Greg::
trainerbattle_single TRAINER_GREG, Route119_Text_GregIntro, Route119_Text_GregDefeat
msgbox Route119_Text_GregPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Kent::
trainerbattle_single TRAINER_KENT, Route119_Text_KentIntro, Route119_Text_KentDefeat
msgbox Route119_Text_KentPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Jackson::
trainerbattle_single TRAINER_JACKSON_1, Route119_Text_JacksonIntro, Route119_Text_JacksonDefeat, Route119_EventScript_RegisterJackson
specialvar VAR_RESULT, ShouldTryRematchBattle
goto_if_eq VAR_RESULT, TRUE, Route119_EventScript_RematchJackson
msgbox Route119_Text_JacksonPostBattle, MSGBOX_DEFAULT
release
end
Route119_EventScript_RegisterJackson::
special PlayerFaceTrainerAfterBattle
waitmovement 0
msgbox Route119_Text_JacksonRegister, MSGBOX_DEFAULT
register_matchcall TRAINER_JACKSON_1
release
end
Route119_EventScript_RematchJackson::
trainerbattle_rematch TRAINER_JACKSON_1, Route119_Text_JacksonRematchIntro, Route119_Text_JacksonRematchDefeat
msgbox Route119_Text_JacksonPostRematch, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Catherine::
trainerbattle_single TRAINER_CATHERINE_1, Route119_Text_CatherineIntro, Route119_Text_CatherineDefeat, Route119_EventScript_RegisterCatherine
specialvar VAR_RESULT, ShouldTryRematchBattle
goto_if_eq VAR_RESULT, TRUE, Route119_EventScript_RematchCatherine
msgbox Route119_Text_CatherinePostBattle, MSGBOX_DEFAULT
release
end
Route119_EventScript_RegisterCatherine::
special PlayerFaceTrainerAfterBattle
waitmovement 0
msgbox Route119_Text_CatherineRegister, MSGBOX_DEFAULT
register_matchcall TRAINER_CATHERINE_1
release
end
Route119_EventScript_RematchCatherine::
trainerbattle_rematch TRAINER_CATHERINE_1, Route119_Text_CatherineRematchIntro, Route119_Text_CatherineRematchDefeat
msgbox Route119_Text_CatherinePostRematch, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Hugh::
trainerbattle_single TRAINER_HUGH, Route119_Text_HughIntro, Route119_Text_HughDefeat
msgbox Route119_Text_HughPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Phil::
trainerbattle_single TRAINER_PHIL, Route119_Text_PhilIntro, Route119_Text_PhilDefeat
msgbox Route119_Text_PhilPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Yasu::
trainerbattle_single TRAINER_YASU, Route119_Text_YasuIntro, Route119_Text_YasuDefeat
msgbox Route119_Text_YasuPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Takashi::
trainerbattle_single TRAINER_TAKASHI, Route119_Text_TakashiIntro, Route119_Text_TakashiDefeat
msgbox Route119_Text_TakashiPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Hideo::
trainerbattle_single TRAINER_HIDEO, Route119_Text_HideoIntro, Route119_Text_HideoDefeat
msgbox Route119_Text_HideoPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Chris::
trainerbattle_single TRAINER_CHRIS, Route119_Text_ChrisIntro, Route119_Text_ChrisDefeat
msgbox Route119_Text_ChrisPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Fabian::
trainerbattle_single TRAINER_FABIAN, Route119_Text_FabianIntro, Route119_Text_FabianDefeat
msgbox Route119_Text_FabianPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Dayton::
trainerbattle_single TRAINER_DAYTON, Route119_Text_DaytonIntro, Route119_Text_DaytonDefeat
msgbox Route119_Text_DaytonPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Rachel::
trainerbattle_single TRAINER_RACHEL, Route119_Text_RachelIntro, Route119_Text_RachelDefeat
msgbox Route119_Text_RachelPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_BridgeAquaGrunt1::
lock
faceplayer
msgbox Route119_Text_StayAwayFromWeatherInstitute, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
Route119_EventScript_BridgeAquaGrunt2::
lock
faceplayer
msgbox Route119_Text_DontGoNearWeatherInstitute, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
Route119_EventScript_Boy1::
msgbox Route119_Text_ThoughtFlyByCatchingBirdMons, MSGBOX_NPC
end
Route119_EventScript_Boy2::
msgbox Route119_Text_CanYourMonMakeSecretBase, MSGBOX_NPC
end
Route119_EventScript_TrainerTipsDecoration::
msgbox Route119_Text_TrainerTipsDecoration, MSGBOX_SIGN
end
Route119_EventScript_ScottWonAtFortreeGymCall::
lockall
pokenavcall Route119_Text_ScottYouWonAtFortreeGym
waitmessage
clearflag FLAG_SCOTT_CALL_FORTREE_GYM
addvar VAR_SCOTT_STATE, 1
releaseall
end
Route119_Text_MayIntro:
.string "小遥:{PLAYER}{KUN}\n你去哪儿了?我找你很久了!\p让我来看看你\n变强了多少!\p准备好宝可梦了吗\n你肯定没问题的,接招吧!$"
Route119_Text_MayDefeat:
.string "呜哇!\n{PLAYER}{KUN}变得好强!\p我之前还担心你会不会\n训练得不够呢。$"
Route119_Text_MayPresentForYou:
.string "小遥:看来完全不用担心嘛!\n保持这个势头吧!\p来\n这个送给你。$"
Route119_Text_MayExplainFly:
.string "小遥:使用飞翔的话,\n宝可梦会瞬间带你飞回\l曾经去过的城镇\p但必须先拿到茵郁市的\n道馆徽章才能够使用,\l这很重要不要忘了哦\p偶尔也该飞回未白镇\n回家里看看,\p你妈妈会担心你的\n{PLAYER}{KUN}。\p好了下次再见$"
Route119_Text_BrendanIntro:
.string "小悠:{PLAYER}\n来这里找宝可梦吗?\p让我检验下你的实力\n成长得如何了!\p现在\n来对战吧!$"
Route119_Text_BrendanDefeat:
.string "唔……\n你进步得真快啊。$"
Route119_Text_BrendanIllGiveYouThis:
.string "小悠:我想你无论去哪儿\n找宝可梦都没问题。\p这个给你\n试试吧。$"
Route119_Text_BrendanExplainFly:
.string "小悠:使用飞翔的话,\n宝可梦会瞬间带你飞回\l曾经去过的城镇\p但必须先拿到茵郁市的\n道馆徽章才能用。\p好了\n我先走一步啦!$"
Route119_Text_ScottWayToGoBeSeeingYou:
.string "亚希达:哈哈哈哈!\n干得漂亮,{PLAYER}{KUN}\p我刚刚遇到了个\n骑着自行车的训练家。\p你刚刚打败了那个训练家对吧\n不用想都知道是你。\p那孩子气得脸红红的\n好像很不甘心。\p我们看起来很有缘呢。\n你现在要去茵郁市道馆是吗?\p相信你一定会表现出色。\n好了,回头见!$"
Route119_Text_ScottYouWonAtFortreeGym:
.string "…… …… ……\n…… …… ……哔!\p亚希达{PLAYER}{KUN},是我!\p你果然如我所料\n赢下了茵郁市道馆。\p你的实力……\n或许正是我一直在找的训练家。\p记住我是你的头号粉丝\n我会一直默默为你加油的。\l继续加油\p…… …… ……\n…… …… ……咔哒!$"
Route119_Text_StayAwayFromWeatherInstitute:
.string "我们在这里放哨。\p喂别接近\n天气研究所,那儿不安全。$"
Route119_Text_DontGoNearWeatherInstitute:
.string "放哨的任务实在太无聊了。\p喂别跑到\n天气研究所附近去。$"
Route119_Text_ThoughtFlyByCatchingBirdMons:
.string "我本以为所谓飞翔是指\n捉一大群鸟宝可梦,然后\l不知怎么挂在它们身上\p但实际上飞翔是\n一种秘传招式!\p我要是早点知道\n就好了……$"
Route119_Text_TallGrassSnaresBikeTires:
.string "切……\n过不去……\p长草会卷进自行车的轮胎里\n不可能骑车过去。$"
Route119_Text_CanYourMonMakeSecretBase:
.string "你的宝可梦能用秘密之力\n在一大团草中打出一个\l秘密基地吗$"
Route119_Text_RouteSignFortree:
.string "119号道路\n{RIGHT_ARROW} 茵郁市$"
Route119_Text_WeatherInstitute:
.string "天气研究所$"
Route119_Text_TrainerTipsDecoration:
.string "训练家小技巧\p秘密基地里面\n最多只能放16个\l装饰物品和家具。\p用你最喜欢的\n物品装扮出你自己的\l秘密基地吧。$"