PikalaxALT

Fixed SRAM section at bank $20b

Oct 24th, 2015
260
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 664.54 KB | None | 0 0
  1. diff --git a/battle/core.asm b/battle/core.asm
  2. index d090593..f322715 100644
  3. --- a/battle/core.asm
  4. +++ b/battle/core.asm
  5. @@ -123,18 +123,18 @@ Function3c000: ; 3c000
  6.  
  7.  WildFled_EnemyFled_LinkBattleCanceled: ; 3c0e5
  8.     call Function30b4
  9. -   ld a, [wd0ee]
  10. +   ld a, [wBattleResult]
  11.     and $c0
  12.     add $2
  13. -   ld [wd0ee], a
  14. +   ld [wBattleResult], a
  15.     ld a, [wLinkMode]
  16.     and a
  17.     ld hl, BattleText_WildFled
  18.     jr z, .asm_3c115
  19.  
  20. -   ld a, [wd0ee]
  21. +   ld a, [wBattleResult]
  22.     and $c0
  23. -   ld [wd0ee], a
  24. +   ld [wBattleResult], a
  25.     ld hl, BattleText_EnemyFled
  26.     call Function3d2e0
  27.     jr nc, .asm_3c115
  28. @@ -584,10 +584,10 @@ Function3c3f5: ; 3c3f5
  29.     ld a, [wdc79]
  30.     and a
  31.     jr nz, .asm_3c40e
  32. -   ld a, [wd0ee]
  33. +   ld a, [wBattleResult]
  34.     and $c0
  35.     add $2
  36. -   ld [wd0ee], a
  37. +   ld [wBattleResult], a
  38.     scf
  39.     ret
  40.  
  41. @@ -2245,9 +2245,9 @@ Function3ce01: ; 3ce01
  42.     call z, Function3d0ea
  43.     call EmptyBattleTextBox
  44.     call Function309d
  45. -   ld a, [wd0ee]
  46. +   ld a, [wBattleResult]
  47.     and $c0
  48. -   ld [wd0ee], a
  49. +   ld [wBattleResult], a
  50.     call Function3ceaa
  51.     jr z, .asm_3ce72
  52.     ld hl, EnemyMonBaseStats
  53. @@ -2633,7 +2633,7 @@ Function3d0be: ; 3d0be
  54.     push bc
  55.     ld b, h
  56.     ld c, l
  57. -   callba Function106008
  58. +   callba MobileFn_106008
  59.     pop bc
  60.     pop hl
  61.  .asm_3d0ce
  62. @@ -2831,10 +2831,10 @@ Function3d1aa: ; 3d1aa
  63.     ld a, [CurBattleMon]
  64.     ld [CurPartyMon], a
  65.     callab ChangeHappiness
  66. -   ld a, [wd0ee]
  67. +   ld a, [wBattleResult]
  68.     and %11000000
  69.     add $1
  70. -   ld [wd0ee], a
  71. +   ld [wBattleResult], a
  72.     ld a, [wc6f7]
  73.     and a
  74.     ret z
  75. @@ -3136,10 +3136,10 @@ LostBattle: ; 3d38e
  76.     call CheckEnemyTrainerDefeated
  77.     jr nz, .asm_3d40a
  78.     ld hl, TiedAgainstText
  79. -   ld a, [wd0ee]
  80. +   ld a, [wBattleResult]
  81.     and $c0
  82.     add 2
  83. -   ld [wd0ee], a
  84. +   ld [wBattleResult], a
  85.     jr .text
  86.  
  87.  .asm_3d40a
  88. @@ -4009,10 +4009,10 @@ Function3d8b3: ; 3d8b3
  89.     dec a
  90.  .asm_3d9cf
  91.     ld b, a
  92. -   ld a, [wd0ee]
  93. +   ld a, [wBattleResult]
  94.     and $c0
  95.     add b
  96. -   ld [wd0ee], a
  97. +   ld [wBattleResult], a
  98.     call StopDangerSound
  99.     push de
  100.     ld de, SFX_RUN
  101. @@ -5251,7 +5251,7 @@ Function3e234: ; 3e234
  102.     and a
  103.     jr nz, .asm_3e279
  104.     callab CheckItemPocket
  105. -   ld a, [wd142]
  106. +   ld a, [wItemAttributeParamBuffer]
  107.     cp $3
  108.     jr z, .asm_3e24a
  109.     call WhiteBGMap
  110. @@ -5282,9 +5282,9 @@ Function3e234: ; 3e234
  111.  .asm_3e279
  112.     xor a
  113.     ld [wc64e], a
  114. -   ld a, [wd0ee]
  115. +   ld a, [wBattleResult]
  116.     and $c0
  117. -   ld [wd0ee], a
  118. +   ld [wBattleResult], a
  119.     call ResetTextRelatedRAM
  120.     call Function32f9
  121.     scf
  122. @@ -8403,9 +8403,13 @@ Function3f4b4: ; 3f4b4
  123.  
  124.  
  125.  StartBattle: ; 3f4c1
  126. +; This check prevents you from entering a battle without any Pokemon.
  127. +; Those using walk-through-walls to bypass getting a Pokemon experience
  128. +; the effects of this check.
  129.     ld a, [PartyCount]
  130.     and a
  131.     ret z
  132. +
  133.     ld a, [TimeOfDayPal]
  134.     push af
  135.     call Function3f4dd
  136. @@ -8425,17 +8429,17 @@ Function3f4d9: ; 3f4d9
  137.  
  138.  
  139.  Function3f4dd: ; 3f4dd
  140. -   callba Function106050
  141. -   call Function3f54e
  142. +   callba MobileFn_106050 ; mobile
  143. +   call LoadTrainerOrWildMonPic
  144.     xor a
  145.     ld [TempBattleMonSpecies], a
  146.     ld [wd0d2], a
  147.     xor a
  148.     ld [$ffde], a
  149.     callba PlayBattleMusic
  150. -   callba Function2ee18
  151. -   callba Function2ee2f
  152. -   call Function2ed3
  153. +   callba ShowLinkBattleParticipants
  154. +   callba FindFirstAliveMon
  155. +   call DisableSpriteUpdates
  156.     callba ClearBattleRAM
  157.     call Function3f55e
  158.     call Function3f568
  159. @@ -8465,14 +8469,14 @@ Function3f4dd: ; 3f4dd
  160.     ret
  161.  ; 3f54e
  162.  
  163. -Function3f54e: ; 3f54e
  164. +LoadTrainerOrWildMonPic: ; 3f54e
  165.     ld a, [OtherTrainerClass]
  166.     and a
  167. -   jr nz, .asm_3f55a
  168. +   jr nz, .Trainer
  169.     ld a, [TempWildMonSpecies]
  170.     ld [CurPartySpecies], a
  171.  
  172. -.asm_3f55a
  173. +.Trainer
  174.     ld [TempEnemyMonSpecies], a
  175.     ret
  176.  ; 3f55e
  177. @@ -8480,8 +8484,8 @@ Function3f54e: ; 3f54e
  178.  Function3f55e: ; 3f55e
  179.     ld a, [OtherTrainerClass]
  180.     and a
  181. -   jp nz, Function3f594
  182. -   jp Function3f607
  183. +   jp nz, Function3f594 ; trainer
  184. +   jp Function3f607 ; wild
  185.  ; 3f568
  186.  
  187.  Function3f568: ; 3f568
  188. @@ -8510,7 +8514,7 @@ Function3f568: ; 3f568
  189.  
  190.  Function3f594: ; 3f594
  191.     ld [TrainerClass], a
  192. -   callba Function10606a
  193. +   callba MobileFn_10606a
  194.     xor a
  195.     ld [TempEnemyMonSpecies], a
  196.     callab Function3957b
  197. @@ -8566,7 +8570,7 @@ Function3f594: ; 3f594
  198.  Function3f607: ; 3f607
  199.     ld a, $1
  200.     ld [wBattleMode], a
  201. -   callba Function10605d
  202. +   callba MobileFn_10605d
  203.     call LoadEnemyMon
  204.     ld hl, EnemyMonMoves
  205.     ld de, wc735
  206. @@ -8660,15 +8664,15 @@ Function3f69e: ; 3f69e
  207.  Function3f6a5: ; 3f6a5
  208.     ld a, [wLinkMode]
  209.     and a
  210. -   jr z, .asm_3f6b7
  211. +   jr z, .not_linked
  212.     call Function3f759
  213.     ld c, 150
  214.     call DelayFrames
  215.     call Function3f77c
  216.     ret
  217.  
  218. -.asm_3f6b7
  219. -   ld a, [wd0ee]
  220. +.not_linked
  221. +   ld a, [wBattleResult]
  222.     and $f
  223.     ret nz
  224.     call Function3f71d
  225. @@ -8692,11 +8696,11 @@ Function3f6d0: ; 3f6d0
  226.     ld [wd267], a
  227.     ld [wd232], a
  228.     ld [wd0d8], a
  229. -   ld [wd0da], a
  230. -   ld [wd0d9], a
  231. +   ld [wKeyItemsPocketPointerLocation], a
  232. +   ld [wItemsPocketPointerLocation], a
  233.     ld [wd0d2], a
  234.     ld [CurMoveNum], a
  235. -   ld [wd0db], a
  236. +   ld [wBallsPocketPointerLocation], a
  237.     ld [wd0d6], a
  238.     ld [wd0e4], a
  239.     ld [wd0e0], a
  240. @@ -8750,7 +8754,7 @@ endr
  241.  ; 3f759
  242.  
  243.  Function3f759: ; 3f759
  244. -   callba Function1060df
  245. +   callba MobileFn_1060df
  246.     callba Function106187
  247.     ld a, [CurOTMon]
  248.     ld hl, OTPartyMon1Status
  249. @@ -8758,7 +8762,7 @@ Function3f759: ; 3f759
  250.     ld a, [EnemyMonStatus]
  251.     ld [hl], a
  252.     call ClearTileMap
  253. -   callba Function2c1b2
  254. +   callba _ShowLinkBattleParticipants
  255.     ret
  256.  ; 3f77c
  257.  
  258. @@ -8773,22 +8777,22 @@ Function3f77c: ; 3f77c
  259.     callba Function2b930
  260.  
  261.  .asm_3f797
  262. -   ld a, [wd0ee]
  263. +   ld a, [wBattleResult]
  264.     and $f
  265.     cp $1
  266.     jr c, .asm_3f7ad
  267.     jr z, .asm_3f7b8
  268. -   callba Function106107
  269. +   callba MobileFn_106107
  270.     ld de, .Draw
  271.     jr .asm_3f7c3
  272.  
  273.  .asm_3f7ad
  274. -   callba Function1060fb
  275. +   callba MobileFn_1060fb
  276.     ld de, .Win
  277.     jr .asm_3f7c3
  278.  
  279.  .asm_3f7b8
  280. -   callba Function106101
  281. +   callba MobileFn_106101
  282.     ld de, .Lose
  283.     jr .asm_3f7c3
  284.  
  285. @@ -9006,7 +9010,7 @@ Function3f998: ; 3f998
  286.     ld a, [BattleType]
  287.     cp BATTLETYPE_ROAMING
  288.     jr nz, .asm_3f9c4
  289. -   ld a, [wd0ee]
  290. +   ld a, [wBattleResult]
  291.     and $f
  292.     jr z, .asm_3f9af
  293.     call GetRoamMonHP
  294. @@ -9170,7 +9174,7 @@ endr
  295.  ; 3faa0
  296.  
  297.  Function3faa0: ; 3faa0
  298. -   ld a, [wd0ee]
  299. +   ld a, [wBattleResult]
  300.     and $f
  301.     cp $1
  302.     ld bc, $000d
  303. @@ -9405,7 +9409,7 @@ GetBattleBackpic: ; 3fbff
  304.     jr z, .Decompress
  305.  
  306.  ; What gender are we?
  307. -   ld a, [wd45b]
  308. +   ld a, [wPlayerSpriteSetupFlags]
  309.     bit 2, a
  310.     jr nz, .Chris
  311.     ld a, [PlayerGender]
  312. @@ -9542,7 +9546,7 @@ BattleStartMessage: ; 3fc8b
  313.     cp BATTLETYPE_FISH
  314.     jr nz, .asm_3fcfd
  315.  
  316. -   callba Function106086
  317. +   callba MobileFn_106086
  318.  
  319.     ld hl, HookedPokemonAttackedText
  320.     jr .asm_3fd0e
  321. diff --git a/battle/effect_commands.asm b/battle/effect_commands.asm
  322. index cb5a675..95ce78a 100644
  323. --- a/battle/effect_commands.asm
  324. +++ b/battle/effect_commands.asm
  325. @@ -7188,10 +7188,10 @@ BattleCommanda0: ; 36778
  326.  
  327.  
  328.  Function36804: ; 36804
  329. -   ld a, [wd0ee]
  330. +   ld a, [wBattleResult]
  331.     and $c0
  332.     or $2
  333. -   ld [wd0ee], a
  334. +   ld [wBattleResult], a
  335.     ret
  336.  ; 3680f
  337.  
  338. @@ -8519,7 +8519,7 @@ BattleCommand35: ; 36f9d
  339.  
  340.  BattleCommand36: ; 36fe1
  341.     call AnimateCurrentMove
  342. -   callba Function1060e5
  343. +   callba MobileFn_1060e5
  344.     jp PrintNothingHappened
  345.  ; 36fed
  346.  
  347. @@ -9152,7 +9152,7 @@ CheckSubstituteOpp: ; 37378
  348.  
  349.  
  350.  BattleCommand1a: ; 37380
  351. -   callba Function10610d
  352. +   callba MobileFn_10610d
  353.     ld a, $4
  354.     ld [wcfca], a
  355.     ld c, $3
  356. diff --git a/constants.asm b/constants.asm
  357. index 944d15f..1c37913 100644
  358. --- a/constants.asm
  359. +++ b/constants.asm
  360. @@ -10,6 +10,7 @@ INCLUDE "constants/type_constants.asm"
  361.  INCLUDE "constants/move_constants.asm"
  362.  INCLUDE "constants/battle_constants.asm"
  363.  INCLUDE "constants/map_constants.asm"
  364. +INCLUDE "constants/map_setup_constants.asm"
  365.  INCLUDE "constants/landmark_constants.asm"
  366.  INCLUDE "constants/item_constants.asm"
  367.  INCLUDE "constants/trainer_constants.asm"
  368. diff --git a/constants/item_constants.asm b/constants/item_constants.asm
  369. index 376a369..4bcff52 100644
  370. --- a/constants/item_constants.asm
  371. +++ b/constants/item_constants.asm
  372. @@ -352,7 +352,7 @@ const_value SET 70
  373.     const HELD_TRADE_EVOLVE
  374.     const HELD_AMULET_COIN
  375.     const HELD_BRIGHTPOWDER
  376. -   const HELD_4E
  377. +   const HELD_78
  378.     const HELD_FOCUS_BAND
  379.  
  380.     const_def
  381. @@ -364,3 +364,12 @@ const_value SET 70
  382.     const ITEMATTR_POCKET
  383.     const ITEMATTR_HELP
  384.  NUM_ITEMATTRS EQU const_value
  385. +
  386. +ITEMMENU_NOUSE              EQU 0
  387. +ITEMMENU_CURRENT            EQU 4
  388. +ITEMMENU_PARTY              EQU 5
  389. +ITEMMENU_FIELD              EQU 6
  390. +
  391. +ITEMCONTEXT_NOTINBATTLE     EQU 0
  392. +ITEMCONTEXT_BATTLEANDFIELD  EQU 5
  393. +ITEMCONTEXT_BATTLEONLY      EQU 6
  394. diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm
  395. index 8509907..833c843 100644
  396. --- a/constants/misc_constants.asm
  397. +++ b/constants/misc_constants.asm
  398. @@ -156,3 +156,6 @@ const_value = 1
  399.     const LINK_TRADECENTER
  400.     const LINK_COLOSSEUM
  401.     const LINK_MOBILE
  402. +
  403. +HMENURETURN_SCRIPT EQU %10000000
  404. +HMENURETURN_ASM    EQU %11111111
  405. diff --git a/constants/phone_constants.asm b/constants/phone_constants.asm
  406. index d49afb2..1eb2b2d 100644
  407. --- a/constants/phone_constants.asm
  408. +++ b/constants/phone_constants.asm
  409. @@ -40,13 +40,28 @@
  410.     const PHONE_BUENA
  411.  
  412.     const_def
  413. -   const ELMCALL_NONE
  414. -   const ELMCALL_POKERUS
  415. -   const ELMCALL_ROBBED
  416. -   const ELMCALL_ASSISTANT
  417. -   const ELMCALL_WEIRDBROADCAST
  418. -   const ELMCALL_SSTICKET
  419. -   const ELMCALL_UNKNOWN
  420. -   const MOMCALL_WORRIED
  421. -   const ELMCALL_MASTERBALL
  422. +   const SPECIALCALL_NONE
  423. +   const SPECIALCALL_POKERUS
  424. +   const SPECIALCALL_ROBBED
  425. +   const SPECIALCALL_ASSISTANT
  426. +   const SPECIALCALL_WEIRDBROADCAST
  427. +   const SPECIALCALL_SSTICKET
  428. +   const SPECIALCALL_BIKESHOP
  429. +   const SPECIALCALL_WORRIED
  430. +   const SPECIALCALL_MASTERBALL
  431.  
  432. +   const_def
  433. +   const PHONE_CONTACT_TRAINER_CLASS
  434. +   const PHONE_CONTACT_TRAINER_NUMBER
  435. +   const PHONE_CONTACT_MAP_GROUP
  436. +   const PHONE_CONTACT_MAP_NUMBER
  437. +   const PHONE_CONTACT_SCRIPT1_TIME
  438. +   const PHONE_CONTACT_SCRIPT1_BANK
  439. +   const PHONE_CONTACT_SCRIPT1_ADDR_LO
  440. +   const PHONE_CONTACT_SCRIPT1_ADDR_HI
  441. +   const PHONE_CONTACT_SCRIPT2_TIME
  442. +   const PHONE_CONTACT_SCRIPT2_BANK
  443. +   const PHONE_CONTACT_SCRIPT2_ADDR_LO
  444. +   const PHONE_CONTACT_SCRIPT2_ADDR_HI
  445. +PHONE_TABLE_WIDTH EQU const_value
  446. +CONTACT_LIST_SIZE EQU 10
  447. diff --git a/constants/script_constants.asm b/constants/script_constants.asm
  448. index 484f00d..191a9c0 100644
  449. --- a/constants/script_constants.asm
  450. +++ b/constants/script_constants.asm
  451. @@ -5,7 +5,7 @@ LAST_TALKED EQU -2
  452.     const_def
  453.     const VAR_STRINGBUFFER2
  454.     const VAR_PARTYCOUNT
  455. -   const VAR_02
  456. +   const VAR_BATTLERESULT
  457.     const VAR_BATTLETYPE
  458.     const VAR_TIMEOFDAY
  459.     const VAR_DEXCAUGHT
  460. @@ -23,11 +23,15 @@ LAST_TALKED EQU -2
  461.     const VAR_CONTESTMINUTES
  462.     const VAR_XCOORD
  463.     const VAR_YCOORD
  464. -   const VAR_POKERUS
  465. +   const VAR_SPECIALPHONECALL
  466.     const VAR_15
  467. -   const VAR_16
  468. +   const VAR_KURT_APRICORNS
  469.     const VAR_CALLERID
  470.     const VAR_BLUECARDBALANCE
  471. -   const VAR_19
  472. +   const VAR_BUENASPASSWORD
  473.     const VAR_KENJI_BREAK
  474.  NUM_VARS EQU const_value
  475. +
  476. +RETVAR_STRBUF2 EQU (0 << 6)
  477. +RETVAR_ADDR_DE EQU (1 << 6)
  478. +RETVAR_EXECUTE EQU (2 << 6)
  479. diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm
  480. index 7113e3d..be46783 100644
  481. --- a/constants/trainer_constants.asm
  482. +++ b/constants/trainer_constants.asm
  483. @@ -614,3 +614,33 @@
  484.     const EUSINE
  485.  
  486.  NUM_TRAINER_CLASSES EQU __enum__
  487. +
  488. +   const_def
  489. +   const       NO_AI
  490. +const_value = 0
  491. +   shift_const AI_BASIC
  492. +   shift_const AI_SETUP
  493. +   shift_const AI_TYPES
  494. +   shift_const AI_OFFENSIVE
  495. +   shift_const AI_SMART
  496. +   shift_const AI_OPPORTUNIST
  497. +   shift_const AI_AGGRESSIVE
  498. +   shift_const AI_CAUTIOUS
  499. +   shift_const AI_STATUS
  500. +   shift_const AI_RISKY
  501. +   shift_const AI_10
  502. +   shift_const AI_11
  503. +   shift_const AI_12
  504. +   shift_const AI_13
  505. +   shift_const AI_14
  506. +   shift_const AI_15
  507. +
  508. +   const_def
  509. +   const TRNATTR_ITEM1
  510. +   const TRNATTR_ITEM2
  511. +   const TRNATTR_BASEMONEY
  512. +   const TRNATTR_AI1
  513. +   const TRNATTR_AI2
  514. +   const TRNATTR_AI3
  515. +   const TRNATTR_AI4
  516. +NUM_TRAINER_ATTRIBUTES EQU const_value
  517. diff --git a/engine/color.asm b/engine/color.asm
  518. index bae8b5e..ed65f59 100644
  519. --- a/engine/color.asm
  520. +++ b/engine/color.asm
  521. @@ -785,16 +785,16 @@ Function973a: ; 973a
  522.  Function974b: ; 974b
  523.     and a
  524.     jp nz, Function97f9
  525. -   ld a, [wd45b]
  526. +   ld a, [wPlayerSpriteSetupFlags]
  527.     bit 2, a
  528. -   jr nz, .asm_9760
  529. +   jr nz, .male
  530.     ld a, [PlayerGender]
  531.     and a
  532. -   jr z, .asm_9760
  533. +   jr z, .male
  534.     ld hl, KrisPalette
  535.     ret
  536.  
  537. -.asm_9760
  538. +.male
  539.     ld hl, PlayerPalette
  540.     ret
  541.  ; 9764
  542. diff --git a/engine/engine_flags.asm b/engine/engine_flags.asm
  543. index 278c7c9..5baa52c 100644
  544. --- a/engine/engine_flags.asm
  545. +++ b/engine/engine_flags.asm
  546. @@ -1,198 +1,200 @@
  547.  ; All locations are in WRAM bank 1.
  548. -
  549. +engine_flag: MACRO
  550. +   dwb , 1 << \2
  551. +ENDM
  552.     ; location, bit
  553.  
  554.     ; pokegear
  555. -   dwb wPokegearFlags, %00000010 ; radio card       ; $0
  556. -   dwb wPokegearFlags, %00000001 ; map card
  557. -   dwb wPokegearFlags, %00000100 ; phone card
  558. -   dwb wPokegearFlags, %00001000 ; expn card
  559. -   dwb wPokegearFlags, %10000000 ; on/off
  560. -
  561. -   ;   wDaycareMan, %10000000 ; daycare 1 on
  562. -   dwb wDaycareMan, %01000000 ; monster 1 and 2 are compatible
  563. -   ;   wDaycareMan, %00100000 ; egg is ready
  564. -   dwb wDaycareMan, %00000001 ; monster 1 in daycare
  565. -
  566. -   ;   wDaycareLady, %10000000 = daycare 2 on
  567. -   dwb wDaycareLady, %00000001 ; monster 2 in daycare
  568. -
  569. -   dwb wMomSavingMoney, %00000001 ; mom saving money ; $8
  570. -   dwb wMomSavingMoney, %10000000 ; dst
  571. -
  572. -   dwb wdc39, %00000001
  573. -
  574. -   dwb StatusFlags, %00000001 ; pokedex
  575. -   dwb StatusFlags, %00000010 ; unown dex
  576. -   dwb StatusFlags, %00001000 ; pokerus
  577. -   dwb StatusFlags, %00010000 ; rocket signal on ch20
  578. -   dwb StatusFlags, %01000000 ; credits skip
  579. -   dwb StatusFlags, %10000000 ; bug contest on   ; $10
  580. -   dwb StatusFlags2, %00000100 ; bug contest timer
  581. -   dwb StatusFlags2, %00000010
  582. -   dwb StatusFlags2, %00000001 ; rockets in radio tower
  583. -   dwb StatusFlags2, %00010000 ; bike shop call enabled (1024 bike steps reqd)
  584. -   dwb StatusFlags2, %00100000 ; give pokerus; berry -> berry juice when trading?
  585. -   dwb StatusFlags2, %01000000
  586. -   dwb StatusFlags2, %10000000 ; rockets in mahogany
  587. -
  588. -   dwb BikeFlags, %00000001 ; strength active  ; $18
  589. -   dwb BikeFlags, %00000010 ; always on bike (cant surf)
  590. -   dwb BikeFlags, %00000100 ; downhill (cycling road)
  591. -
  592. -   dwb JohtoBadges, %00000001 ; zephyrbadge
  593. -   dwb JohtoBadges, %00000010 ; hivebadge
  594. -   dwb JohtoBadges, %00000100 ; plainbadge
  595. -   dwb JohtoBadges, %00001000 ; fogbadge
  596. -   dwb JohtoBadges, %00010000 ; mineralbadge
  597. -   dwb JohtoBadges, %00100000 ; stormbadge ; $20
  598. -   dwb JohtoBadges, %01000000 ; glacierbadge
  599. -   dwb JohtoBadges, %10000000 ; risingbadge
  600. -
  601. -   dwb KantoBadges, %00000001 ; boulderbadge
  602. -   dwb KantoBadges, %00000010 ; cascadebadge
  603. -   dwb KantoBadges, %00000100 ; thunderbadge
  604. -   dwb KantoBadges, %00001000 ; rainbowbadge
  605. -   dwb KantoBadges, %00010000 ; soulbadge
  606. -   dwb KantoBadges, %00100000 ; marshbadge ; $28
  607. -   dwb KantoBadges, %01000000 ; volcanobadge
  608. -   dwb KantoBadges, %10000000 ; earthbadge
  609. +   engine_flag wPokegearFlags, 1 ; radio card       ; $0
  610. +   engine_flag wPokegearFlags, 0 ; map card
  611. +   engine_flag wPokegearFlags, 2 ; phone card
  612. +   engine_flag wPokegearFlags, 3 ; expn card
  613. +   engine_flag wPokegearFlags, 7 ; on/off
  614. +
  615. +   ;   wDaycareMan, 7 ; daycare 1 on
  616. +   engine_flag wDaycareMan, 6 ; monster 1 and 2 are compatible
  617. +   ;   wDaycareMan, 5 ; egg is ready
  618. +   engine_flag wDaycareMan, 0 ; monster 1 in daycare
  619. +
  620. +   ;   wDaycareLady, 7 = daycare 2 on
  621. +   engine_flag wDaycareLady, 0 ; monster 2 in daycare
  622. +
  623. +   engine_flag wMomSavingMoney, 0 ; mom saving money ; $8
  624. +   engine_flag wMomSavingMoney, 7 ; dst
  625. +
  626. +   engine_flag wdc39, 0
  627. +
  628. +   engine_flag StatusFlags, 0 ; pokedex
  629. +   engine_flag StatusFlags, 1 ; unown dex
  630. +   engine_flag StatusFlags, 3 ; pokerus
  631. +   engine_flag StatusFlags, 4 ; rocket signal on ch20
  632. +   engine_flag StatusFlags, 6 ; credits skip
  633. +   engine_flag StatusFlags, 7 ; bug contest on   ; $10
  634. +   engine_flag StatusFlags2, 2 ; bug contest timer
  635. +   engine_flag StatusFlags2, 1
  636. +   engine_flag StatusFlags2, 0 ; rockets in radio tower
  637. +   engine_flag StatusFlags2, 4 ; bike shop call enabled (1024 bike steps reqd)
  638. +   engine_flag StatusFlags2, 5 ; give pokerus
  639. +   engine_flag StatusFlags2, 6 ; berry -> berry juice when trading?
  640. +   engine_flag StatusFlags2, 7 ; rockets in mahogany
  641. +
  642. +   engine_flag BikeFlags, 0 ; strength active  ; $18
  643. +   engine_flag BikeFlags, 1 ; always on bike (cant surf)
  644. +   engine_flag BikeFlags, 2 ; downhill (cycling road)
  645. +
  646. +   engine_flag JohtoBadges, 0 ; zephyrbadge
  647. +   engine_flag JohtoBadges, 1 ; hivebadge
  648. +   engine_flag JohtoBadges, 2 ; plainbadge
  649. +   engine_flag JohtoBadges, 3 ; fogbadge
  650. +   engine_flag JohtoBadges, 4 ; mineralbadge
  651. +   engine_flag JohtoBadges, 5 ; stormbadge ; $20
  652. +   engine_flag JohtoBadges, 6 ; glacierbadge
  653. +   engine_flag JohtoBadges, 7 ; risingbadge
  654. +
  655. +   engine_flag KantoBadges, 0 ; boulderbadge
  656. +   engine_flag KantoBadges, 1 ; cascadebadge
  657. +   engine_flag KantoBadges, 2 ; thunderbadge
  658. +   engine_flag KantoBadges, 3 ; rainbowbadge
  659. +   engine_flag KantoBadges, 4 ; soulbadge
  660. +   engine_flag KantoBadges, 5 ; marshbadge ; $28
  661. +   engine_flag KantoBadges, 6 ; volcanobadge
  662. +   engine_flag KantoBadges, 7 ; earthbadge
  663.  
  664.     ; unown sets
  665. -   dwb UnlockedUnowns, %00000001 ; 1
  666. -   dwb UnlockedUnowns, %00000010 ; 2
  667. -   dwb UnlockedUnowns, %00000100 ; 3
  668. -   dwb UnlockedUnowns, %00001000 ; 4
  669. -   dwb UnlockedUnowns, %00010000 ; 5
  670. -   dwb UnlockedUnowns, %00100000 ; 6       ; $30
  671. -   dwb UnlockedUnowns, %01000000 ; 7
  672. -   dwb UnlockedUnowns, %10000000 ; 8
  673. +   engine_flag UnlockedUnowns, 0 ; 1
  674. +   engine_flag UnlockedUnowns, 1 ; 2
  675. +   engine_flag UnlockedUnowns, 2 ; 3
  676. +   engine_flag UnlockedUnowns, 3 ; 4
  677. +   engine_flag UnlockedUnowns, 4 ; 5
  678. +   engine_flag UnlockedUnowns, 5 ; 6       ; $30
  679. +   engine_flag UnlockedUnowns, 6 ; 7
  680. +   engine_flag UnlockedUnowns, 7 ; 8
  681.  
  682.     ; fly
  683. -   dwb VisitedSpawns, %00000001 ; your house
  684. -   dwb VisitedSpawns, %00000010 ; viridian pokecenter
  685. -   dwb VisitedSpawns, %00000100 ; pallet
  686. -   dwb VisitedSpawns, %00001000 ; viridian
  687. -   dwb VisitedSpawns, %00010000 ; pewter
  688. -   dwb VisitedSpawns, %00100000 ; cerulean ; $38
  689. -   dwb VisitedSpawns, %01000000 ; rock tunnel
  690. -   dwb VisitedSpawns, %10000000 ; vermilion
  691. -   dwb VisitedSpawns + 1, %00000001 ; lavender
  692. -   dwb VisitedSpawns + 1, %00000010 ; saffron
  693. -   dwb VisitedSpawns + 1, %00000100 ; celadon
  694. -   dwb VisitedSpawns + 1, %00001000 ; fuchsia
  695. -   dwb VisitedSpawns + 1, %00010000 ; cinnabar
  696. -   dwb VisitedSpawns + 1, %00100000 ; indigo plateau ; $40
  697. -   dwb VisitedSpawns + 1, %01000000 ; new bark
  698. -   dwb VisitedSpawns + 1, %10000000 ; cherrygrove
  699. -   dwb VisitedSpawns + 2, %00000001 ; violet
  700. -   dwb VisitedSpawns + 2, %00000100 ; azalea
  701. -   dwb VisitedSpawns + 2, %00001000 ; cianwood
  702. -   dwb VisitedSpawns + 2, %00010000 ; goldenrod
  703. -   dwb VisitedSpawns + 2, %00100000 ; olivine
  704. -   dwb VisitedSpawns + 2, %01000000 ; ecruteak  ; $48
  705. -   dwb VisitedSpawns + 2, %10000000 ; mahogany
  706. -   dwb VisitedSpawns + 3, %00000001 ; lake of rage
  707. -   dwb VisitedSpawns + 3, %00000010 ; blackthorn
  708. -   dwb VisitedSpawns + 3, %00000100 ; silver cave
  709. -   dwb VisitedSpawns + 3, %00010000 ; unused
  710. -
  711. -   dwb wLuckyNumberShowFlag, %00000001 ; lucky number show
  712. -   dwb StatusFlags2, %00001000
  713. -
  714. -   dwb DailyFlags, %00000001 ; kurt making balls  ; $50
  715. -   dwb DailyFlags, %00000010
  716. -   dwb DailyFlags, %00000100 ; special wilddata?
  717. -   dwb DailyFlags, %00001000 ; time capsule (24h wait)
  718. -   dwb DailyFlags, %00010000 ; all fruit trees
  719. -   dwb DailyFlags, %00100000 ; shuckle given
  720. -   dwb DailyFlags, %01000000 ; goldenrod underground merchant closed
  721. -   dwb DailyFlags, %10000000 ; fought in trainer hall today
  722. -
  723. -   dwb WeeklyFlags, %00000001 ; mt moon square clefairy  ; $58
  724. -   dwb WeeklyFlags, %00000010 ; union cave lapras
  725. -   dwb WeeklyFlags, %00000100 ; goldenrod underground haircut used
  726. -   dwb WeeklyFlags, %00001000 ; goldenrod mall happiness event floor05 person07
  727. -   dwb WeeklyFlags, %00010000 ; tea in blues house
  728. -   dwb WeeklyFlags, %00100000 ; indigo plateau rival fight
  729. -   dwb WeeklyFlags, %01000000 ; move tutor
  730. -   dwb WeeklyFlags, %10000000 ; buenas password
  731. -
  732. -   dwb SwarmFlags, %00000001 ; $60
  733. -   dwb SwarmFlags, %00000010 ; goldenrod dept store sale is on
  734. -
  735. -   dwb GameTimerPause, %10000000 ; $62
  736. -
  737. -   dwb PlayerGender, %00000001 ; player is female
  738. -
  739. -   dwb wdbf3, %00000100 ; have gs ball after kurt examined it
  740. +   engine_flag VisitedSpawns, 0 ; your house
  741. +   engine_flag VisitedSpawns, 1 ; viridian pokecenter
  742. +   engine_flag VisitedSpawns, 2 ; pallet
  743. +   engine_flag VisitedSpawns, 3 ; viridian
  744. +   engine_flag VisitedSpawns, 4 ; pewter
  745. +   engine_flag VisitedSpawns, 5 ; cerulean ; $38
  746. +   engine_flag VisitedSpawns, 6 ; rock tunnel
  747. +   engine_flag VisitedSpawns, 7 ; vermilion
  748. +   engine_flag VisitedSpawns + 1, 0 ; lavender
  749. +   engine_flag VisitedSpawns + 1, 1 ; saffron
  750. +   engine_flag VisitedSpawns + 1, 2 ; celadon
  751. +   engine_flag VisitedSpawns + 1, 3 ; fuchsia
  752. +   engine_flag VisitedSpawns + 1, 4 ; cinnabar
  753. +   engine_flag VisitedSpawns + 1, 5 ; indigo plateau ; $40
  754. +   engine_flag VisitedSpawns + 1, 6 ; new bark
  755. +   engine_flag VisitedSpawns + 1, 7 ; cherrygrove
  756. +   engine_flag VisitedSpawns + 2, 0 ; violet
  757. +   engine_flag VisitedSpawns + 2, 2 ; azalea
  758. +   engine_flag VisitedSpawns + 2, 3 ; cianwood
  759. +   engine_flag VisitedSpawns + 2, 4 ; goldenrod
  760. +   engine_flag VisitedSpawns + 2, 5 ; olivine
  761. +   engine_flag VisitedSpawns + 2, 6 ; ecruteak  ; $48
  762. +   engine_flag VisitedSpawns + 2, 7 ; mahogany
  763. +   engine_flag VisitedSpawns + 3, 0 ; lake of rage
  764. +   engine_flag VisitedSpawns + 3, 1 ; blackthorn
  765. +   engine_flag VisitedSpawns + 3, 2 ; silver cave
  766. +   engine_flag VisitedSpawns + 3, 4 ; unused
  767. +
  768. +   engine_flag wLuckyNumberShowFlag, 0 ; lucky number show
  769. +   engine_flag StatusFlags2, 3 ; ????
  770. +
  771. +   engine_flag DailyFlags, 0 ; kurt making balls  ; $50
  772. +   engine_flag DailyFlags, 1 ; ????
  773. +   engine_flag DailyFlags, 2 ; special wilddata?
  774. +   engine_flag DailyFlags, 3 ; time capsule (24h wait)
  775. +   engine_flag DailyFlags, 4 ; all fruit trees
  776. +   engine_flag DailyFlags, 5 ; shuckle given
  777. +   engine_flag DailyFlags, 6 ; goldenrod underground merchant closed
  778. +   engine_flag DailyFlags, 7 ; fought in trainer hall today
  779. +
  780. +   engine_flag WeeklyFlags, 0 ; mt moon square clefairy  ; $58
  781. +   engine_flag WeeklyFlags, 1 ; union cave lapras
  782. +   engine_flag WeeklyFlags, 2 ; goldenrod underground haircut used
  783. +   engine_flag WeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07
  784. +   engine_flag WeeklyFlags, 4 ; tea in blues house
  785. +   engine_flag WeeklyFlags, 5 ; indigo plateau rival fight
  786. +   engine_flag WeeklyFlags, 6 ; move tutor
  787. +   engine_flag WeeklyFlags, 7 ; buenas password
  788. +
  789. +   engine_flag SwarmFlags, 0 ; $60
  790. +   engine_flag SwarmFlags, 1 ; goldenrod dept store sale is on
  791. +
  792. +   engine_flag GameTimerPause, 7 ; $62
  793. +
  794. +   engine_flag PlayerGender, 0 ; player is female
  795. +
  796. +   engine_flag wCelebiEvent, 2 ; have gs ball after kurt examined it
  797.  
  798.     ; rematches
  799. -   dwb wDailyRematchFlags, %00000001 ; jack
  800. -   dwb wDailyRematchFlags, %00000010 ; huey
  801. -   dwb wDailyRematchFlags, %00000100 ; gaven
  802. -   dwb wDailyRematchFlags, %00001000 ; beth  ; $68
  803. -   dwb wDailyRematchFlags, %00010000 ; jose
  804. -   dwb wDailyRematchFlags, %00100000 ; reena
  805. -   dwb wDailyRematchFlags, %01000000 ; joey
  806. -   dwb wDailyRematchFlags, %10000000 ; wade
  807. -   dwb wDailyRematchFlags + 1, %00000001 ; ralph
  808. -   dwb wDailyRematchFlags + 1, %00000010 ; liz
  809. -   dwb wDailyRematchFlags + 1, %00000100 ; anthony
  810. -   dwb wDailyRematchFlags + 1, %00001000 ; todd  ; $70
  811. -   dwb wDailyRematchFlags + 1, %00010000 ; gina
  812. -   dwb wDailyRematchFlags + 1, %00100000 ; arnie
  813. -   dwb wDailyRematchFlags + 1, %01000000 ; alan
  814. -   dwb wDailyRematchFlags + 1, %10000000 ; dana
  815. -   dwb wDailyRematchFlags + 2, %00000001 ; chad
  816. -   dwb wDailyRematchFlags + 2, %00000010 ; tully
  817. -   dwb wDailyRematchFlags + 2, %00000100 ; brent
  818. -   dwb wDailyRematchFlags + 2, %00001000 ; tiffany  ; $78
  819. -   dwb wDailyRematchFlags + 2, %00010000 ; vance
  820. -   dwb wDailyRematchFlags + 2, %00100000 ; wilton
  821. -   dwb wDailyRematchFlags + 2, %01000000 ; parry
  822. -   dwb wDailyRematchFlags + 2, %10000000 ; erin
  823. -
  824. -   dwb wDailyPhoneItemFlags, %00000001 ; beverly has nugget
  825. -   dwb wDailyPhoneItemFlags, %00000010 ; jose has star piece
  826. -   dwb wDailyPhoneItemFlags, %00000100 ; wade has item (see bittable1 $032b-e)
  827. -   dwb wDailyPhoneItemFlags, %00001000 ; gina has leaf stone  ; $80
  828. -   dwb wDailyPhoneItemFlags, %00010000 ; alan has fire stone
  829. -   dwb wDailyPhoneItemFlags, %00100000 ; liz has thunderstone
  830. -   dwb wDailyPhoneItemFlags, %01000000 ; derek has nugget
  831. -   dwb wDailyPhoneItemFlags, %10000000 ; tully has water stone
  832. -
  833. -   dwb wDailyPhoneItemFlags + 1, %00000001 ; tiffany has pink bow
  834. -   dwb wDailyPhoneItemFlags + 1, %00000010 ; wilton has item (see bittable1 $032f-31)
  835. -
  836. -   dwb wDailyPhoneTimeOfDayFlags, %00000001
  837. -   dwb wDailyPhoneTimeOfDayFlags, %00000010  ; $88
  838. -   dwb wDailyPhoneTimeOfDayFlags, %00000100
  839. -   dwb wDailyPhoneTimeOfDayFlags, %00001000
  840. -   dwb wDailyPhoneTimeOfDayFlags, %00010000
  841. -   dwb wDailyPhoneTimeOfDayFlags, %00100000
  842. -   dwb wDailyPhoneTimeOfDayFlags, %01000000
  843. -   dwb wDailyPhoneTimeOfDayFlags, %10000000
  844. -
  845. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00000001
  846. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00000010  ; $90
  847. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00000100
  848. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00001000
  849. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00010000
  850. -   dwb wDailyPhoneTimeOfDayFlags + 1, %00100000
  851. -   dwb wDailyPhoneTimeOfDayFlags + 1, %01000000
  852. -   dwb wDailyPhoneTimeOfDayFlags + 1, %10000000
  853. -
  854. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00000001
  855. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00000010  ; $98
  856. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00000100
  857. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00001000
  858. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00010000
  859. -   dwb wDailyPhoneTimeOfDayFlags + 2, %00100000
  860. -   dwb wDailyPhoneTimeOfDayFlags + 2, %01000000
  861. -   dwb wDailyPhoneTimeOfDayFlags + 2, %10000000
  862. -
  863. -   dwb wd45b, %00000100 ; female player has been transformed into male
  864. -
  865. -   dwb SwarmFlags, %00000100 ; dunsparce swarm   ; $a0
  866. -   dwb SwarmFlags, %00001000 ; yanma swarm
  867. +   engine_flag wDailyRematchFlags, 0 ; jack
  868. +   engine_flag wDailyRematchFlags, 1 ; huey
  869. +   engine_flag wDailyRematchFlags, 2 ; gaven
  870. +   engine_flag wDailyRematchFlags, 3 ; beth  ; $68
  871. +   engine_flag wDailyRematchFlags, 4 ; jose
  872. +   engine_flag wDailyRematchFlags, 5 ; reena
  873. +   engine_flag wDailyRematchFlags, 6 ; joey
  874. +   engine_flag wDailyRematchFlags, 7 ; wade
  875. +   engine_flag wDailyRematchFlags + 1, 0 ; ralph
  876. +   engine_flag wDailyRematchFlags + 1, 1 ; liz
  877. +   engine_flag wDailyRematchFlags + 1, 2 ; anthony
  878. +   engine_flag wDailyRematchFlags + 1, 3 ; todd  ; $70
  879. +   engine_flag wDailyRematchFlags + 1, 4 ; gina
  880. +   engine_flag wDailyRematchFlags + 1, 5 ; arnie
  881. +   engine_flag wDailyRematchFlags + 1, 6 ; alan
  882. +   engine_flag wDailyRematchFlags + 1, 7 ; dana
  883. +   engine_flag wDailyRematchFlags + 2, 0 ; chad
  884. +   engine_flag wDailyRematchFlags + 2, 1 ; tully
  885. +   engine_flag wDailyRematchFlags + 2, 2 ; brent
  886. +   engine_flag wDailyRematchFlags + 2, 3 ; tiffany  ; $78
  887. +   engine_flag wDailyRematchFlags + 2, 4 ; vance
  888. +   engine_flag wDailyRematchFlags + 2, 5 ; wilton
  889. +   engine_flag wDailyRematchFlags + 2, 6 ; parry
  890. +   engine_flag wDailyRematchFlags + 2, 7 ; erin
  891. +
  892. +   engine_flag wDailyPhoneItemFlags, 0 ; beverly has nugget
  893. +   engine_flag wDailyPhoneItemFlags, 1 ; jose has star piece
  894. +   engine_flag wDailyPhoneItemFlags, 2 ; wade has item (see bittable1 $032b-e)
  895. +   engine_flag wDailyPhoneItemFlags, 3 ; gina has leaf stone  ; $80
  896. +   engine_flag wDailyPhoneItemFlags, 4 ; alan has fire stone
  897. +   engine_flag wDailyPhoneItemFlags, 5 ; liz has thunderstone
  898. +   engine_flag wDailyPhoneItemFlags, 6 ; derek has nugget
  899. +   engine_flag wDailyPhoneItemFlags, 7 ; tully has water stone
  900. +
  901. +   engine_flag wDailyPhoneItemFlags + 1, 0 ; tiffany has pink bow
  902. +   engine_flag wDailyPhoneItemFlags + 1, 1 ; wilton has item (see bittable1 $032f-31)
  903. +
  904. +   engine_flag wDailyPhoneTimeOfDayFlags, 0
  905. +   engine_flag wDailyPhoneTimeOfDayFlags, 1  ; $88
  906. +   engine_flag wDailyPhoneTimeOfDayFlags, 2
  907. +   engine_flag wDailyPhoneTimeOfDayFlags, 3
  908. +   engine_flag wDailyPhoneTimeOfDayFlags, 4
  909. +   engine_flag wDailyPhoneTimeOfDayFlags, 5
  910. +   engine_flag wDailyPhoneTimeOfDayFlags, 6
  911. +   engine_flag wDailyPhoneTimeOfDayFlags, 7
  912. +
  913. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 0
  914. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 1  ; $90
  915. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 2
  916. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 3
  917. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 4
  918. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 5
  919. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 6
  920. +   engine_flag wDailyPhoneTimeOfDayFlags + 1, 7
  921. +
  922. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 0
  923. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 1  ; $98
  924. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 2
  925. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 3
  926. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 4
  927. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 5
  928. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 6
  929. +   engine_flag wDailyPhoneTimeOfDayFlags + 2, 7
  930. +
  931. +   engine_flag wPlayerSpriteSetupFlags, 2 ; female player has been transformed into male
  932. +
  933. +   engine_flag SwarmFlags, 2 ; dunsparce swarm   ; $a0
  934. +   engine_flag SwarmFlags, 3 ; yanma swarm
  935. diff --git a/engine/events.asm b/engine/events.asm
  936. index 6345288..cc5581e 100644
  937. --- a/engine/events.asm
  938. +++ b/engine/events.asm
  939. @@ -123,7 +123,7 @@ StartMap: ; 96724
  940.     ld hl, MapStatus
  941.     ld bc, $3e ; 62
  942.     call ByteFill
  943. -   callba Function113e5
  944. +   callba InitCallReceiveDelay
  945.     call ClearJoypad
  946.     ; fallthrough
  947.  ; 9673e
  948. @@ -138,19 +138,19 @@ EnterMap: ; 9673e
  949.     call ClearAllScriptFlags3
  950.  
  951.     ld a, [hMapEntryMethod]
  952. -   cp $f7
  953. +   cp ($f << 4) + MAPSETUP_07
  954.     jr nz, .dontset
  955.     call SetAll_ScriptFlags3
  956.  .dontset
  957.  
  958.     ld a, [hMapEntryMethod]
  959. -   cp $f3
  960. +   cp ($f << 4) + MAPSETUP_03
  961.     jr nz, .dontresetpoison
  962.     xor a
  963.     ld [PoisonStepCount], a
  964.  .dontresetpoison
  965.  
  966. -   xor a
  967. +   xor a ; ($0 << 4) + MAPSETUP_00
  968.     ld [hMapEntryMethod], a
  969.     ld a, 2 ; HandleMap
  970.     ld [MapStatus], a
  971. @@ -285,12 +285,12 @@ Function96812: ; 96812
  972.  PlayerEvents: ; 9681f
  973.  
  974.     xor a
  975. -
  976. +; If there's already a player event, don't interrupt it.
  977.     ld a, [ScriptRunning]
  978.     and a
  979.     ret nz
  980.  
  981. -   call Function968e4
  982. +   call Dummy_CheckScriptFlags3Bit5 ; This is a waste of time
  983.  
  984.     call CheckTrainerBattle3
  985.     jr c, .ok
  986. @@ -298,13 +298,13 @@ PlayerEvents: ; 9681f
  987.     call CheckTileEvent
  988.     jr c, .ok
  989.  
  990. -   call Function97c30
  991. +   call RunMemScript
  992.     jr c, .ok
  993.  
  994. -   call Function968ec
  995. +   call DoMapTrigger
  996.     jr c, .ok
  997.  
  998. -   call Function9693a
  999. +   call CheckTimeEvents
  1000.     jr c, .ok
  1001.  
  1002.     call OWPlayerInput
  1003. @@ -436,11 +436,7 @@ SetUpFiveStepWildEncounterCooldown: ; 968d1
  1004.     ret
  1005.  ; 968d7
  1006.  
  1007. -Function968d7: ; 968d7
  1008. -   ret
  1009. -; 968d8
  1010. -
  1011. -Function968d8: ; 968d8
  1012. +SetMinTwoStepWildEncounterCooldown: mobile ; 968d7
  1013.     ld a, [wWildEncounterCooldown]
  1014.     cp 2
  1015.     ret nc
  1016. @@ -449,14 +445,14 @@ Function968d8: ; 968d8
  1017.     ret
  1018.  ; 968e4
  1019.  
  1020. -Function968e4: ; 968e4
  1021. +Dummy_CheckScriptFlags3Bit5: ; 968e4
  1022.     call CheckBit5_ScriptFlags3
  1023.     ret z
  1024. -   call Function2f3e
  1025. +   call ret_2f3e
  1026.     ret
  1027.  ; 968ec
  1028.  
  1029. -Function968ec: ; 968ec
  1030. +DoMapTrigger: ; 968ec
  1031.     ld a, [wdc07]
  1032.     and a
  1033.     jr z, .nope
  1034. @@ -468,7 +464,7 @@ Function968ec: ; 968ec
  1035.  
  1036.     ld e, a
  1037.     ld d, 0
  1038. -   ld hl, wdc07 + 1
  1039. +   ld hl, wdc08
  1040.     ld a, [hli]
  1041.     ld h, [hl]
  1042.     ld l, a
  1043. @@ -505,23 +501,23 @@ endr
  1044.     ret
  1045.  ; 9693a
  1046.  
  1047. -Function9693a: ; 9693a
  1048. +CheckTimeEvents: ; 9693a
  1049.     ld a, [wLinkMode]
  1050.     and a
  1051.     jr nz, .nothing
  1052.  
  1053.     ld hl, StatusFlags2
  1054.     bit 2, [hl]
  1055. -   jr z, .asm_96951
  1056. +   jr z, .do_daily
  1057.  
  1058. -   callba Function114a4
  1059. -   jr c, .elevator
  1060. +   callba CheckBugContestTimer
  1061. +   jr c, .end_bug_contest
  1062.     xor a
  1063.     ret
  1064.  
  1065. -.asm_96951
  1066. -   callba Function11452
  1067. -   callba Function114e7
  1068. +.do_daily
  1069. +   callba CheckDailyResetTimer
  1070. +   callba CheckPokerusTrick
  1071.     callba CheckPhoneCall
  1072.     ret c
  1073.  
  1074. @@ -529,7 +525,7 @@ Function9693a: ; 9693a
  1075.     xor a
  1076.     ret
  1077.  
  1078. -.elevator
  1079. +.end_bug_contest
  1080.     ld a, BANK(BugCatchingContestOverScript)
  1081.     ld hl, BugCatchingContestOverScript
  1082.     call CallScript
  1083. @@ -537,7 +533,7 @@ Function9693a: ; 9693a
  1084.     ret
  1085.  ; 96970
  1086.  
  1087. -Function96970: ; 96970
  1088. +.unused ; 96970
  1089.     ld a, 8
  1090.     scf
  1091.     ret
  1092. @@ -856,7 +852,7 @@ PlayerMovement: ; 96af0
  1093.  ; 96b10
  1094.  
  1095.  .seven ; 96b10
  1096. -   call Function968d7 ; empty
  1097. +   call SetMinTwoStepWildEncounterCooldown ; mobile
  1098.     xor a
  1099.     ld c, a
  1100.     ret
  1101. @@ -898,7 +894,7 @@ PlayerMovement: ; 96af0
  1102.  
  1103.  CheckMenuOW: ; 96b30
  1104.     xor a
  1105. -   ld [$ffa0], a
  1106. +   ld [hMenuReturn], a
  1107.     ld [$ffa1], a
  1108.     ld a, [hJoyPressed]
  1109.  
  1110. @@ -940,9 +936,9 @@ SelectMenuScript: ; 96b5f
  1111.  
  1112.  StartMenuCallback:
  1113.  SelectMenuCallback: ; 96b66
  1114. -   copybytetovar $ffa0
  1115. -   if_equal %10000000, .Script
  1116. -   if_equal -1, .Asm
  1117. +   copybytetovar hMenuReturn
  1118. +   if_equal HMENURETURN_SCRIPT, .Script
  1119. +   if_equal HMENURETURN_ASM, .Asm
  1120.     end
  1121.  ; 96b72
  1122.  
  1123. @@ -957,75 +953,85 @@ SelectMenuCallback: ; 96b66
  1124.  
  1125.  
  1126.  CountStep: ; 96b79
  1127. +   ; Don't count steps in link communication rooms.
  1128.     ld a, [wLinkMode]
  1129.     and a
  1130.     jr nz, .done
  1131.  
  1132. -   callba Function90136
  1133. -   jr c, .setminus1
  1134. +   ; If there is a special phone call, don't count the step.
  1135. +   callba CheckSpecialPhoneCall
  1136. +   jr c, .doscript
  1137.  
  1138. -   call Function96bd7
  1139. -   jr c, .setminus1
  1140. +   ; If Repel wore off, don't count the step.
  1141. +   call DoRepelStep
  1142. +   jr c, .doscript
  1143.  
  1144. +   ; Count the step for poison and total steps
  1145.     ld hl, PoisonStepCount
  1146.     inc [hl]
  1147.     ld hl, StepCount
  1148.     inc [hl]
  1149. -   jr nz, .asm_96b9c
  1150. +   ; Every 256 steps, increase the happiness of all your Pokemon.
  1151. +   jr nz, .skip_happiness
  1152.  
  1153.     callba StepHappiness
  1154.  
  1155. -.asm_96b9c
  1156. +.skip_happiness
  1157. +   ; Every 256 steps, offset from the happiness incrementor by 128 steps,
  1158. +   ; decrease the hatch counter of all your eggs until you reach the first
  1159. +   ; one that is ready to hatch.
  1160.     ld a, [StepCount]
  1161.     cp $80
  1162. -   jr nz, .asm_96bab
  1163. +   jr nz, .skip_egg
  1164.  
  1165. -   callba Function16f3e
  1166. -   jr nz, .set8
  1167. +   callba DoEggStep
  1168. +   jr nz, .hatch
  1169.  
  1170. -.asm_96bab
  1171. +.skip_egg
  1172. +   ; Increase the EXP of (both) DayCare Pokemon by 1.
  1173.     callba DaycareStep
  1174.  
  1175. +   ; Every four steps, deal damage to all Poisoned Pokemon
  1176.     ld hl, PoisonStepCount
  1177.     ld a, [hl]
  1178.     cp 4
  1179. -   jr c, .poisoned
  1180. +   jr c, .skip_poison
  1181.     ld [hl], 0
  1182.  
  1183. -   callba Function505da
  1184. -   jr c, .setminus1
  1185. +   callba DoPoisonStep
  1186. +   jr c, .doscript
  1187.  
  1188. -.poisoned
  1189. -   callba Function97db3
  1190. +.skip_poison
  1191. +   callba DoBikeStep
  1192.  
  1193.  .done
  1194.     xor a
  1195.     ret
  1196.  
  1197. -.setminus1
  1198. +.doscript
  1199.     ld a, -1
  1200.     scf
  1201.     ret
  1202.  
  1203. -.set8
  1204. +.hatch
  1205.     ld a, 8
  1206.     scf
  1207.     ret
  1208.  ; 96bd3
  1209.  
  1210.  
  1211. -Function96bd3: ; 96bd3
  1212. +.unreferenced: ; 96bd3
  1213.     ld a, 7
  1214.     scf
  1215.     ret
  1216.  ; 96bd7
  1217.  
  1218. -Function96bd7: ; 96bd7
  1219. -   ld a, [wdca1]
  1220. +DoRepelStep: ; 96bd7
  1221. +   ld a, [wRepelEffect]
  1222.     and a
  1223.     ret z
  1224.     dec a
  1225. -   ld [wdca1], a
  1226. +   ld [wRepelEffect], a
  1227.     ret nz
  1228.     ld a, BANK(RepelWoreOffScript)
  1229.     ld hl, RepelWoreOffScript
  1230. @@ -1038,7 +1044,7 @@ Function96beb: ; 96beb
  1231.     ld a, [ScriptRunning]
  1232.     and a
  1233.     ret z
  1234. -   cp -1
  1235. +   cp -1 ; run script
  1236.     ret z
  1237.     cp 10
  1238.     ret nc
  1239. @@ -1059,17 +1065,17 @@ endr
  1240.  ; 96c0c
  1241.  
  1242.  ScriptPointers96c0c: ; 96c0c
  1243. -   dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d
  1244. -   dbw BANK(SeenByTrainerScript), SeenByTrainerScript
  1245. -   dbw BANK(TalkToTrainerScript), TalkToTrainerScript
  1246. -   dbw BANK(FindItemInBallScript), FindItemInBallScript
  1247. -   dbw BANK(UnknownScript_0x96c4d), UnknownScript_0x96c4d
  1248. -   dbw BANK(WarpToNewMapScript), WarpToNewMapScript
  1249. -   dbw BANK(FallIntoMapScript), FallIntoMapScript
  1250. -   dbw BANK(UnknownScript_0x124c8), UnknownScript_0x124c8
  1251. -   dbw BANK(HatchEggScript), HatchEggScript
  1252. -   dbw BANK(UnknownScript_0x96c4f), UnknownScript_0x96c4f
  1253. -   dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d
  1254. +   dba Invalid_0x96c2d
  1255. +   dba SeenByTrainerScript
  1256. +   dba TalkToTrainerScript
  1257. +   dba FindItemInBallScript
  1258. +   dba UnknownScript_0x96c4d
  1259. +   dba WarpToNewMapScript
  1260. +   dba FallIntoMapScript
  1261. +   dba UnknownScript_0x124c8
  1262. +   dba HatchEggScript
  1263. +   dba UnknownScript_0x96c4f
  1264. +   dba Invalid_0x96c2d
  1265.  ; 96c2d
  1266.  
  1267.  Invalid_0x96c2d: ; 96c2d
  1268. @@ -1087,12 +1093,12 @@ HatchEggScript: ; 96c2f
  1269.  
  1270.  WarpToNewMapScript: ; 96c34
  1271.     warpsound
  1272. -   newloadmap $f5
  1273. +   newloadmap ($f << 4) + MAPSETUP_05
  1274.     end
  1275.  ; 96c38
  1276.  
  1277.  FallIntoMapScript: ; 96c38
  1278. -   newloadmap $f6
  1279. +   newloadmap ($f << 4) + MAPSETUP_06
  1280.     playsound SFX_KINESIS
  1281.     applymovement PLAYER, MovementData_0x96c48
  1282.     playsound SFX_STRENGTH
  1283. diff --git a/engine/events_2.asm b/engine/events_2.asm
  1284. index 96ebfb5..966fa7d 100644
  1285. --- a/engine/events_2.asm
  1286. +++ b/engine/events_2.asm
  1287. @@ -8,33 +8,39 @@ WarpToSpawnPoint:: ; 97c28
  1288.     ret
  1289.  ; 97c30
  1290.  
  1291. -Function97c30:: ; 97c30
  1292. -   ld a, [wd45c]
  1293. +RunMemScript:: ; 97c30
  1294. +; If there is no script here, we don't need to be here.
  1295. +   ld a, [wMapReentryScriptQueueFlag]
  1296.     and a
  1297.     ret z
  1298. -   ld hl, wd45c + 2
  1299. +; Execute the script at (wMapReentryScriptBank):(wMapReentryScriptAddress).
  1300. +   ld hl, wMapReentryScriptAddress
  1301.     ld a, [hli]
  1302.     ld h, [hl]
  1303.     ld l, a
  1304. -   ld a, [wd45c + 1]
  1305. +   ld a, [wMapReentryScriptBank]
  1306.     call CallScript
  1307.     scf
  1308. +; Clear the buffer for the next script.
  1309.     push af
  1310.     xor a
  1311. -   ld hl, wd45c
  1312. +   ld hl, wMapReentryScriptQueueFlag
  1313.     ld bc, 8
  1314.     call ByteFill
  1315.     pop af
  1316.     ret
  1317.  ; 97c4f
  1318.  
  1319. -Function97c4f:: ; 97c4f
  1320. -   ld hl, wd45c
  1321. +LoadScriptBDE:: ; 97c4f
  1322. +; If there's already a script here, don't overwrite.
  1323. +   ld hl, wMapReentryScriptQueueFlag
  1324.     ld a, [hl]
  1325.     and a
  1326.     ret nz
  1327. +; Set the flag
  1328.     ld [hl], 1
  1329.     inc hl
  1330. +; Load the script pointer b:de into (wMapReentryScriptBank):(wMapReentryScriptAddress)
  1331.     ld [hl], b
  1332.     inc hl
  1333.     ld [hl], e
  1334. @@ -262,46 +268,60 @@ ContestMons: ; 97d87
  1335.     db -1, VENOMOTH,   30, 40
  1336.  ; 97db3
  1337.  
  1338. -Function97db3:: ; 97db3
  1339. +DoBikeStep:: ; 97db3
  1340.     nop
  1341.     nop
  1342. -   ; fallthrough
  1343. -; 97db5
  1344. -
  1345. -Function97db5: ; 97db5
  1346. +   ; If the bike shop owner doesn't have our number, or
  1347. +   ; if we've already gotten the call, we don't have to
  1348. +   ; be here.
  1349.     ld hl, StatusFlags2
  1350.     bit 4, [hl]
  1351.     jr z, .NoCall
  1352. +
  1353. +   ; If we're not on the bike, we don't have to be here.
  1354.     ld a, [PlayerState]
  1355. -   cp 1
  1356. +   cp PLAYER_BIKE
  1357.     jr nz, .NoCall
  1358. +
  1359. +   ; If we're not in an area of phone service, we don't
  1360. +   ; have to be here.
  1361.     call GetMapHeaderPhoneServiceNybble
  1362.     and a
  1363.     jr nz, .NoCall
  1364. -   ld hl, wdca1 + 1
  1365. +
  1366. +   ; Check the bike step count and check whether we've
  1367. +   ; taken 65536 of them yet.
  1368. +   ld hl, wBikeStep
  1369.     ld a, [hli]
  1370.     ld d, a
  1371.     ld e, [hl]
  1372. -   cp -1
  1373. -   jr nz, .asm_97dd8
  1374. +   cp 255
  1375. +   jr nz, .increment
  1376.     ld a, e
  1377. -   cp -1
  1378. -   jr z, .asm_97ddc
  1379. +   cp 255
  1380. +   jr z, .dont_increment
  1381.  
  1382. -.asm_97dd8
  1383. +.increment
  1384.     inc de
  1385.     ld [hl], e
  1386.     dec hl
  1387.     ld [hl], d
  1388.  
  1389. -.asm_97ddc
  1390. +.dont_increment
  1391. +   ; If we've taken at least 1024 steps, have the bike
  1392. +   ;  shop owner try to call us.
  1393.     ld a, d
  1394. -   cp $4
  1395. +   cp 1024 >> 8
  1396.     jr c, .NoCall
  1397. +
  1398. +   ; If a call has already been queued, don't overwrite
  1399. +   ; that call.
  1400.     ld a, [wSpecialPhoneCallID]
  1401.     and a
  1402.     jr nz, .NoCall
  1403. -   ld a, 6
  1404. +
  1405. +   ; Queue the call.
  1406. +   ld a, SPECIALCALL_BIKESHOP
  1407.     ld [wSpecialPhoneCallID], a
  1408.     xor a
  1409.     ld [wSpecialPhoneCallID + 1], a
  1410. @@ -488,7 +508,7 @@ Function97eb7: ; 97eb7
  1411.  ; 97eb8
  1412.  
  1413.  Function97eb8: ; 97eb8
  1414. -   call Function2f3e
  1415. +   call ret_2f3e
  1416.     ret
  1417.  ; 97ebc
  1418.  
  1419. diff --git a/engine/fruit_trees.asm b/engine/fruit_trees.asm
  1420. index 9404a55..9002404 100644
  1421. --- a/engine/fruit_trees.asm
  1422. +++ b/engine/fruit_trees.asm
  1423. @@ -58,7 +58,7 @@ CheckFruitTree: ; 44055
  1424.  ; 4405f
  1425.  
  1426.  PickedFruitTree: ; 4405f
  1427. -   callba Function10609b ; empty function
  1428. +   callba MobileFn_10609b ; empty function
  1429.     ld b, 1
  1430.     jp GetFruitTreeFlag
  1431.  ; 4406a
  1432. diff --git a/engine/map_objects.asm b/engine/map_objects.asm
  1433. index f4eef1a..d73ebd1 100644
  1434. --- a/engine/map_objects.asm
  1435. +++ b/engine/map_objects.asm
  1436. @@ -2196,7 +2196,7 @@ Function4ecd: ; 4ecd
  1437.     add hl, bc
  1438.     ld a, [hl]
  1439.     ld b, a
  1440. -   callba Function807e
  1441. +   callba CopyDECoordsToMapObject
  1442.     pop bc
  1443.     ld hl, OBJECT_FLAGS
  1444.     add hl, bc
  1445. @@ -3064,7 +3064,7 @@ Function579d: ; 579d
  1446.  ; 57bc
  1447.  
  1448.  Function57bc: ; 57bc
  1449. -   ld hl, wd45b
  1450. +   ld hl, wPlayerSpriteSetupFlags
  1451.     bit 7, [hl]
  1452.     jr nz, .ok
  1453.     ret
  1454. @@ -3076,10 +3076,10 @@ Function57bc: ; 57bc
  1455.  ; 57ca
  1456.  
  1457.  Function57ca: ; 57ca
  1458. -   ld hl, wd45b
  1459. +   ld hl, wPlayerSpriteSetupFlags
  1460.     bit 5, [hl]
  1461.     ret z
  1462. -   ld a, [wd45b]
  1463. +   ld a, [wPlayerSpriteSetupFlags]
  1464.     and 3
  1465.  rept 2
  1466.     add a
  1467. diff --git a/engine/map_setup.asm b/engine/map_setup.asm
  1468. index f89d68a..09c8cfe 100644
  1469. --- a/engine/map_setup.asm
  1470. +++ b/engine/map_setup.asm
  1471. @@ -31,222 +31,171 @@ MapSetupScripts: ; 15377
  1472.     dw MapSetupScript12
  1473.  ; 1538f
  1474.  
  1475. -
  1476. -; Command descriptions from Condensation water's scripting compendium.
  1477. -   const_def
  1478. -   const map_lcd_on              ; 00 = Turn LCD on
  1479. -   const map_lcd_off             ; 01 = Turn LCD off
  1480. -   const map_sound_off           ; 02 = Turn speakers off
  1481. -   const map_music               ; 03 = Music check for current map/ special check for bug catcher contest
  1482. -   const map_start_music         ; 04 = Start map music anew
  1483. -   const map_fade_music          ; 05 = Music check for current map / special check for Bug Contest/ music with FadeOut (old) and FadeIn
  1484. -   const map_fade                ; 06 = Fade out music + screen
  1485. -   const map_bike_music          ; 07 = If HIRO is on bike = bike music, else play map music
  1486. -   const map_music_force         ; 08 = Play map music
  1487. -   const map_max_volume          ; 09 = Turn music to highest volume
  1488. -   const map_load_blocks         ; 0A = Write map data to MapRAM
  1489. -   const map_connection_blocks   ; 0B = Compute map’s connection pars and write into MapRAM
  1490. -   const map_save_screen         ; 0C = Write current part of map into temporary memory
  1491. -   const map_buffer_screen       ; 0D = Write current part of map into read-from memory
  1492. -   const map_load_graphics       ; 0E = Write tileset header to ram/ load tileset/ load sprite tiles/ load special tiles
  1493. -   const map_load_tileset_header ; 0F = Write tileset header to ram
  1494. -   const map_time_of_day         ; 10 = Compute time of day/ Update screen
  1495. -   const map_palettes            ; 11 = Load map palettes
  1496. -   const map_wildmons            ; 12 = Load probabilities for wild Pokémon battles
  1497. -   const map_sprites             ; 13 = Delete sprite data and draw new sprites
  1498. -   const map_change_callback     ; 14 = Check 2nd script header for 05 and 03 callbacks
  1499. -   const map_start_callback      ; 15 = Check 2nd script header for 03 callbacks
  1500. -   const map_load_objects        ; 16 = Analyze people data anew and check 2nd script header for 02 callbacks
  1501. -   const map_load_spawn          ; 17 = Writes arrival data for arrival by flying/Blackout from table 05:5319 to ram
  1502. -   const map_load_connection     ; 18 = Writes arrival data for entering a map by connection to ram
  1503. -   const map_load_warp           ; 19 = Write warp data to ram when entering warp
  1504. -   const map_attributes          ; 1A = Load complete map data (primary, secondary, event, script headers)
  1505. -   const map_attributes_2        ; 1B = Same as 1A, but some settings aren’t loaded new from the rom, such as hide function of the people events
  1506. -   const map_clear_bg_palettes   ; 1C = Fill palette data with FFFF (=white)
  1507. -   const map_fade_out_palettes   ; 1D = All BG pallet color are converted to 0|0 (Pal0, Col0), all sprite colors to x|0 (FadeOut)
  1508. -   const map_fade_in_palettes    ; 1E = Palette FadeIn
  1509. -   const map_anchor_screen       ; 1F = Compute position of upper left-most block visible on screen
  1510. -   const map_warp_face           ; 20 = Position computation when HIRO leaves a warp
  1511. -   const map_face_down           ; 21 = Set HIRO’s facing to “down”
  1512. -   const map_spawn_coord         ; 22 = Prepare HIRO data for arrival by flight
  1513. -   const map_player_coord        ; 23 = Compute HIRO x/y data anew
  1514. -   const map_prolong_sprites     ; 24 = Prolong old sprites before removing them
  1515. -   const map_delay_sprites       ; 25 = Delay rendering new sprites
  1516. -   const map_update_roam         ; 26 = Compute chances to meet Raikou, Entei or Suicune
  1517. -   const map_keep_roam           ; 27 = Recover chances to meet Raikou, Entei or Suicune
  1518. -   const map_fade_out_music      ; 28 = Temporarily stop music playing
  1519. -   const map_animations_on       ; 29 = Activate animations
  1520. -   const map_animations_off      ; 2A = Deactivate animations
  1521. -   const map_keep_palettes       ; 2B = Recover all palettes
  1522. -   const map_text_scroll_off     ; 2C = Turn off text scroll (for town name overlays)
  1523. -   const map_stop_script         ; 2D = Deactivate code prolonging
  1524. -
  1525. -
  1526.  MapSetupScript4: ; 1538f
  1527. -   db map_prolong_sprites
  1528. +   map_prolong_sprites
  1529.  
  1530.  MapSetupScript12: ; 15390
  1531. -   db map_fade_out_palettes
  1532. -   db map_keep_roam
  1533. +   map_fade_out_palettes
  1534. +   map_keep_roam
  1535.  
  1536.  MapSetupScript1: ; 15392
  1537. -   db map_lcd_off
  1538. -   db map_sound_off
  1539. -   db map_load_spawn
  1540. -   db map_attributes
  1541. -   db map_change_callback
  1542. -   db map_spawn_coord
  1543. -   db map_player_coord
  1544. -   db map_anchor_screen
  1545. -   db map_load_blocks
  1546. -   db map_buffer_screen
  1547. -   db map_load_graphics
  1548. -   db map_time_of_day
  1549. -   db map_load_objects
  1550. -   db map_lcd_on
  1551. -   db map_palettes
  1552. -   db map_face_down
  1553. -   db map_sprites
  1554. -   db map_bike_music
  1555. -   db map_max_volume
  1556. -   db map_fade_in_palettes
  1557. -   db map_animations_on
  1558. -   db map_wildmons
  1559. -   db -1
  1560. +   map_lcd_off
  1561. +   map_sound_off
  1562. +   map_load_spawn
  1563. +   map_attributes
  1564. +   map_change_callback
  1565. +   map_spawn_coord
  1566. +   map_player_coord
  1567. +   map_anchor_screen
  1568. +   map_load_blocks
  1569. +   map_buffer_screen
  1570. +   map_load_graphics
  1571. +   map_time_of_day
  1572. +   map_load_objects
  1573. +   map_lcd_on
  1574. +   map_palettes
  1575. +   map_face_down
  1576. +   map_sprites
  1577. +   map_bike_music
  1578. +   map_max_volume
  1579. +   map_fade_in_palettes
  1580. +   map_animations_on
  1581. +   map_wildmons
  1582. +   map_end_setup_script
  1583.  
  1584.  MapSetupScript11: ; 153a9
  1585. -   db map_load_spawn
  1586. -   db map_attributes
  1587. -   db map_change_callback
  1588. -   db map_spawn_coord
  1589. -   db map_player_coord
  1590. -   db map_anchor_screen
  1591. -   db map_load_blocks
  1592. -   db map_buffer_screen
  1593. -   db map_lcd_off
  1594. -   db map_load_graphics
  1595. -   db map_time_of_day
  1596. -   db map_fade_out_music
  1597. -   db map_lcd_on
  1598. -   db map_load_objects
  1599. -   db map_palettes
  1600. -   db map_face_down
  1601. -   db map_sprites
  1602. -   db map_fade_music
  1603. -   db map_fade_in_palettes
  1604. -   db map_animations_on
  1605. -   db map_wildmons
  1606. -   db -1
  1607. +   map_load_spawn
  1608. +   map_attributes
  1609. +   map_change_callback
  1610. +   map_spawn_coord
  1611. +   map_player_coord
  1612. +   map_anchor_screen
  1613. +   map_load_blocks
  1614. +   map_buffer_screen
  1615. +   map_lcd_off
  1616. +   map_load_graphics
  1617. +   map_time_of_day
  1618. +   map_fade_out_music
  1619. +   map_lcd_on
  1620. +   map_load_objects
  1621. +   map_palettes
  1622. +   map_face_down
  1623. +   map_sprites
  1624. +   map_fade_music
  1625. +   map_fade_in_palettes
  1626. +   map_animations_on
  1627. +   map_wildmons
  1628. +   map_end_setup_script
  1629.  
  1630.  MapSetupScript7: ; 153bf
  1631. -   db map_animations_off
  1632. -   db map_load_connection
  1633. -   db map_attributes
  1634. -   db map_change_callback
  1635. -   db map_player_coord
  1636. -   db map_load_blocks
  1637. -   db map_load_tileset_header
  1638. -   db map_save_screen
  1639. -   db map_load_objects
  1640. -   db map_fade_music
  1641. -   db map_palettes
  1642. -   db map_stop_script
  1643. -   db map_keep_palettes
  1644. -   db map_wildmons
  1645. -   db map_update_roam
  1646. -   db map_animations_on
  1647. -   db -1
  1648. +   map_animations_off
  1649. +   map_load_connection
  1650. +   map_attributes
  1651. +   map_change_callback
  1652. +   map_player_coord
  1653. +   map_load_blocks
  1654. +   map_load_tileset_header
  1655. +   map_save_screen
  1656. +   map_load_objects
  1657. +   map_fade_music
  1658. +   map_palettes
  1659. +   map_stop_script
  1660. +   map_keep_palettes
  1661. +   map_wildmons
  1662. +   map_update_roam
  1663. +   map_animations_on
  1664. +   map_end_setup_script
  1665.  
  1666.  MapSetupScript6: ; 153d0
  1667. -   db map_prolong_sprites
  1668. +   map_prolong_sprites
  1669.  
  1670.  MapSetupScript5: ; 153d1
  1671. -   db map_fade_out_palettes
  1672. +   map_fade_out_palettes
  1673.  
  1674.  MapSetupScript9: ; 153d2
  1675. -   db map_load_warp
  1676. -   db map_attributes
  1677. -   db map_warp_face
  1678. -   db map_change_callback
  1679. -   db map_player_coord
  1680. -   db map_load_blocks
  1681. -   db map_buffer_screen
  1682. -   db map_lcd_off
  1683. -   db map_load_graphics
  1684. -   db map_time_of_day
  1685. -   db map_fade_out_music
  1686. -   db map_lcd_on
  1687. -   db map_load_objects
  1688. -   db map_palettes
  1689. -   db map_sprites
  1690. -   db map_fade_music
  1691. -   db map_fade_in_palettes
  1692. -   db map_animations_on
  1693. -   db map_wildmons
  1694. -   db map_update_roam
  1695. -   db -1
  1696. +   map_load_warp
  1697. +   map_attributes
  1698. +   map_warp_face
  1699. +   map_change_callback
  1700. +   map_player_coord
  1701. +   map_load_blocks
  1702. +   map_buffer_screen
  1703. +   map_lcd_off
  1704. +   map_load_graphics
  1705. +   map_time_of_day
  1706. +   map_fade_out_music
  1707. +   map_lcd_on
  1708. +   map_load_objects
  1709. +   map_palettes
  1710. +   map_sprites
  1711. +   map_fade_music
  1712. +   map_fade_in_palettes
  1713. +   map_animations_on
  1714. +   map_wildmons
  1715. +   map_update_roam
  1716. +   map_end_setup_script
  1717.  
  1718.  MapSetupScript3: ; 153e7
  1719. -   db map_fade
  1720. -   db map_clear_bg_palettes
  1721. -   db map_lcd_off
  1722. -   db map_sound_off
  1723. -   db map_load_blocks
  1724. -   db map_connection_blocks
  1725. -   db map_load_graphics
  1726. -   db map_time_of_day
  1727. -   db map_lcd_on
  1728. -   db map_palettes
  1729. -   db map_sprites
  1730. -   db map_music_force
  1731. -   db map_fade_in_palettes
  1732. -   db map_animations_on
  1733. -   db map_wildmons
  1734. -   db -1
  1735. +   map_fade
  1736. +   map_clear_bg_palettes
  1737. +   map_lcd_off
  1738. +   map_sound_off
  1739. +   map_load_blocks
  1740. +   map_connection_blocks
  1741. +   map_load_graphics
  1742. +   map_time_of_day
  1743. +   map_lcd_on
  1744. +   map_palettes
  1745. +   map_sprites
  1746. +   map_music_force
  1747. +   map_fade_in_palettes
  1748. +   map_animations_on
  1749. +   map_wildmons
  1750. +   map_end_setup_script
  1751.  
  1752.  MapSetupScript8: ; 153f7
  1753. -   db map_fade
  1754. -   db map_lcd_off
  1755. -   db map_sound_off
  1756. -   db map_change_callback
  1757. -   db map_load_blocks
  1758. -   db map_buffer_screen
  1759. -   db map_load_graphics
  1760. -   db map_time_of_day
  1761. -   db map_lcd_on
  1762. -   db map_palettes
  1763. -   db map_sprites
  1764. -   db map_bike_music
  1765. -   db map_fade_in_palettes
  1766. -   db map_animations_on
  1767. -   db map_wildmons
  1768. -   db map_text_scroll_off
  1769. -   db -1
  1770. +   map_fade
  1771. +   map_lcd_off
  1772. +   map_sound_off
  1773. +   map_change_callback
  1774. +   map_load_blocks
  1775. +   map_buffer_screen
  1776. +   map_load_graphics
  1777. +   map_time_of_day
  1778. +   map_lcd_on
  1779. +   map_palettes
  1780. +   map_sprites
  1781. +   map_bike_music
  1782. +   map_fade_in_palettes
  1783. +   map_animations_on
  1784. +   map_wildmons
  1785. +   map_text_scroll_off
  1786. +   map_end_setup_script
  1787.  
  1788.  MapSetupScript2: ; 15408
  1789. -   db map_lcd_off
  1790. -   db map_sound_off
  1791. -   db map_attributes_2
  1792. -   db map_anchor_screen
  1793. -   db map_start_callback
  1794. -   db map_load_blocks
  1795. -   db map_connection_blocks
  1796. -   db map_buffer_screen
  1797. -   db map_load_graphics
  1798. -   db map_time_of_day
  1799. -   db map_lcd_on
  1800. -   db map_palettes
  1801. -   db map_sprites
  1802. -   db map_bike_music
  1803. -   db map_fade_in_palettes
  1804. -   db map_animations_on
  1805. -   db map_wildmons
  1806. -   db -1
  1807. +   map_lcd_off
  1808. +   map_sound_off
  1809. +   map_attributes_2
  1810. +   map_anchor_screen
  1811. +   map_start_callback
  1812. +   map_load_blocks
  1813. +   map_connection_blocks
  1814. +   map_buffer_screen
  1815. +   map_load_graphics
  1816. +   map_time_of_day
  1817. +   map_lcd_on
  1818. +   map_palettes
  1819. +   map_sprites
  1820. +   map_bike_music
  1821. +   map_fade_in_palettes
  1822. +   map_animations_on
  1823. +   map_wildmons
  1824. +   map_end_setup_script
  1825.  
  1826.  MapSetupScript10: ; 1541a
  1827. -   db map_load_blocks
  1828. -   db map_connection_blocks
  1829. -   db -1
  1830. +   map_load_blocks
  1831. +   map_connection_blocks
  1832. +   map_end_setup_script
  1833.  
  1834.  
  1835.  ReadMapSetupScript: ; 1541d
  1836. @@ -374,13 +323,13 @@ Function154ea: ; 154ea
  1837.  ; 154eb
  1838.  
  1839.  DelayClearingOldSprites: ; 154eb
  1840. -   ld hl, wd45b
  1841. +   ld hl, wPlayerSpriteSetupFlags
  1842.     set 7, [hl]
  1843.     ret
  1844.  ; 154f1
  1845.  
  1846.  DelayLoadingNewSprites: ; 154f1
  1847. -   ld hl, wd45b
  1848. +   ld hl, wPlayerSpriteSetupFlags
  1849.     set 6, [hl]
  1850.     ret
  1851.  
  1852. diff --git a/engine/more_phone_scripts.asm b/engine/more_phone_scripts.asm
  1853. index a219251..5bc1f15 100644
  1854. --- a/engine/more_phone_scripts.asm
  1855. +++ b/engine/more_phone_scripts.asm
  1856. @@ -1656,5 +1656,5 @@ UnknownScript_0xa0b04:
  1857.  BikeShopPhoneScript:
  1858.     farwritetext UnknownText_0x174000
  1859.     clearflag ENGINE_BIKE_SHOP_CALL_ENABLED
  1860. -   specialphonecall ELMCALL_NONE
  1861. +   specialphonecall SPECIALCALL_NONE
  1862.     end
  1863. diff --git a/engine/pack.asm b/engine/pack.asm
  1864. index 310be0f..caf2bad 100644
  1865. --- a/engine/pack.asm
  1866. +++ b/engine/pack.asm
  1867. @@ -54,24 +54,24 @@ Function10046: ; 10046 (4:4046)
  1868.  Function10056: ; 10056 (4:4056)
  1869.     xor a
  1870.     ld [wcf65], a
  1871. -   call Function10a36
  1872. -   call Function109bb
  1873. -   call Function1089a
  1874. +   call ClearPocketList
  1875. +   call DrawPocketName
  1876. +   call WaitBGMap_DrawPackGFX
  1877.     call Function10866
  1878.     ret
  1879.  
  1880.  Function10067: ; 10067 (4:4067)
  1881.     ld hl, MenuDataHeader_0x10a4f
  1882.     call CopyMenuDataHeader
  1883. -   ld a, [wd0d9]
  1884. -   ld [wcf88], a
  1885. +   ld a, [wItemsPocketPointerLocation]
  1886. +   ld [wPocketPointerLocationBuffer], a
  1887.     ld a, [wd0df]
  1888.     ld [wd0e4], a
  1889.     call Function350c
  1890.     ld a, [wd0e4]
  1891.     ld [wd0df], a
  1892.     ld a, [wcfa9]
  1893. -   ld [wd0d9], a
  1894. +   ld [wItemsPocketPointerLocation], a
  1895.     ld b, $7
  1896.     ld c, $3
  1897.     call Function108d4
  1898. @@ -82,24 +82,24 @@ Function10067: ; 10067 (4:4067)
  1899.  Function10094: ; 10094 (4:4094)
  1900.     ld a, $2
  1901.     ld [wcf65], a
  1902. -   call Function10a36
  1903. -   call Function109bb
  1904. -   call Function1089a
  1905. +   call ClearPocketList
  1906. +   call DrawPocketName
  1907. +   call WaitBGMap_DrawPackGFX
  1908.     call Function10866
  1909.     ret
  1910.  
  1911.  Function100a6: ; 100a6 (4:40a6)
  1912.     ld hl, MenuDataHeader_0x10a7f
  1913.     call CopyMenuDataHeader
  1914. -   ld a, [wd0da]
  1915. -   ld [wcf88], a
  1916. +   ld a, [wKeyItemsPocketPointerLocation]
  1917. +   ld [wPocketPointerLocationBuffer], a
  1918.     ld a, [wd0e0]
  1919.     ld [wd0e4], a
  1920.     call Function350c
  1921.     ld a, [wd0e4]
  1922.     ld [wd0e0], a
  1923.     ld a, [wcfa9]
  1924. -   ld [wd0da], a
  1925. +   ld [wKeyItemsPocketPointerLocation], a
  1926.     ld b, $3
  1927.     ld c, $7
  1928.     call Function108d4
  1929. @@ -110,11 +110,11 @@ Function100a6: ; 100a6 (4:40a6)
  1930.  Function100d3: ; 100d3 (4:40d3)
  1931.     ld a, $3
  1932.     ld [wcf65], a
  1933. -   call Function10a36
  1934. -   call Function109bb
  1935. +   call ClearPocketList
  1936. +   call DrawPocketName
  1937.     xor a
  1938.     ld [hBGMapMode], a ; $ff00+$d4
  1939. -   call Function1089a
  1940. +   call WaitBGMap_DrawPackGFX
  1941.     call Function10866
  1942.     ret
  1943.  
  1944. @@ -125,7 +125,7 @@ Function100e8: ; 100e8 (4:40e8)
  1945.     call Function108d4
  1946.     ret c
  1947.     callba _CheckTossableItem
  1948. -   ld a, [wd142]
  1949. +   ld a, [wItemAttributeParamBuffer]
  1950.     and a
  1951.     jr nz, .asm_1010a
  1952.     ld hl, MenuDataHeader_0x1013b
  1953. @@ -205,31 +205,31 @@ Function10159: ; 10159
  1954.     xor a
  1955.     ld [hBGMapMode], a ; $ff00+$d4
  1956.     call Function10955
  1957. -   call Function1089a
  1958. +   call WaitBGMap_DrawPackGFX
  1959.     call Function10a40
  1960.     ret
  1961.  
  1962.  Function10186: ; 10186 (4:4186)
  1963.     ld a, $1
  1964.     ld [wcf65], a
  1965. -   call Function10a36
  1966. -   call Function109bb
  1967. -   call Function1089a
  1968. +   call ClearPocketList
  1969. +   call DrawPocketName
  1970. +   call WaitBGMap_DrawPackGFX
  1971.     call Function10866
  1972.     ret
  1973.  
  1974.  Function10198: ; 10198 (4:4198)
  1975.     ld hl, MenuDataHeader_0x10aaf
  1976.     call CopyMenuDataHeader
  1977. -   ld a, [wd0db]
  1978. -   ld [wcf88], a
  1979. +   ld a, [wBallsPocketPointerLocation]
  1980. +   ld [wPocketPointerLocationBuffer], a
  1981.     ld a, [wd0e1]
  1982.     ld [wd0e4], a
  1983.     call Function350c
  1984.     ld a, [wd0e4]
  1985.     ld [wd0e1], a
  1986.     ld a, [wcfa9]
  1987. -   ld [wd0db], a
  1988. +   ld [wBallsPocketPointerLocation], a
  1989.     ld b, $1
  1990.     ld c, $5
  1991.     call Function108d4
  1992. @@ -239,54 +239,62 @@ Function10198: ; 10198 (4:4198)
  1993.  
  1994.  Function101c5: ; 101c5 (4:41c5)
  1995.     callba _CheckTossableItem
  1996. -   ld a, [wd142]
  1997. +   ld a, [wItemAttributeParamBuffer]
  1998.     and a
  1999. -   jr nz, .asm_101f9
  2000. +   jr nz, .tossable
  2001.     callba CheckSelectableItem
  2002. -   ld a, [wd142]
  2003. +   ld a, [wItemAttributeParamBuffer]
  2004.     and a
  2005. -   jr nz, .asm_101eb
  2006. +   jr nz, .selectable
  2007.     callba CheckItemMenu
  2008. -   ld a, [wd142]
  2009. +   ld a, [wItemAttributeParamBuffer]
  2010.     and a
  2011. -   jr nz, .asm_10207
  2012. -   jr .asm_10227
  2013. -.asm_101eb
  2014. +   jr nz, .usable
  2015. +   jr .unusable
  2016. +
  2017. +.selectable
  2018.     callba CheckItemMenu
  2019. -   ld a, [wd142]
  2020. +   ld a, [wItemAttributeParamBuffer]
  2021.     and a
  2022. -   jr nz, .asm_1020f
  2023. -   jr .asm_1022f
  2024. -.asm_101f9
  2025. +   jr nz, .selectable_usable
  2026. +   jr .selectable_unusable
  2027. +
  2028. +.tossable
  2029.     callba CheckSelectableItem
  2030. -   ld a, [wd142]
  2031. +   ld a, [wItemAttributeParamBuffer]
  2032.     and a
  2033. -   jr nz, .asm_10217
  2034. -   jr .asm_1021f
  2035. -.asm_10207
  2036. +   jr nz, .tossable_selectable
  2037. +   jr .tossable_unselectable
  2038. +
  2039. +.usable
  2040.     ld hl, MenuDataHeader_0x10249
  2041.     ld de, Jumptable_1026a
  2042. -   jr .asm_10235
  2043. -.asm_1020f
  2044. +   jr .build_menu
  2045. +
  2046. +.selectable_usable
  2047.     ld hl, MenuDataHeader_0x10274
  2048.     ld de, Jumptable_10291
  2049. -   jr .asm_10235
  2050. -.asm_10217
  2051. +   jr .build_menu
  2052. +
  2053. +.tossable_selectable
  2054.     ld hl, MenuDataHeader_0x10299
  2055.     ld de, Jumptable_102ac
  2056. -   jr .asm_10235
  2057. -.asm_1021f
  2058. +   jr .build_menu
  2059. +
  2060. +.tossable_unselectable
  2061.     ld hl, MenuDataHeader_0x102b0
  2062.     ld de, Jumptable_102c7
  2063. -   jr .asm_10235
  2064. -.asm_10227
  2065. +   jr .build_menu
  2066. +
  2067. +.unusable
  2068.     ld hl, MenuDataHeader_0x102cd
  2069.     ld de, Jumptable_102ea
  2070. -   jr .asm_10235
  2071. -.asm_1022f
  2072. +   jr .build_menu
  2073. +
  2074. +.selectable_unusable
  2075.     ld hl, MenuDataHeader_0x102f2
  2076.     ld de, Jumptable_1030b
  2077. -.asm_10235
  2078. +.build_menu
  2079.     push de
  2080.     call LoadMenuDataHeader
  2081.     call InterpretMenu2
  2082. @@ -350,7 +358,7 @@ Jumptable_10291: ; 10291
  2083.  ; 10299
  2084.  
  2085.  MenuDataHeader_0x10299: ; 0x10299
  2086. -   db $40 ; flags
  2087. +   db %01000000 ; flags
  2088.     db 07, 13 ; start coords
  2089.     db 11, 19 ; end coords
  2090.     dw MenuData2_0x102a1
  2091. @@ -370,7 +378,7 @@ Jumptable_102ac: ; 102ac
  2092.  ; 102b0
  2093.  
  2094.  MenuDataHeader_0x102b0: ; 0x102b0
  2095. -   db $40 ; flags
  2096. +   db %01000000 ; flags
  2097.     db 05, 13 ; start coords
  2098.     db 11, 19 ; end coords
  2099.     dw MenuData2_0x102b8
  2100. @@ -439,52 +447,52 @@ Jumptable_1030b: ; 1030b
  2101.  
  2102.  Function10311: ; 10311
  2103.     callba CheckItemMenu
  2104. -   ld a, [wd142]
  2105. -   ld hl, Jumptable_1031f
  2106. +   ld a, [wItemAttributeParamBuffer]
  2107. +   ld hl, .jumptable
  2108.     rst JumpTable
  2109.     ret
  2110.  ; 1031f
  2111.  
  2112. -Jumptable_1031f: ; 1031f (4:431f)
  2113. -   dw Function1032d
  2114. -   dw Function1032d
  2115. -   dw Function1032d
  2116. -   dw Function1032d
  2117. -   dw Function10334
  2118. -   dw Function10338
  2119. -   dw Function10355
  2120. +.jumptable: ; 1031f (4:431f)
  2121. +   dw .Oak
  2122. +   dw .Oak
  2123. +   dw .Oak
  2124. +   dw .Oak
  2125. +   dw .Current
  2126. +   dw .Party
  2127. +   dw .Field
  2128.  ; 1035c
  2129.  
  2130. -Function1032d: ; 1032d (4:432d)
  2131. +.Oak: ; 1032d (4:432d)
  2132.     ld hl, UnknownText_0x10af3
  2133.     call Function10889
  2134.     ret
  2135.  
  2136. -Function10334: ; 10334 (4:4334)
  2137. +.Current: ; 10334 (4:4334)
  2138.     call DoItemEffect
  2139.     ret
  2140.  
  2141. -Function10338: ; 10338 (4:4338)
  2142. +.Party: ; 10338 (4:4338)
  2143.     ld a, [PartyCount]
  2144.     and a
  2145. -   jr z, .asm_1034e
  2146. +   jr z, .NoPokemon
  2147.     call DoItemEffect
  2148.     xor a
  2149.     ld [hBGMapMode], a ; $ff00+$d4
  2150.     call Function10955
  2151. -   call Function1089a
  2152. +   call WaitBGMap_DrawPackGFX
  2153.     call Function10a40
  2154.     ret
  2155. -.asm_1034e
  2156. +.NoPokemon
  2157.     ld hl, UnknownText_0x10af8
  2158.     call Function10889
  2159.     ret
  2160.  
  2161. -Function10355: ; 10355 (4:4355)
  2162. +.Field: ; 10355 (4:4355)
  2163.     call DoItemEffect
  2164.     ld a, [wd0ec]
  2165.     and a
  2166. -   jr z, Function1032d
  2167. +   jr z, .Oak
  2168.     ld a, $a
  2169.     ld [wJumptableEntryIndexBuffer], a
  2170.     ret
  2171. @@ -529,26 +537,26 @@ Function1039d: ; 1039d
  2172.  
  2173.  .asm_103aa
  2174.     xor a
  2175. -   ld [wd0db], a
  2176. +   ld [wBallsPocketPointerLocation], a
  2177.     ld [wd0e1], a
  2178.     ret
  2179.  
  2180.  .asm_103b2
  2181.     xor a
  2182. -   ld [wd0d9], a
  2183. +   ld [wItemsPocketPointerLocation], a
  2184.     ld [wd0df], a
  2185.     ret
  2186.  
  2187.  .asm_103ba
  2188.     xor a
  2189. -   ld [wd0da], a
  2190. +   ld [wKeyItemsPocketPointerLocation], a
  2191.     ld [wd0e0], a
  2192.     ret
  2193.  ; 103c2
  2194.  
  2195.  Function103c2: ; 103c2
  2196.     callba CheckSelectableItem
  2197. -   ld a, [wd142]
  2198. +   ld a, [wItemAttributeParamBuffer]
  2199.     and a
  2200.     jr nz, .asm_103f6
  2201.     ld a, [wcf65]
  2202. @@ -625,7 +633,7 @@ Function103fd: ; 103fd
  2203.     xor a
  2204.     ld [hBGMapMode], a ; $ff00+$d4
  2205.     call Function10955
  2206. -   call Function1089a
  2207. +   call WaitBGMap_DrawPackGFX
  2208.     call Function10a40
  2209.     ret
  2210.  
  2211. @@ -701,24 +709,24 @@ Function104d9: ; 104d9 (4:44d9)
  2212.  Function104e9: ; 104e9 (4:44e9)
  2213.     xor a
  2214.     ld [wcf65], a
  2215. -   call Function10a36
  2216. -   call Function109bb
  2217. -   call Function1089a
  2218. +   call ClearPocketList
  2219. +   call DrawPocketName
  2220. +   call WaitBGMap_DrawPackGFX
  2221.     call Function10866
  2222.     ret
  2223.  
  2224.  Function104fa: ; 104fa (4:44fa)
  2225.     ld hl, MenuDataHeader_0x10a4f
  2226.     call CopyMenuDataHeader
  2227. -   ld a, [wd0d9]
  2228. -   ld [wcf88], a
  2229. +   ld a, [wItemsPocketPointerLocation]
  2230. +   ld [wPocketPointerLocationBuffer], a
  2231.     ld a, [wd0df]
  2232.     ld [wd0e4], a
  2233.     call Function350c
  2234.     ld a, [wd0e4]
  2235.     ld [wd0df], a
  2236.     ld a, [wcfa9]
  2237. -   ld [wd0d9], a
  2238. +   ld [wItemsPocketPointerLocation], a
  2239.     ld b, $7
  2240.     ld c, $3
  2241.     call Function108d4
  2242. @@ -729,24 +737,24 @@ Function104fa: ; 104fa (4:44fa)
  2243.  Function10527: ; 10527 (4:4527)
  2244.     ld a, $2
  2245.     ld [wcf65], a
  2246. -   call Function10a36
  2247. -   call Function109bb
  2248. -   call Function1089a
  2249. +   call ClearPocketList
  2250. +   call DrawPocketName
  2251. +   call WaitBGMap_DrawPackGFX
  2252.     call Function10866
  2253.     ret
  2254.  
  2255.  Function10539: ; 10539 (4:4539)
  2256.     ld hl, MenuDataHeader_0x10a7f
  2257.     call CopyMenuDataHeader
  2258. -   ld a, [wd0da]
  2259. -   ld [wcf88], a
  2260. +   ld a, [wKeyItemsPocketPointerLocation]
  2261. +   ld [wPocketPointerLocationBuffer], a
  2262.     ld a, [wd0e0]
  2263.     ld [wd0e4], a
  2264.     call Function350c
  2265.     ld a, [wd0e4]
  2266.     ld [wd0e0], a
  2267.     ld a, [wcfa9]
  2268. -   ld [wd0da], a
  2269. +   ld [wKeyItemsPocketPointerLocation], a
  2270.     ld b, $3
  2271.     ld c, $7
  2272.     call Function108d4
  2273. @@ -757,11 +765,11 @@ Function10539: ; 10539 (4:4539)
  2274.  Function10566: ; 10566 (4:4566)
  2275.     ld a, $3
  2276.     ld [wcf65], a
  2277. -   call Function10a36
  2278. -   call Function109bb
  2279. +   call ClearPocketList
  2280. +   call DrawPocketName
  2281.     xor a
  2282.     ld [hBGMapMode], a ; $ff00+$d4
  2283. -   call Function1089a
  2284. +   call WaitBGMap_DrawPackGFX
  2285.     ld hl, UnknownText_0x10b0c
  2286.     call Function10889
  2287.     call Function10866
  2288. @@ -780,24 +788,24 @@ Function10581: ; 10581 (4:4581)
  2289.  Function10594: ; 10594 (4:4594)
  2290.     ld a, $1
  2291.     ld [wcf65], a
  2292. -   call Function10a36
  2293. -   call Function109bb
  2294. -   call Function1089a
  2295. +   call ClearPocketList
  2296. +   call DrawPocketName
  2297. +   call WaitBGMap_DrawPackGFX
  2298.     call Function10866
  2299.     ret
  2300.  
  2301.  Function105a6: ; 105a6 (4:45a6)
  2302.     ld hl, MenuDataHeader_0x10aaf
  2303.     call CopyMenuDataHeader
  2304. -   ld a, [wd0db]
  2305. -   ld [wcf88], a
  2306. +   ld a, [wBallsPocketPointerLocation]
  2307. +   ld [wPocketPointerLocationBuffer], a
  2308.     ld a, [wd0e1]
  2309.     ld [wd0e4], a
  2310.     call Function350c
  2311.     ld a, [wd0e4]
  2312.     ld [wd0e1], a
  2313.     ld a, [wcfa9]
  2314. -   ld [wd0db], a
  2315. +   ld [wBallsPocketPointerLocation], a
  2316.     ld b, $1
  2317.     ld c, $5
  2318.     call Function108d4
  2319. @@ -807,18 +815,18 @@ Function105a6: ; 105a6 (4:45a6)
  2320.  
  2321.  Function105d3: ; 105d3 (4:45d3)
  2322.     callba CheckItemContext
  2323. -   ld a, [wd142]
  2324. +   ld a, [wItemAttributeParamBuffer]
  2325.  
  2326.  Function105dc: ; 105dc (4:45dc)
  2327.     and a
  2328. -   jr z, .asm_105e7
  2329. -   ld hl, MenuDataHeader_0x10601
  2330. -   ld de, Jumptable_10614
  2331. -   jr .asm_105ed
  2332. -.asm_105e7
  2333. -   ld hl, MenuDataHeader_0x10618
  2334. -   ld de, Jumptable_10627
  2335. -.asm_105ed
  2336. +   jr z, .NoUse
  2337. +   ld hl, .UsableMenuDataHeader
  2338. +   ld de, .UsableJumptable
  2339. +   jr .proceed
  2340. +.NoUse
  2341. +   ld hl, .UnusableMenuDataHeader
  2342. +   ld de, .UnusableJumptable
  2343. +.proceed
  2344.     push de
  2345.     call LoadMenuDataHeader
  2346.     call InterpretMenu2
  2347. @@ -831,106 +839,108 @@ Function105dc: ; 105dc (4:45dc)
  2348.     jp [hl]
  2349.  ; 10601 (4:4601)
  2350.  
  2351. -MenuDataHeader_0x10601: ; 0x10601
  2352. +.UsableMenuDataHeader: ; 0x10601
  2353.     db $40 ; flags
  2354.     db 07, 13 ; start coords
  2355.     db 11, 19 ; end coords
  2356. -   dw MenuData2_0x10609
  2357. +   dw .UsableMenuData2
  2358.     db 1 ; default option
  2359.  ; 0x10609
  2360.  
  2361. -MenuData2_0x10609: ; 0x10609
  2362. +.UsableMenuData2: ; 0x10609
  2363.     db $c0 ; flags
  2364.     db 2 ; items
  2365.     db "USE@"
  2366.     db "QUIT@"
  2367.  ; 0x10614
  2368.  
  2369. -Jumptable_10614: ; 10614
  2370. -   dw Function10629
  2371. -   dw Function10689
  2372. +.UsableJumptable: ; 10614
  2373. +   dw .Use
  2374. +   dw .Quit
  2375.  ; 10618
  2376.  
  2377. -MenuDataHeader_0x10618: ; 0x10618
  2378. +.UnusableMenuDataHeader: ; 0x10618
  2379.     db $40 ; flags
  2380.     db 09, 13 ; start coords
  2381.     db 11, 19 ; end coords
  2382. -   dw MenuData2_0x10620
  2383. +   dw .UnusableMenuData2
  2384.     db 1 ; default option
  2385.  ; 0x10620
  2386.  
  2387. -MenuData2_0x10620: ; 0x10620
  2388. +.UnusableMenuData2: ; 0x10620
  2389.     db $c0 ; flags
  2390.     db 1 ; items
  2391.     db "QUIT@"
  2392.  ; 0x10627
  2393.  
  2394. -Jumptable_10627: ; 10627
  2395. -   dw Function10689
  2396. +.UnusableJumptable: ; 10627
  2397. +   dw .Quit
  2398.  ; 10629
  2399.  
  2400. -Function10629: ; 10629
  2401. +.Use: ; 10629
  2402.     callba CheckItemContext
  2403. -   ld a, [wd142]
  2404. -   ld hl, Jumptable_10637
  2405. +   ld a, [wItemAttributeParamBuffer]
  2406. +   ld hl, .ItemFunctionJumptable
  2407.     rst JumpTable
  2408.     ret
  2409.  
  2410. -Jumptable_10637: ; 10637 (4:4637)
  2411. -   dw Function10645
  2412. -   dw Function10645
  2413. -   dw Function10645
  2414. -   dw Function10645
  2415. -   dw Function1064c
  2416. -   dw Function10656
  2417. -   dw Function10671
  2418. +.ItemFunctionJumptable: ; 10637 (4:4637)
  2419. +   dw .Oak
  2420. +   dw .Oak
  2421. +   dw .Oak
  2422. +   dw .Oak
  2423. +   dw .Unused
  2424. +   dw .BattleField
  2425. +   dw .BattleOnly
  2426.  
  2427.  
  2428. -Function10645: ; 10645 (4:4645)
  2429. +.Oak: ; 10645 (4:4645)
  2430.     ld hl, UnknownText_0x10af3
  2431.     call Function10889
  2432.     ret
  2433.  
  2434. -Function1064c: ; 1064c (4:464c)
  2435. +.Unused: ; 1064c (4:464c)
  2436.     call DoItemEffect
  2437.     ld a, [wd0ec]
  2438.     and a
  2439. -   jr nz, asm_1066c
  2440. +   jr nz, .asm_1066c
  2441.     ret
  2442.  
  2443. -Function10656: ; 10656 (4:4656)
  2444. +.BattleField: ; 10656 (4:4656)
  2445.     call DoItemEffect
  2446.     ld a, [wd0ec]
  2447.     and a
  2448. -   jr nz, asm_1067e
  2449. +   jr nz, .asm_1067e
  2450.     xor a
  2451.     ld [hBGMapMode], a ; $ff00+$d4
  2452.     call Function10955
  2453. -   call Function1089a
  2454. +   call WaitBGMap_DrawPackGFX
  2455.     call Function10a40
  2456.     ret
  2457. -asm_1066c: ; 1066c (4:466c)
  2458. +
  2459. +.asm_1066c: ; 1066c (4:466c)
  2460.     call WhiteBGMap
  2461. -   jr asm_1067e
  2462. +   jr .asm_1067e
  2463.  
  2464. -Function10671: ; 10671 (4:4671)
  2465. +.BattleOnly: ; 10671 (4:4671)
  2466.     call DoItemEffect
  2467.     ld a, [wd0ec]
  2468.     and a
  2469. -   jr z, Function10645
  2470. +   jr z, .Oak
  2471.     cp $2
  2472. -   jr z, asm_10684
  2473. -asm_1067e: ; 1067e (4:467e)
  2474. +   jr z, .asm_10684
  2475. +.asm_1067e: ; 1067e (4:467e)
  2476.     ld a, $a
  2477.     ld [wJumptableEntryIndexBuffer], a
  2478.     ret
  2479. -asm_10684: ; 10684 (4:4684)
  2480. +
  2481. +.asm_10684: ; 10684 (4:4684)
  2482.     xor a
  2483.     ld [wd0ec], a
  2484.     ret
  2485.  ; 10689 (4:4689)
  2486.  
  2487. -Function10689: ; 10689
  2488. +.Quit: ; 10689
  2489.     ret
  2490.  ; 1068a
  2491.  
  2492. @@ -982,74 +992,74 @@ Function106c7: ; 106c7
  2493.  
  2494.  
  2495.  Jumptable_106d1: ; 106d1 (4:46d1)
  2496. -   dw Function106d9
  2497. -   dw Function1073b
  2498. -   dw Function106ff
  2499. -   dw Function10726
  2500. +   dw .ItemsPocket
  2501. +   dw .BallsPocket
  2502. +   dw .KeyItemsPocket
  2503. +   dw .TMHMPocket
  2504.  
  2505.  
  2506. -Function106d9: ; 106d9 (4:46d9)
  2507. +.ItemsPocket: ; 106d9 (4:46d9)
  2508.     xor a
  2509. -   call Function10762
  2510. +   call InitPocket
  2511.     ld hl, MenuDataHeader_0x10a67
  2512.     call CopyMenuDataHeader
  2513. -   ld a, [wd0d9]
  2514. -   ld [wcf88], a
  2515. +   ld a, [wItemsPocketPointerLocation]
  2516. +   ld [wPocketPointerLocationBuffer], a
  2517.     ld a, [wd0df]
  2518.     ld [wd0e4], a
  2519.     call Function350c
  2520.     ld a, [wd0e4]
  2521.     ld [wd0df], a
  2522.     ld a, [wcfa9]
  2523. -   ld [wd0d9], a
  2524. +   ld [wItemsPocketPointerLocation], a
  2525.     ret
  2526.  
  2527. -Function106ff: ; 106ff (4:46ff)
  2528. +.KeyItemsPocket: ; 106ff (4:46ff)
  2529.     ld a, $2
  2530. -   call Function10762
  2531. +   call InitPocket
  2532.     ld hl, MenuDataHeader_0x10a97
  2533.     call CopyMenuDataHeader
  2534. -   ld a, [wd0da]
  2535. -   ld [wcf88], a
  2536. +   ld a, [wKeyItemsPocketPointerLocation]
  2537. +   ld [wPocketPointerLocationBuffer], a
  2538.     ld a, [wd0e0]
  2539.     ld [wd0e4], a
  2540.     call Function350c
  2541.     ld a, [wd0e4]
  2542.     ld [wd0e0], a
  2543.     ld a, [wcfa9]
  2544. -   ld [wd0da], a
  2545. +   ld [wKeyItemsPocketPointerLocation], a
  2546.     ret
  2547.  
  2548. -Function10726: ; 10726 (4:4726)
  2549. +.TMHMPocket: ; 10726 (4:4726)
  2550.     ld a, $3
  2551. -   call Function10762
  2552. -   call Function1089a
  2553. +   call InitPocket
  2554. +   call WaitBGMap_DrawPackGFX
  2555.     callba Function2c76f
  2556.     ld a, [CurItem]
  2557.     ld [CurItem], a
  2558.     ret
  2559.  
  2560. -Function1073b: ; 1073b (4:473b)
  2561. +.BallsPocket: ; 1073b (4:473b)
  2562.     ld a, $1
  2563. -   call Function10762
  2564. +   call InitPocket
  2565.     ld hl, MenuDataHeader_0x10ac7
  2566.     call CopyMenuDataHeader
  2567. -   ld a, [wd0db]
  2568. -   ld [wcf88], a
  2569. +   ld a, [wBallsPocketPointerLocation]
  2570. +   ld [wPocketPointerLocationBuffer], a
  2571.     ld a, [wd0e1]
  2572.     ld [wd0e4], a
  2573.     call Function350c
  2574.     ld a, [wd0e4]
  2575.     ld [wd0e1], a
  2576.     ld a, [wcfa9]
  2577. -   ld [wd0db], a
  2578. +   ld [wBallsPocketPointerLocation], a
  2579.     ret
  2580.  
  2581. -Function10762: ; 10762 (4:4762)
  2582. +InitPocket: ; 10762 (4:4762)
  2583.     ld [wcf65], a
  2584. -   call Function10a36
  2585. -   call Function109bb
  2586. -   call Function1089a
  2587. +   call ClearPocketList
  2588. +   call DrawPocketName
  2589. +   call WaitBGMap_DrawPackGFX
  2590.     ret
  2591.  
  2592.  
  2593. @@ -1188,8 +1198,8 @@ MenuData2_0x10816: ; 0x10816
  2594.  
  2595.  Function10826: ; 10826 (4:4826)
  2596.     ld a, $3
  2597. -   call Function10762
  2598. -   call Function1089a
  2599. +   call InitPocket
  2600. +   call WaitBGMap_DrawPackGFX
  2601.     callba Function2c76f
  2602.     ld a, [CurItem]
  2603.     ld [CurItem], a
  2604. @@ -1221,7 +1231,7 @@ MenuData2_0x1084a: ; 0x1084a
  2605.  
  2606.  Function1085a: ; 1085a (4:485a)
  2607.     push hl
  2608. -   call Function10762
  2609. +   call InitPocket
  2610.     pop hl
  2611.     call CopyMenuDataHeader
  2612.     call Function350c
  2613. @@ -1268,23 +1278,23 @@ Function10889: ; 10889 (4:4889)
  2614.     ld [Options], a
  2615.     ret
  2616.  
  2617. -Function1089a: ; 1089a (4:489a)
  2618. +WaitBGMap_DrawPackGFX: ; 1089a (4:489a)
  2619.     call WaitBGMap
  2620.  
  2621.  
  2622. -Function1089d: ; 1089d
  2623. +DrawPackGFX: ; 1089d
  2624.     ld a, [wcf65]
  2625.     and $3
  2626.     ld e, a
  2627.     ld d, $0
  2628.     ld a, [BattleType]
  2629.     cp BATTLETYPE_TUTORIAL
  2630. -   jr z, .asm_108b3
  2631. +   jr z, .male_dude
  2632.     ld a, [PlayerGender]
  2633.     bit 0, a
  2634. -   jr nz, .asm_108c5
  2635. +   jr nz, .female
  2636.  
  2637. -.asm_108b3
  2638. +.male_dude
  2639.     ld hl, PackGFXPointers
  2640.  rept 2
  2641.     add hl, de
  2642. @@ -1297,8 +1307,8 @@ endr
  2643.     call Request2bpp
  2644.     ret
  2645.  
  2646. -.asm_108c5
  2647. -   callba Function48e81
  2648. +.female
  2649. +   callba DrawKrisPackGFX
  2650.     ret
  2651.  ; 108cc
  2652.  
  2653. @@ -1412,13 +1422,13 @@ Function10955: ; 10955
  2654.     inc a
  2655.     dec c
  2656.     jr nz, .asm_1098a
  2657. -   call Function109bb
  2658. +   call DrawPocketName
  2659.     call Function109a5
  2660.     hlcoord 0, 12
  2661.     lb bc, 4, 18
  2662.     call TextBox
  2663.     call EnableLCD
  2664. -   call Function1089d
  2665. +   call DrawPackGFX
  2666.     ret
  2667.  ; 109a5
  2668.  
  2669. @@ -1440,7 +1450,7 @@ Function109a5: ; 109a5
  2670.     ret
  2671.  ; 109bb
  2672.  
  2673. -Function109bb: ; 109bb
  2674. +DrawPocketName: ; 109bb
  2675.     ld a, [wcf65]
  2676.  
  2677.     ; * 15
  2678. @@ -1450,30 +1460,30 @@ Function109bb: ; 109bb
  2679.  
  2680.     ld d, 0
  2681.     ld e, a
  2682. -   ld hl, Tilemap_109e1
  2683. +   ld hl, .tilemap
  2684.     add hl, de
  2685.     ld d, h
  2686.     ld e, l
  2687.     hlcoord 0, 7
  2688.     ld c, 3
  2689. -.asm_109d0
  2690. +.row
  2691.     ld b, 5
  2692. -.asm_109d2
  2693. +.col
  2694.     ld a, [de]
  2695.     inc de
  2696.     ld [hli], a
  2697.     dec b
  2698. -   jr nz, .asm_109d2
  2699. +   jr nz, .col
  2700.     ld a, c
  2701. -   ld c, 15
  2702. +   ld c, SCREEN_WIDTH - 5
  2703.     add hl, bc
  2704.     ld c, a
  2705.     dec c
  2706. -   jr nz, .asm_109d0
  2707. +   jr nz, .row
  2708.     ret
  2709.  ; 109e1
  2710.  
  2711. -Tilemap_109e1: ; 109e1
  2712. +.tilemap: ; 109e1
  2713.     db $00, $04, $04, $04, $01,  $06, $07, $08, $09, $0a,  $02, $05, $05, $05, $03
  2714.     db $00, $04, $04, $04, $01,  $15, $16, $17, $18, $19,  $02, $05, $05, $05, $03
  2715.     db $00, $04, $04, $04, $01,  $0b, $0c, $0d, $0e, $0f,  $02, $05, $05, $05, $03
  2716. @@ -1491,21 +1501,21 @@ Function10a1d: ; 10a1d
  2717.  Function10a2a: ; 10a2a
  2718.     hlcoord 0, 0
  2719.     ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
  2720. -   ld a, $7f
  2721. +   ld a, " "
  2722.     call ByteFill
  2723.     ret
  2724.  ; 10a36
  2725.  
  2726. -Function10a36: ; 10a36 (4:4a36)
  2727. +ClearPocketList: ; 10a36 (4:4a36)
  2728.     hlcoord 5, 2
  2729. -   ld bc, $a0f
  2730. +   lb bc, 10, SCREEN_WIDTH - 5
  2731.     call ClearBox
  2732.     ret
  2733.  
  2734.  
  2735.  Function10a40: ; 10a40
  2736.     call WaitBGMap
  2737. -   ld b, $14
  2738. +   ld b, SCREEN_WIDTH
  2739.     call GetSGBLayout
  2740.     call Function32f9
  2741.     call DelayFrame
  2742. diff --git a/engine/phone.asm b/engine/phone.asm
  2743. index 0307464..5abe54c 100644
  2744. --- a/engine/phone.asm
  2745. +++ b/engine/phone.asm
  2746. @@ -1,13 +1,13 @@
  2747.  AddPhoneNumber:: ; 90000
  2748.     call _CheckCellNum
  2749. -   jr c, .asm_9000d
  2750. -   call Function9002d
  2751. -   jr nc, .asm_9000d
  2752. +   jr c, .cant_add
  2753. +   call Phone_FindOpenSlot
  2754. +   jr nc, .cant_add
  2755.     ld [hl], c
  2756.     xor a
  2757.     ret
  2758.  
  2759. -.asm_9000d
  2760. +.cant_add
  2761.     scf
  2762.     ret
  2763.  ; 9000f
  2764. @@ -15,95 +15,95 @@ AddPhoneNumber:: ; 90000
  2765.  
  2766.  DelCellNum:: ; 9000f
  2767.     call _CheckCellNum
  2768. -   jr nc, .asm_90017
  2769. +   jr nc, .not_in_list
  2770.     xor a
  2771.     ld [hl], a
  2772.     ret
  2773.  
  2774. -.asm_90017
  2775. +.not_in_list
  2776.     scf
  2777.     ret
  2778.  ; 90019
  2779.  
  2780.  CheckCellNum:: ; 90019
  2781. -   jp _CheckCellNum
  2782. +   jp _CheckCellNum ; wtf
  2783.  ; 9001c
  2784.  
  2785.  _CheckCellNum: ; 9001c
  2786. -   ld hl, wdc7c
  2787. -   ld b, $a
  2788. -.asm_90021
  2789. +   ld hl, wPhoneList
  2790. +   ld b, CONTACT_LIST_SIZE
  2791. +.loop
  2792.     ld a, [hli]
  2793.     cp c
  2794. -   jr z, .asm_9002a
  2795. +   jr z, .got_it
  2796.     dec b
  2797. -   jr nz, .asm_90021
  2798. +   jr nz, .loop
  2799.     xor a
  2800.     ret
  2801.  
  2802. -.asm_9002a
  2803. +.got_it
  2804.     dec hl
  2805.     scf
  2806.     ret
  2807.  ; 9002d
  2808.  
  2809. -Function9002d: ; 9002d
  2810. -   call Function90040
  2811. +Phone_FindOpenSlot: ; 9002d
  2812. +   call GetRemainingSpaceInPhoneList
  2813.     ld b, a
  2814. -   ld hl, wdc7c
  2815. -.asm_90034
  2816. +   ld hl, wPhoneList
  2817. +.loop
  2818.     ld a, [hli]
  2819.     and a
  2820. -   jr z, .asm_9003d
  2821. +   jr z, .FoundOpenSpace
  2822.     dec b
  2823. -   jr nz, .asm_90034
  2824. +   jr nz, .loop
  2825.     xor a
  2826.     ret
  2827.  
  2828. -.asm_9003d
  2829. +.FoundOpenSpace
  2830.     dec hl
  2831.     scf
  2832.     ret
  2833.  ; 90040
  2834.  
  2835. -Function90040: ; 90040
  2836. +GetRemainingSpaceInPhoneList: ; 90040
  2837.     xor a
  2838.     ld [Buffer1], a
  2839. -   ld hl, Unknown_90066
  2840. -.asm_90047
  2841. +   ld hl, PermanentNumbers
  2842. +.loop
  2843.     ld a, [hli]
  2844. -   cp $ff
  2845. -   jr z, .asm_9005f
  2846. +   cp -1
  2847. +   jr z, .done
  2848.     cp c
  2849. -   jr z, .asm_9005d
  2850. +   jr z, .elm_or_mom
  2851.     push bc
  2852.     push hl
  2853.     ld c, a
  2854.     call _CheckCellNum
  2855. -   jr c, .asm_9005b
  2856. +   jr c, .elm_or_mom_in_list
  2857.     ld hl, Buffer1
  2858.     inc [hl]
  2859.  
  2860. -.asm_9005b
  2861. +.elm_or_mom_in_list
  2862.     pop hl
  2863.     pop bc
  2864.  
  2865. -.asm_9005d
  2866. -   jr .asm_90047
  2867. +.elm_or_mom
  2868. +   jr .loop
  2869.  
  2870. -.asm_9005f
  2871. -   ld a, $a
  2872. +.done
  2873. +   ld a, CONTACT_LIST_SIZE
  2874.     ld hl, Buffer1
  2875.     sub [hl]
  2876.     ret
  2877.  ; 90066
  2878.  
  2879. -Unknown_90066: ; 90066
  2880. -   db 1, 4, $ff
  2881. +PermanentNumbers: ; 90066
  2882. +   db MOM_PHONE, ELM_PHONE, -1
  2883.  ; 90069
  2884.  
  2885.  
  2886. -Function90069: ; 90069
  2887. +FarPlaceString: ; 90069
  2888.     ld a, [hROMBank]
  2889.     push af
  2890.     ld a, b
  2891. @@ -123,13 +123,13 @@ CheckPhoneCall:: ; 90074 (24:4074)
  2892.     call CheckStandingOnEntrance
  2893.     jr z, .no_call
  2894.  
  2895. -   call Function900a6
  2896. +   call .timecheck
  2897.     nop
  2898.     jr nc, .no_call
  2899.  
  2900.     call Random
  2901.     ld b, a
  2902. -   and $7f
  2903. +   and 50 percent
  2904.     cp b
  2905.     jr nz, .no_call
  2906.  
  2907. @@ -137,14 +137,14 @@ CheckPhoneCall:: ; 90074 (24:4074)
  2908.     and a
  2909.     jr nz, .no_call
  2910.  
  2911. -   call Function900de
  2912. -   call Function900bf
  2913. +   call GetAvailableCallers
  2914. +   call ChooseRandomCaller
  2915.     jr nc, .no_call
  2916.  
  2917.     ld e, a
  2918.     call LoadCallerScript
  2919. -   ld a, BANK(Script_SpecialPhoneCall)
  2920. -   ld hl, Script_SpecialPhoneCall
  2921. +   ld a, BANK(Script_ReceivePhoneCall)
  2922. +   ld hl, Script_ReceivePhoneCall
  2923.     call CallScript
  2924.     scf
  2925.     ret
  2926. @@ -153,8 +153,8 @@ CheckPhoneCall:: ; 90074 (24:4074)
  2927.     xor a
  2928.     ret
  2929.  
  2930. -Function900a6: ; 900a6 (24:40a6)
  2931. -   callba Function11401
  2932. +.timecheck: ; 900a6 (24:40a6)
  2933. +   callba CheckReceiveCallTimer
  2934.     ret
  2935.  
  2936.  CheckPhoneContactTimeOfDay: ; 900ad (24:40ad)
  2937. @@ -173,40 +173,46 @@ CheckPhoneContactTimeOfDay: ; 900ad (24:40ad)
  2938.     pop hl
  2939.     ret
  2940.  
  2941. -Function900bf: ; 900bf (24:40bf)
  2942. -   ld a, [wd040]
  2943. +ChooseRandomCaller: ; 900bf (24:40bf)
  2944. +; If no one is available to call, don't return anything.
  2945. +   ld a, [EngineBuffer3]
  2946.     and a
  2947. -   jr z, .asm_900dc
  2948. +   jr z, .NothingToSample
  2949. +
  2950. +; Sample a random number between 0 and 31.
  2951.     ld c, a
  2952.     call Random
  2953.     ld a, [hRandomAdd] ; $ff00+$e1
  2954.     swap a
  2955.     and $1f
  2956. +; Compute that number modulo the number of available callers.
  2957.     call SimpleDivide
  2958. +; Return the caller ID you just sampled.
  2959.     ld c, a
  2960. -   ld b, $0
  2961. -   ld hl, wd041
  2962. +   ld b, 0
  2963. +   ld hl, EngineBuffer4
  2964.     add hl, bc
  2965.     ld a, [hl]
  2966.     scf
  2967.     ret
  2968. -.asm_900dc
  2969. +
  2970. +.NothingToSample
  2971.     xor a
  2972.     ret
  2973.  
  2974. -Function900de: ; 900de (24:40de)
  2975. +GetAvailableCallers: ; 900de (24:40de)
  2976.     callba CheckTime
  2977.     ld a, c
  2978.     ld [EngineBuffer1], a ; wd03e (aliases: MenuItemsList, CurFruitTree, CurInput)
  2979. -   ld hl, wd040
  2980. -   ld bc, $b
  2981. +   ld hl, EngineBuffer3
  2982. +   ld bc, 11
  2983.     xor a
  2984.     call ByteFill
  2985. -   ld de, wdc7c
  2986. -   ld a, 10
  2987. +   ld de, wPhoneList
  2988. +   ld a, CONTACT_LIST_SIZE
  2989.  
  2990.  .loop
  2991. -   ld [wd03f], a
  2992. +   ld [EngineBuffer2], a
  2993.     ld a, [de]
  2994.     and a
  2995.     jr z, .not_good_for_call
  2996. @@ -226,23 +232,23 @@ Function900de: ; 900de (24:40de)
  2997.     cp [hl]
  2998.     jr z, .not_good_for_call
  2999.  .different_map
  3000. -   ld a, [wd040]
  3001. +   ld a, [EngineBuffer3]
  3002.     ld c, a
  3003.     ld b, $0
  3004.     inc a
  3005. -   ld [wd040], a
  3006. -   ld hl, wd041
  3007. +   ld [EngineBuffer3], a
  3008. +   ld hl, EngineBuffer4
  3009.     add hl, bc
  3010.     ld a, [de]
  3011.     ld [hl], a
  3012.  .not_good_for_call
  3013.     inc de
  3014. -   ld a, [wd03f]
  3015. +   ld a, [EngineBuffer2]
  3016.     dec a
  3017.     jr nz, .loop
  3018.     ret
  3019.  
  3020. -Function90136:: ; 90136 (24:4136)
  3021. +CheckSpecialPhoneCall:: ; 90136 (24:4136)
  3022.     ld a, [wSpecialPhoneCallID]
  3023.     and a
  3024.     jr z, .NoPhoneCall
  3025. @@ -289,7 +295,7 @@ endr
  3026.  
  3027.  .script: ; 0x90173
  3028.     pause 30
  3029. -   jump Script_SpecialPhoneCall
  3030. +   jump Script_ReceivePhoneCall
  3031.  ; 0x90178
  3032.  
  3033.  .DoSpecialPhoneCall: ; 90178 (24:4178)
  3034. @@ -415,7 +421,7 @@ LoadCallerScript: ; 9020d (24:420d)
  3035.     call AddNTimes
  3036.     ld a, BANK(PhoneContacts)
  3037.  .proceed
  3038. -   ld de, wd03f
  3039. +   ld de, EngineBuffer2
  3040.     ld bc, 12
  3041.     call FarCopyBytes
  3042.     ret
  3043. @@ -433,20 +439,20 @@ WrongNumber: ; 90233
  3044.     db "@"
  3045.  ; 90241
  3046.  
  3047. -Script_SpecialPhoneCall: ; 0x90241
  3048. +Script_ReceivePhoneCall: ; 0x90241
  3049.     refreshscreen $0
  3050. -   callasm Function9026f
  3051. +   callasm RingTwice_StartCall
  3052.     ptcall wd048
  3053.     closetext
  3054.     callasm HangUp
  3055.     loadmovesprites
  3056. -   callasm Function113e5
  3057. +   callasm InitCallReceiveDelay
  3058.     end
  3059.  ; 0x90255
  3060.  
  3061.  Script_SpecialBillCall:: ; 0x90255
  3062.     callasm Function9025c
  3063. -   jump Script_SpecialPhoneCall
  3064. +   jump Script_ReceivePhoneCall
  3065.  ; 0x9025c
  3066.  
  3067.  Function9025c: ; 9025c
  3068. @@ -457,7 +463,7 @@ Function9025c: ; 9025c
  3069.  UnknownScript_0x90261: ; 0x90261
  3070.     callasm Function9026a
  3071.     pause 30
  3072. -   jump Script_SpecialPhoneCall
  3073. +   jump Script_ReceivePhoneCall
  3074.  ; 0x9026a
  3075.  
  3076.  Function9026a: ; 9026a
  3077. @@ -465,14 +471,14 @@ Function9026a: ; 9026a
  3078.     jp LoadCallerScript
  3079.  ; 9026f
  3080.  
  3081. -Function9026f: ; 9026f
  3082. -   call Function9027c
  3083. -   call Function9027c
  3084. -   callba Function1060d3
  3085. +RingTwice_StartCall: ; 9026f
  3086. +   call .Ring
  3087. +   call .Ring
  3088. +   callba MobileFn_1060d3
  3089.     ret
  3090.  ; 9027c
  3091.  
  3092. -Function9027c: ; 9027c (24:427c)
  3093. +.Ring: ; 9027c (24:427c)
  3094.     call Phone_StartRinging
  3095.     call Phone_Wait20Frames
  3096.     call Phone_CallerTextboxWithName
  3097. @@ -498,7 +504,7 @@ PhoneCall:: ; 9029a
  3098.     ld [PhoneCallerHi], a
  3099.     call Phone_FirstOfTwoRings
  3100.     call Phone_FirstOfTwoRings
  3101. -   callba Function1060d3
  3102. +   callba MobileFn_1060d3
  3103.     ret
  3104.  ; 902b3
  3105.  
  3106. @@ -526,7 +532,7 @@ endr
  3107.     ld e, a
  3108.     ld a, [PhoneCallerHi]
  3109.     ld d, a
  3110. -   call Function90069
  3111. +   call FarPlaceString
  3112.     ret
  3113.  ; 902e3
  3114.  
  3115. diff --git a/engine/phone_scripts.asm b/engine/phone_scripts.asm
  3116. index 6eccfda..5d8afd0 100644
  3117. --- a/engine/phone_scripts.asm
  3118. +++ b/engine/phone_scripts.asm
  3119. @@ -141,7 +141,7 @@ MomPhoneNoGymQuestScript: ; 0xbcfac
  3120.  MomPhoneLectureScript: ; 0xbcfb1
  3121.     setevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
  3122.     setflag ENGINE_DST
  3123. -   specialphonecall ELMCALL_NONE
  3124. +   specialphonecall SPECIALCALL_NONE
  3125.     farwritetext MomPhoneLectureText
  3126.     yesorno
  3127.     iftrue MomPhoneSaveMoneyScript
  3128. @@ -194,7 +194,7 @@ BillPhoneScript2: ; 0xbd007
  3129.  ; Elm
  3130.  
  3131.  ElmPhoneScript1: ; 0xbd00d
  3132. -   checkcode VAR_POKERUS
  3133. +   checkcode VAR_SPECIALPHONECALL
  3134.     if_equal $1, .pokerus
  3135.     checkevent EVENT_SHOWED_TOGEPI_TO_ELM
  3136.     iftrue .discovery
  3137. @@ -253,46 +253,46 @@ ElmPhoneScript1: ; 0xbd00d
  3138.  
  3139.  .pokerus ; 0xbd079
  3140.     farwritetext ElmPhonePokerusText
  3141. -   specialphonecall ELMCALL_NONE
  3142. +   specialphonecall SPECIALCALL_NONE
  3143.     end
  3144.  
  3145.  ElmPhoneScript2: ; 0xbd081
  3146. -   checkcode VAR_POKERUS
  3147. +   checkcode VAR_SPECIALPHONECALL
  3148.     if_equal $2, .disaster
  3149.     if_equal $3, .assistant
  3150.     if_equal $4, .rocket
  3151.     if_equal $5, .gift
  3152.     if_equal $8, .gift
  3153.     farwritetext ElmPhonePokerusText
  3154. -   specialphonecall ELMCALL_NONE
  3155. +   specialphonecall SPECIALCALL_NONE
  3156.     end
  3157.  
  3158.  .disaster ; 0xbd09f
  3159.     farwritetext ElmPhoneDisasterText
  3160. -   specialphonecall ELMCALL_NONE
  3161. +   specialphonecall SPECIALCALL_NONE
  3162.     setevent EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
  3163.     end
  3164.  
  3165.  .assistant ; 0xbd0aa
  3166.     farwritetext ElmPhoneEggAssistantText
  3167. -   specialphonecall ELMCALL_NONE
  3168. +   specialphonecall SPECIALCALL_NONE
  3169.     clearevent EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
  3170.     setevent EVENT_ELMS_AIDE_IN_LAB
  3171.     end
  3172.  
  3173.  .rocket ; 0xbd0b8
  3174.     farwritetext ElmPhoneRocketText
  3175. -   specialphonecall ELMCALL_NONE
  3176. +   specialphonecall SPECIALCALL_NONE
  3177.     end
  3178.  
  3179.  .gift ; 0xbd0c0
  3180.     farwritetext ElmPhoneGiftText
  3181. -   specialphonecall ELMCALL_NONE
  3182. +   specialphonecall SPECIALCALL_NONE
  3183.     end
  3184.  
  3185.  .unused ; 0xbd0c8
  3186.     farwritetext ElmPhoneUnusedText
  3187. -   specialphonecall ELMCALL_NONE
  3188. +   specialphonecall SPECIALCALL_NONE
  3189.     end
  3190.  ; bd0d0
  3191.  
  3192. diff --git a/engine/radio.asm b/engine/radio.asm
  3193. index 4ebd0e1..d833b66 100644
  3194. --- a/engine/radio.asm
  3195. +++ b/engine/radio.asm
  3196. @@ -1707,7 +1707,7 @@ BuenasPassword3: ; b8f47 (2e:4f47)
  3197.  BuenasPassword4: ; b8f55 (2e:4f55)
  3198.     call BuenasPasswordCheckMidnight
  3199.     jp c, BuenasPassword8
  3200. -   ld a, [wdc4a]
  3201. +   ld a, [wBuenasPassword]
  3202.  ; If we already generated the password today, we don't need to generate a new one.
  3203.     ld hl, WeeklyFlags
  3204.     bit 7, [hl]
  3205. @@ -1727,9 +1727,9 @@ BuenasPassword4: ; b8f55 (2e:4f55)
  3206.     and $3
  3207.     cp $3
  3208.     jr nc, .greater_than_three
  3209. -; The high nybble of wdc4a will now contain the password group index, and the low nybble contains the actual password.
  3210. +; The high nybble of wBuenasPassword will now contain the password group index, and the low nybble contains the actual password.
  3211.     add e
  3212. -   ld [wdc4a], a
  3213. +   ld [wBuenasPassword], a
  3214.  ; Set the flag so that we don't generate a new password this week.
  3215.     ld hl, WeeklyFlags
  3216.     set 7, [hl]
  3217. diff --git a/engine/scripting.asm b/engine/scripting.asm
  3218. index 351dcc7..82414a4 100644
  3219. --- a/engine/scripting.asm
  3220. +++ b/engine/scripting.asm
  3221. @@ -529,7 +529,7 @@ Script_interpretmenu: ; 0x96f41
  3222.     ld a, [ScriptBank]
  3223.     ld hl, InterpretMenu
  3224.     rst FarCall
  3225. -   ld a, [wcf88]
  3226. +   ld a, [wPocketPointerLocationBuffer]
  3227.     jr nc, .ok
  3228.     xor a
  3229.  .ok
  3230. @@ -651,7 +651,7 @@ Script_specialsound: ; 0x96fe4
  3231.  ; script command 0x88
  3232.  
  3233.     callba CheckItemPocket
  3234. -   ld a, [wd142]
  3235. +   ld a, [wItemAttributeParamBuffer]
  3236.     cp TM_HM
  3237.     ld de, SFX_GET_TM
  3238.     jr z, .play
  3239. @@ -665,7 +665,7 @@ Script_specialsound: ; 0x96fe4
  3240.  
  3241.  GetPocketName: ; 96ffe
  3242.     callba CheckItemPocket
  3243. -   ld a, [wd142]
  3244. +   ld a, [wItemAttributeParamBuffer]
  3245.     dec a
  3246.     ld hl, .Pockets
  3247.     and 3
  3248. @@ -1338,12 +1338,12 @@ Script_moveperson: ; 0x97341
  3249.     call GetScriptPerson
  3250.     ld b, a
  3251.     call GetScriptByte
  3252. -   add $4
  3253. +   add 4
  3254.     ld d, a
  3255.     call GetScriptByte
  3256. -   add $4
  3257. +   add 4
  3258.     ld e, a
  3259. -   callba Function807e
  3260. +   callba CopyDECoordsToMapObject
  3261.     ret
  3262.  ; 0x9735b
  3263.  
  3264. @@ -1385,10 +1385,10 @@ Script_loademote: ; 0x97384
  3265.  ;     bubble (SingleByteParam)
  3266.  
  3267.     call GetScriptByte
  3268. -   cp $ff
  3269. -   jr nz, .asm_9738e ; 0x97389 $3
  3270. +   cp -1
  3271. +   jr nz, .not_var_emote ; 0x97389 $3
  3272.     ld a, [ScriptVar]
  3273. -.asm_9738e
  3274. +.not_var_emote
  3275.     ld c, a
  3276.     callba Function1442f
  3277.     ret
  3278. @@ -1417,7 +1417,7 @@ Script_showemote: ; 0x97396
  3279.  ; 0x973b6
  3280.  
  3281.  ShowEmoteScript: ; 973b6
  3282. -   loademote $ff
  3283. +   loademote -1
  3284.     applymovement2 .Show
  3285.     pause 0
  3286.     applymovement2 .Hide
  3287. @@ -1448,12 +1448,12 @@ Script_earthquake: ; 0x973c7
  3288.     ld [wd003], a
  3289.     and $3f
  3290.     ld [wd005], a
  3291. -   ld b, BANK(UnknownScript_0x973e6)
  3292. -   ld de, UnknownScript_0x973e6
  3293. +   ld b, BANK(.script)
  3294. +   ld de, .script
  3295.     jp ScriptCall
  3296.  ; 0x973e6
  3297.  
  3298. -UnknownScript_0x973e6: ; 973e6
  3299. +.script: ; 973e6
  3300.     applymovement PLAYER, wd002
  3301.     end
  3302.  ; 973eb
  3303. @@ -1487,7 +1487,7 @@ Script_battlecheck: ; 0x973fb
  3304.  Script_loadtrainerdata: ; 0x97400
  3305.  ; script command 0x5c
  3306.  
  3307. -   ld a, $81
  3308. +   ld a, (1 << 7) | 1
  3309.     ld [wd459], a
  3310.     ld a, [WalkingDirection]
  3311.     ld [OtherTrainerClass], a
  3312. @@ -1502,7 +1502,7 @@ Script_loadpokedata: ; 0x97412
  3313.  ;     pokemon (PokemonParam)
  3314.  ;     level (DecimalParam)
  3315.  
  3316. -   ld a, $80
  3317. +   ld a, (1 << 7)
  3318.     ld [wd459], a
  3319.     call GetScriptByte
  3320.     ld [TempWildMonSpecies], a
  3321. @@ -1517,7 +1517,7 @@ Script_loadtrainer: ; 0x97424
  3322.  ;     trainer_group (TrainerGroupParam)
  3323.  ;     trainer_id (TrainerIdParam)
  3324.  
  3325. -   ld a, $81
  3326. +   ld a, (1 << 7) | 1
  3327.     ld [wd459], a
  3328.     call GetScriptByte
  3329.     ld [OtherTrainerClass], a
  3330. @@ -1531,7 +1531,7 @@ Script_startbattle: ; 0x97436
  3331.  
  3332.     call BufferScreen
  3333.     predef StartBattle
  3334. -   ld a, [wd0ee]
  3335. +   ld a, [wBattleResult]
  3336.     and $3f
  3337.     ld [ScriptVar], a
  3338.     ret
  3339. @@ -1555,7 +1555,7 @@ Script_returnafterbattle: ; 0x97459
  3340.     ld hl, wd459
  3341.     ld d, [hl]
  3342.     ld [hl], $0
  3343. -   ld a, [wd0ee]
  3344. +   ld a, [wBattleResult]
  3345.     and $3f
  3346.     cp $1
  3347.     jr nz, .notblackedout ; 0x97466 $8
  3348. @@ -1565,17 +1565,17 @@ Script_returnafterbattle: ; 0x97459
  3349.  
  3350.  .notblackedout
  3351.     bit 0, d
  3352. -   jr z, .asm_9747c ; 0x97472 $8
  3353. +   jr z, .was_wild ; 0x97472 $8
  3354.     callba MomTriesToBuySomething
  3355.     jr .done ; 0x9747a $12
  3356.  
  3357. -.asm_9747c
  3358. -   ld a, [wd0ee]
  3359. +.was_wild
  3360. +   ld a, [wBattleResult]
  3361.     bit 7, a
  3362.     jr z, .done ; 0x97481 $b
  3363.     ld b, BANK(Script_SpecialBillCall)
  3364.     ld de, Script_SpecialBillCall
  3365. -   callba Function97c4f
  3366. +   callba LoadScriptBDE
  3367.  .done
  3368.     jp Script_reloadmap
  3369.  ; 0x97491
  3370. @@ -1585,7 +1585,7 @@ Script_reloadmap: ; 0x97491
  3371.  
  3372.     xor a
  3373.     ld [wd459], a
  3374. -   ld a, $f3
  3375. +   ld a, ($f << 4) + MAPSETUP_03
  3376.     ld [hMapEntryMethod], a
  3377.     ld a, $1
  3378.     call LoadMapStatus
  3379. @@ -2813,10 +2813,10 @@ Script_warpfacing: ; 0x97a0e
  3380.     call GetScriptByte
  3381.     and $3
  3382.     ld c, a
  3383. -   ld a, [wd45b]
  3384. +   ld a, [wPlayerSpriteSetupFlags]
  3385.     set 5, a
  3386.     or c
  3387. -   ld [wd45b], a
  3388. +   ld [wPlayerSpriteSetupFlags], a
  3389.  ; fall through
  3390.  
  3391.  Script_warp: ; 0x97a1d
  3392. @@ -2840,7 +2840,7 @@ Script_warp: ; 0x97a1d
  3393.     ld [YCoord], a
  3394.     ld a, -1
  3395.     ld [wd001], a
  3396. -   ld a, -15
  3397. +   ld a, ($f << 4) + MAPSETUP_01
  3398.     ld [hMapEntryMethod], a
  3399.     ld a, 1
  3400.     call LoadMapStatus
  3401. @@ -2852,7 +2852,7 @@ Script_warp: ; 0x97a1d
  3402.     call GetScriptByte
  3403.     ld a, -1
  3404.     ld [wd001], a
  3405. -   ld a, -5
  3406. +   ld a, ($f << 4) + MAPSETUP_11
  3407.     ld [hMapEntryMethod], a
  3408.     ld a, 1
  3409.     call LoadMapStatus
  3410. @@ -2968,7 +2968,7 @@ Script_reloadmappart:: ; 0x97ae3
  3411.  ; script command 0x7c
  3412.  
  3413.     xor a
  3414. -   ld [$ffd4], a
  3415. +   ld [hBGMapMode], a
  3416.     call Function2173
  3417.     call Function2914
  3418.     callba Function104061
  3419. @@ -3046,7 +3046,7 @@ Script_loadmovesprites: ; 0x97b2f
  3420.  ; script command 0x49
  3421.  
  3422.     call Function2e20
  3423. -   call Function2dcf
  3424. +   call LoadMoveSprites
  3425.     ret
  3426.  ; 0x97b36
  3427.  
  3428. diff --git a/engine/specials.asm b/engine/specials.asm
  3429. index 827ed11..e9fe298 100644
  3430. --- a/engine/specials.asm
  3431. +++ b/engine/specials.asm
  3432. @@ -88,7 +88,7 @@ SpecialsPointers:: ; c029
  3433.     add_special Special_FindAtLeastThatHappy
  3434.     add_special Special_FindThatSpecies
  3435.     add_special Special_FindThatSpeciesYourTrainerID
  3436. -   add_special Functionc3ef ; unreferenced
  3437. +   add_special Special_CheckUnusedTwoDayTimer ; unreferenced
  3438.     add_special Special_DayCareMon1
  3439.     add_special Special_DayCareMon2
  3440.     add_special Special_SelectRandomBugContestContestants
  3441. @@ -169,7 +169,7 @@ SpecialsPointers:: ; c029
  3442.     add_special SpecialBuenasPassword
  3443.     add_special SpecialBuenaPrize
  3444.     add_special SpecialDratini
  3445. -   add_special Function11485
  3446. +   add_special Special_SampleKenjiBreakCountdown
  3447.     add_special SpecialBeastsCheck
  3448.     add_special SpecialMonCheck
  3449.     add_special Functionc225
  3450. @@ -482,9 +482,9 @@ ScriptReturnCarry: ; c3e2
  3451.     ret
  3452.  ; c3ef
  3453.  
  3454. -Functionc3ef: ; c3ef
  3455. -   callba Function1150c
  3456. -   ld a, [wdc3a]
  3457. +Special_CheckUnusedTwoDayTimer: ; c3ef
  3458. +   callba CheckUnusedTwoDayTimer
  3459. +   ld a, [wUnusedTwoDayTimer]
  3460.     ld [ScriptVar], a
  3461.     ret
  3462.  ; c3fc
  3463. @@ -523,7 +523,7 @@ SpecialCheckPokerus: ; c419
  3464.  ; c422
  3465.  
  3466.  Special_ResetLuckyNumberShowFlag: ; c422
  3467. -   callba Function1152b
  3468. +   callba RestartLuckyNumberCountdown
  3469.     ld hl, wLuckyNumberShowFlag
  3470.     res 0, [hl]
  3471.     callba LoadOrRegenerateLuckyIDNumber
  3472. diff --git a/engine/std_scripts.asm b/engine/std_scripts.asm
  3473. index 8a759a2..5c0df03 100644
  3474. --- a/engine/std_scripts.asm
  3475. +++ b/engine/std_scripts.asm
  3476. @@ -159,7 +159,7 @@ PokeCenterNurseScript:
  3477.  
  3478.  .pokerus_done
  3479.     setflag ENGINE_POKERUS
  3480. -   specialphonecall ELMCALL_POKERUS
  3481. +   specialphonecall SPECIALCALL_POKERUS
  3482.     end
  3483.  
  3484.  DifficultBookshelfScript:
  3485. @@ -297,7 +297,7 @@ RadioTowerRocketsScript:
  3486.     clearevent EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  3487.     clearevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER
  3488.     setevent EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
  3489. -   specialphonecall ELMCALL_WEIRDBROADCAST
  3490. +   specialphonecall SPECIALCALL_WEIRDBROADCAST
  3491.     domaptrigger MAHOGANY_TOWN, $1
  3492.     end
  3493.  
  3494. diff --git a/engine/time.asm b/engine/time.asm
  3495. index b9b8113..fce01ff 100755
  3496. --- a/engine/time.asm
  3497. +++ b/engine/time.asm
  3498. @@ -1,103 +1,103 @@
  3499. -Function113d6: ; 113d6
  3500. -   call Function114dd
  3501. +_InitializeStartDay: ; 113d6
  3502. +   call InitializeStartDay
  3503.     ret
  3504.  ; 113da
  3505.  
  3506. -Function113da: ; 113da
  3507. +ClearDailyTimers: ; 113da
  3508.     xor a
  3509.     ld [wLuckyNumberDayBuffer], a
  3510. -   ld [wdc3a], a
  3511. -   ld [wdc1c], a
  3512. +   ld [wUnusedTwoDayTimer], a
  3513. +   ld [wDailyResetTimer], a
  3514.     ret
  3515.  ; 113e5
  3516.  
  3517. -Function113e5:: ; 113e5
  3518. +InitCallReceiveDelay:: ; 113e5
  3519.     xor a
  3520. -   ld [wd464], a
  3521. +   ld [wTimeCyclesSinceLastCall], a
  3522.  
  3523. -Function113e9: ; 113e9
  3524. -   ld a, [wd464]
  3525. +NextCallReceiveDelay: ; 113e9
  3526. +   ld a, [wTimeCyclesSinceLastCall]
  3527.     cp 3
  3528. -   jr c, .asm_113f2
  3529. +   jr c, .okay
  3530.     ld a, 3
  3531.  
  3532. -.asm_113f2
  3533. +.okay
  3534.     ld e, a
  3535.     ld d, 0
  3536. -   ld hl, .data_113fd
  3537. +   ld hl, .ReceiveCallDelays
  3538.     add hl, de
  3539.     ld a, [hl]
  3540. -   jp Function1142e
  3541. +   jp RestartReceiveCallDelay
  3542.  ; 113fd
  3543.  
  3544. -.data_113fd
  3545. +.ReceiveCallDelays
  3546.     db 20, 10, 5, 3
  3547.  ; 11401
  3548.  
  3549. -Function11401: ; 11401
  3550. -   call Function1143c
  3551. +CheckReceiveCallTimer: ; 11401
  3552. +   call CheckReceiveCallDelay ; check timer
  3553.     ret nc
  3554. -   ld hl, wd464
  3555. +   ld hl, wTimeCyclesSinceLastCall
  3556.     ld a, [hl]
  3557.     cp 3
  3558. -   jr nc, .asm_1140e
  3559. +   jr nc, .ok
  3560.     inc [hl]
  3561.  
  3562. -.asm_1140e
  3563. -   call Function113e9
  3564. +.ok
  3565. +   call NextCallReceiveDelay ; restart timer
  3566.     scf
  3567.     ret
  3568.  ; 11413
  3569.  
  3570. -Function11413: ; 11413
  3571. +InitOneDayCountdown: ; 11413
  3572.     ld a, 1
  3573.  
  3574. -Function11415: ; 11415
  3575. +InitNDaysCountdown: ; 11415
  3576.     ld [hl], a
  3577.     push hl
  3578.     call UpdateTime
  3579.     pop hl
  3580.     inc hl
  3581. -   call Function11621
  3582. +   call CopyDayToHL
  3583.     ret
  3584.  ; 11420
  3585.  
  3586.  CheckDayDependentEventHL: ; 11420
  3587.     inc hl
  3588.     push hl
  3589. -   call Function115cf
  3590. -   call Function115c8
  3591. +   call CalcDaysSince
  3592. +   call GetDaysSince
  3593.     pop hl
  3594.     dec hl
  3595. -   call Function11586
  3596. +   call UpdateTimeRemaining
  3597.     ret
  3598.  ; 1142e
  3599.  
  3600. -Function1142e: ; 1142e
  3601. -   ld hl, wd465
  3602. +RestartReceiveCallDelay: ; 1142e
  3603. +   ld hl, wReceiveCallDelay_MinsRemaining
  3604.     ld [hl], a
  3605.     call UpdateTime
  3606. -   ld hl, wd466
  3607. -   call Function1162e
  3608. +   ld hl, wReceiveCallDelay_StartTime
  3609. +   call CopyDayHourMinToHL
  3610.     ret
  3611.  ; 1143c
  3612.  
  3613. -Function1143c: ; 1143c
  3614. -   ld hl, wd466
  3615. -   call Function115d6
  3616. -   call Function115ae
  3617. -   ld hl, wd465
  3618. -   call Function11586
  3619. +CheckReceiveCallDelay: ; 1143c
  3620. +   ld hl, wReceiveCallDelay_StartTime
  3621. +   call CalcMinsHoursDaysSince
  3622. +   call GetMinutesSinceIfLessThan60
  3623. +   ld hl, wReceiveCallDelay_MinsRemaining
  3624. +   call UpdateTimeRemaining
  3625.     ret
  3626.  ; 1144c
  3627.  
  3628. -Function1144c: ; 1144c
  3629. -   ld hl, wdc1c
  3630. -   jp Function11413
  3631. +RestartDailyResetTimer: ; 1144c
  3632. +   ld hl, wDailyResetTimer
  3633. +   jp InitOneDayCountdown
  3634.  ; 11452
  3635.  
  3636. -Function11452:: ; 11452
  3637. -   ld hl, wdc1c
  3638. +CheckDailyResetTimer:: ; 11452
  3639. +   ld hl, wDailyResetTimer
  3640.     call CheckDayDependentEventHL
  3641.     ret nc
  3642.     xor a
  3643. @@ -121,18 +121,19 @@ endr
  3644.     ld hl, wdc58
  3645.     ld a, [hl]
  3646.     and a
  3647. -   jr z, .asm_11480
  3648. +   jr z, .RestartKenjiBreakCountdown
  3649.     dec [hl]
  3650. -   jr nz, .asm_11483
  3651. +   jr nz, .DontRestartKenjiBreakCountdown
  3652.  
  3653. -.asm_11480
  3654. -   call Function11485
  3655. +.RestartKenjiBreakCountdown
  3656. +   call Special_SampleKenjiBreakCountdown
  3657.  
  3658. -.asm_11483
  3659. -   jr Function1144c
  3660. +.DontRestartKenjiBreakCountdown
  3661. +   jr RestartDailyResetTimer
  3662.  ; 11485
  3663.  
  3664. -Function11485: ; 11485
  3665. +Special_SampleKenjiBreakCountdown: ; 11485
  3666. +; Generate a random number between 3 and 5
  3667.     call Random
  3668.     and 3
  3669.     add 3
  3670. @@ -140,99 +141,101 @@ Function11485: ; 11485
  3671.     ret
  3672.  ; 11490
  3673.  
  3674. -Function11490: ; 11490
  3675. -   ld a, $14
  3676. -   ld [wd46c], a
  3677. -   ld a, $0
  3678. -   ld [wd46d], a
  3679. +StartBugContestTimer: ; 11490
  3680. +   ld a, 20
  3681. +   ld [wBugContestMinsRemaining], a
  3682. +   ld a, 0
  3683. +   ld [wBugContestSecsRemaining], a
  3684.     call UpdateTime
  3685. -   ld hl, wdc35
  3686. -   call Function11613
  3687. +   ld hl, wBugContestStartTime
  3688. +   call CopyDayHourMinSecToHL
  3689.     ret
  3690.  ; 114a4
  3691.  
  3692.  
  3693. -Function114a4:: ; 114a4 (4:54a4)
  3694. -   ld hl, wdc35
  3695. -   call Function115db
  3696. -   ld a, [wcfd7]
  3697. +CheckBugContestTimer:: ; 114a4 (4:54a4)
  3698. +   ld hl, wBugContestStartTime
  3699. +   call CalcSecsMinsHoursDaysSince
  3700. +   ld a, [wDaysSince]
  3701.     and a
  3702. -   jr nz, .asm_114d4
  3703. -   ld a, [wcfd6]
  3704. +   jr nz, .timed_out
  3705. +   ld a, [wHoursSince]
  3706.     and a
  3707. -   jr nz, .asm_114d4
  3708. -   ld a, [wcfd4]
  3709. +   jr nz, .timed_out
  3710. +   ld a, [wSecondsSince]
  3711.     ld b, a
  3712. -   ld a, [wd46d]
  3713. +   ld a, [wBugContestSecsRemaining]
  3714.     sub b
  3715. -   jr nc, .asm_114c2
  3716. -   add $3c
  3717. -.asm_114c2
  3718. -   ld [wd46d], a
  3719. -   ld a, [wcfd5]
  3720. +   jr nc, .okay
  3721. +   add 60
  3722. +
  3723. +.okay
  3724. +   ld [wBugContestSecsRemaining], a
  3725. +   ld a, [wMinutesSince]
  3726.     ld b, a
  3727. -   ld a, [wd46c]
  3728. +   ld a, [wBugContestMinsRemaining]
  3729.     sbc b
  3730. -   ld [wd46c], a
  3731. -   jr c, .asm_114d4
  3732. +   ld [wBugContestMinsRemaining], a
  3733. +   jr c, .timed_out
  3734.     and a
  3735.     ret
  3736. -.asm_114d4
  3737. +
  3738. +.timed_out
  3739.     xor a
  3740. -   ld [wd46c], a
  3741. -   ld [wd46d], a
  3742. +   ld [wBugContestMinsRemaining], a
  3743. +   ld [wBugContestSecsRemaining], a
  3744.     scf
  3745.     ret
  3746.  
  3747.  
  3748. -Function114dd: ; 114dd
  3749. +InitializeStartDay: ; 114dd
  3750.     call UpdateTime
  3751. -   ld hl, wdc23
  3752. -   call Function11621
  3753. +   ld hl, wStartDay
  3754. +   call CopyDayToHL
  3755.     ret
  3756.  ; 114e7
  3757.  
  3758. -Function114e7:: ; 114e7
  3759. -   ld hl, wdc23
  3760. -   call Function115cf
  3761. -   call Function115c8
  3762. +CheckPokerusTrick:: ; 114e7
  3763. +   ld hl, wStartDay
  3764. +   call CalcDaysSince
  3765. +   call GetDaysSince
  3766.     and a
  3767. -   jr z, .asm_114fa
  3768. +   jr z, .done
  3769.  
  3770.     ld b, a
  3771.     callba ApplyPokerusTick
  3772.  
  3773. -.asm_114fa
  3774. +.done
  3775.     xor a
  3776.     ret
  3777.  ; 114fc
  3778.  
  3779. -Function114fc: ; 114fc
  3780. -   ld a, $2
  3781. -   ld hl, wdc3a
  3782. +SetUnusedTwoDayTimer: ; 114fc
  3783. +   ld a, 2
  3784. +   ld hl, wUnusedTwoDayTimer
  3785.     ld [hl], a
  3786.     call UpdateTime
  3787. -   ld hl, wdc3b
  3788. -   call Function11621
  3789. +   ld hl, wUnusedTwoDayTimerStartDate
  3790. +   call CopyDayToHL
  3791.     ret
  3792.  ; 1150c
  3793.  
  3794. -Function1150c: ; Specific version of CheckDayDependentEventHL when hl = $dc3a
  3795. -   ld hl, wdc3b
  3796. -   call Function115cf
  3797. -   call Function115c8
  3798. -   ld hl, wdc3a
  3799. -   call Function11586
  3800. +CheckUnusedTwoDayTimer: ; 1150c
  3801. +   ld hl, wUnusedTwoDayTimerStartDate
  3802. +   call CalcDaysSince
  3803. +   call GetDaysSince
  3804. +   ld hl, wUnusedTwoDayTimer
  3805. +   call UpdateTimeRemaining
  3806.     ret
  3807.  ; 1151c
  3808.  
  3809. -Function1151c: ; 1151c
  3810. +Function1151c: ; unreferenced
  3811.     ld hl, DailyFlags
  3812.     set 2, [hl]
  3813.     ret
  3814.  ; 11522
  3815.  
  3816. -Function11522: ; 11522
  3817. +Function11522: ; unreferenced
  3818.     and a
  3819.     ld hl, DailyFlags
  3820.     bit 2, [hl]
  3821. @@ -241,10 +244,10 @@ Function11522: ; 11522
  3822.     ret
  3823.  ; 1152b
  3824.  
  3825. -Function1152b: ; 1152b
  3826. +RestartLuckyNumberCountdown: ; 1152b
  3827.     call .GetDaysUntilNextFriday
  3828.     ld hl, wLuckyNumberDayBuffer
  3829. -   jp Function11415
  3830. +   jp InitNDaysCountdown
  3831.  ; 11534
  3832.  
  3833.  .GetDaysUntilNextFriday: ; 11534
  3834. @@ -267,167 +270,170 @@ CheckLuckyNumberShowFlag: ; 11542
  3835.     jp CheckDayDependentEventHL
  3836.  ; 11548
  3837.  
  3838. -Function11548: ; 11548
  3839. -   ld a, BANK(s0_abfa)
  3840. +DoMysteryGiftIfDayHasPassed: ; 11548
  3841. +   ld a, BANK(sMysteryGiftTimer)
  3842.     call GetSRAMBank
  3843. -   ld hl, s0_abfa
  3844. +   ld hl, sMysteryGiftTimer
  3845.     ld a, [hli]
  3846.     ld [Buffer1], a
  3847.     ld a, [hl]
  3848.     ld [Buffer2], a
  3849.     call CloseSRAM
  3850. +
  3851.     ld hl, Buffer1
  3852.     call CheckDayDependentEventHL
  3853. -   jr nc, .asm_11572
  3854. +   jr nc, .not_timed_out
  3855.     ld hl, Buffer1
  3856. -   call Function11413
  3857. +   call InitOneDayCountdown
  3858.     call CloseSRAM
  3859.     callba Function1050c8
  3860.  
  3861. -.asm_11572
  3862. -   ld a, BANK(s0_abfa)
  3863. +.not_timed_out
  3864. +   ld a, BANK(sMysteryGiftTimer)
  3865.     call GetSRAMBank
  3866.     ld hl, Buffer1
  3867.     ld a, [hli]
  3868. -   ld [s0_abfa], a
  3869. +   ld [sMysteryGiftTimer], a
  3870.     ld a, [hl]
  3871. -   ld [s0_abfa + 1], a
  3872. +   ld [sMysteryGiftTimer + 1], a
  3873.     call CloseSRAM
  3874.     ret
  3875.  ; 11586
  3876.  
  3877. -Function11586: ; 11586
  3878. +UpdateTimeRemaining: ; 11586
  3879. +; If the amount of time elapsed exceeds the capacity of its
  3880. +; unit, skip this part.
  3881.     cp -1
  3882. -   jr z, .skip
  3883. +   jr z, .set_carry
  3884.     ld c, a
  3885. -   ld a, [hl]
  3886. +   ld a, [hl] ; time remaining
  3887.     sub c
  3888.     jr nc, .ok
  3889.     xor a
  3890.  
  3891.  .ok
  3892.     ld [hl], a
  3893. -   jr z, .skip
  3894. +   jr z, .set_carry
  3895.     xor a
  3896.     ret
  3897.  
  3898. -.skip
  3899. +.set_carry
  3900.     xor a
  3901.     ld [hl], a
  3902.     scf
  3903.     ret
  3904.  ; 11599
  3905.  
  3906. -Function11599: ; 11599
  3907. -   ld a, [wcfd7]
  3908. +GetSecondsSinceIfLessThan60: ; 11599
  3909. +   ld a, [wDaysSince]
  3910.     and a
  3911. -   jr nz, Function115cc
  3912. -   ld a, [wcfd6]
  3913. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3914. +   ld a, [wHoursSince]
  3915.     and a
  3916. -   jr nz, Function115cc
  3917. -   ld a, [wcfd5]
  3918. -   jr nz, Function115cc
  3919. -   ld a, [wcfd4]
  3920. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3921. +   ld a, [wMinutesSince]
  3922. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3923. +   ld a, [wSecondsSince]
  3924.     ret
  3925.  ; 115ae
  3926.  
  3927. -Function115ae: ; 115ae
  3928. -   ld a, [wcfd7]
  3929. +GetMinutesSinceIfLessThan60: ; 115ae
  3930. +   ld a, [wDaysSince]
  3931.     and a
  3932. -   jr nz, Function115cc
  3933. -   ld a, [wcfd6]
  3934. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3935. +   ld a, [wHoursSince]
  3936.     and a
  3937. -   jr nz, Function115cc
  3938. -   ld a, [wcfd5]
  3939. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3940. +   ld a, [wMinutesSince]
  3941.     ret
  3942.  ; 115be
  3943.  
  3944. -Function115be: ; 115be
  3945. -   ld a, [wcfd7]
  3946. +GetHoursSinceIfLessThan24: ; 115be
  3947. +   ld a, [wDaysSince]
  3948.     and a
  3949. -   jr nz, Function115cc
  3950. -   ld a, [wcfd6]
  3951. +   jr nz, GetTimeElapsed_ExceedsUnitLimit
  3952. +   ld a, [wHoursSince]
  3953.     ret
  3954.  ; 115c8
  3955.  
  3956. -Function115c8: ; 115c8
  3957. -   ld a, [wcfd7]
  3958. +GetDaysSince: ; 115c8
  3959. +   ld a, [wDaysSince]
  3960.     ret
  3961.  ; 115cc
  3962.  
  3963. -Function115cc: ; 115cc
  3964. -   ld a, $ff
  3965. +GetTimeElapsed_ExceedsUnitLimit: ; 115cc
  3966. +   ld a, -1
  3967.     ret
  3968.  ; 115cf
  3969.  
  3970. -Function115cf: ; 115cf
  3971. +CalcDaysSince: ; 115cf
  3972.     xor a
  3973. -   jr Function11605
  3974. +   jr _CalcDaysSince
  3975.  ; 115d2
  3976.  
  3977. -Function115d2: ; 115d2
  3978. +CalcHoursDaysSince: ; 115d2
  3979.     inc hl
  3980.     xor a
  3981. -   jr Function115f8
  3982. +   jr _CalcHoursDaysSince
  3983.  ; 115d6
  3984.  
  3985. -Function115d6: ; 115d6
  3986. +CalcMinsHoursDaysSince: ; 115d6
  3987.  rept 2
  3988.     inc hl
  3989.  endr
  3990.     xor a
  3991. -   jr Function115eb
  3992. +   jr _CalcMinsHoursDaysSince
  3993.  ; 115db
  3994.  
  3995. -Function115db: ; 115db
  3996. +CalcSecsMinsHoursDaysSince: ; 115db
  3997.  rept 3
  3998.     inc hl
  3999.  endr
  4000.     ld a, [hSeconds]
  4001.     ld c, a
  4002.     sub [hl]
  4003. -   jr nc, .asm_115e6
  4004. +   jr nc, .skip
  4005.     add 60
  4006. -.asm_115e6
  4007. -   ld [hl], c
  4008. +.skip
  4009. +   ld [hl], c ; current seconds
  4010.     dec hl
  4011. -   ld [wcfd4], a
  4012. +   ld [wSecondsSince], a ; seconds since
  4013.  
  4014. -Function115eb: ; 115eb
  4015. +_CalcMinsHoursDaysSince: ; 115eb
  4016.     ld a, [hMinutes]
  4017.     ld c, a
  4018.     sbc [hl]
  4019. -   jr nc, .asm_115f3
  4020. +   jr nc, .skip
  4021.     add 60
  4022. -.asm_115f3
  4023. -   ld [hl], c
  4024. +.skip
  4025. +   ld [hl], c ; current minutes
  4026.     dec hl
  4027. -   ld [wcfd5], a
  4028. +   ld [wMinutesSince], a ; minutes since
  4029.  
  4030. -Function115f8: ; 115f8
  4031. +_CalcHoursDaysSince: ; 115f8
  4032.     ld a, [hHours]
  4033.     ld c, a
  4034.     sbc [hl]
  4035. -   jr nc, .asm_11600
  4036. +   jr nc, .skip
  4037.     add 24
  4038. -.asm_11600
  4039. -   ld [hl], c
  4040. +.skip
  4041. +   ld [hl], c ; current hours
  4042.     dec hl
  4043. -   ld [wcfd6], a
  4044. +   ld [wHoursSince], a ; hours since
  4045.  
  4046. -Function11605
  4047. +_CalcDaysSince:
  4048.     ld a, [CurDay]
  4049.     ld c, a
  4050.     sbc [hl]
  4051.     jr nc, .skip
  4052.     add 20 * 7
  4053.  .skip
  4054. -   ld [hl], c
  4055. -   ld [wcfd7], a
  4056. +   ld [hl], c ; current days
  4057. +   ld [wDaysSince], a ; days since
  4058.     ret
  4059.  ; 11613
  4060.  
  4061. -Function11613: ; 11613
  4062. +CopyDayHourMinSecToHL: ; 11613
  4063.     ld a, [CurDay]
  4064.     ld [hli], a
  4065.     ld a, [hHours]
  4066. @@ -439,13 +445,13 @@ Function11613: ; 11613
  4067.     ret
  4068.  ; 11621
  4069.  
  4070. -Function11621: ; 11621
  4071. +CopyDayToHL: ; 11621
  4072.     ld a, [CurDay]
  4073.     ld [hl], a
  4074.     ret
  4075.  ; 11626
  4076.  
  4077. -Function11626: ; 11626
  4078. +CopyDayHourToHL: ; 11626
  4079.     ld a, [CurDay]
  4080.     ld [hli], a
  4081.     ld a, [hHours]
  4082. @@ -453,7 +459,7 @@ Function11626: ; 11626
  4083.     ret
  4084.  ; 1162e
  4085.  
  4086. -Function1162e: ; 1162e
  4087. +CopyDayHourMinToHL: ; 1162e
  4088.     ld a, [CurDay]
  4089.     ld [hli], a
  4090.     ld a, [hHours]
  4091. diff --git a/event/buena.asm b/event/buena.asm
  4092. index c243137..038aea2 100644
  4093. --- a/event/buena.asm
  4094. +++ b/event/buena.asm
  4095. @@ -3,20 +3,20 @@ SpecialBuenasPassword: ; 8af6b
  4096.     ld [wcf76], a
  4097.     ld hl, MenuDataHeader_0x8afa9
  4098.     call CopyMenuDataHeader
  4099. -   ld a, [wdc4a]
  4100. +   ld a, [wBuenasPassword]
  4101.     ld c, a
  4102.     callba GetBuenasPassword
  4103. -   ld a, [wcf83]
  4104. +   ld a, [wMenuBorderLeftCoord]
  4105.     add c
  4106.     add $2
  4107. -   ld [wcf85], a
  4108. -   call Function1c00
  4109. +   ld [wMenuBorderRightCoord], a
  4110. +   call BackUpTiles
  4111.     call Function1e5d
  4112.     callba Function4ae5e
  4113.     ld b, $0
  4114.     ld a, [MenuSelection]
  4115.     ld c, a
  4116. -   ld a, [wdc4a]
  4117. +   ld a, [wBuenasPassword]
  4118.     and $3
  4119.     cp c
  4120.     jr nz, .asm_8afa4
  4121. @@ -52,7 +52,7 @@ Unknown_8afb8: ; 8afb8
  4122.  
  4123.  Function8afbd: ; 8afbd
  4124.     push de
  4125. -   ld a, [wdc4a]
  4126. +   ld a, [wBuenasPassword]
  4127.     and $f0
  4128.     ld c, a
  4129.     ld a, [MenuSelection]
  4130. @@ -94,14 +94,16 @@ SpecialBuenaPrize: ; 8afd4
  4131.     call Function105a
  4132.     call YesNoBox
  4133.     jr c, .asm_8afeb
  4134. +
  4135.     ld a, [wcf75]
  4136.     call Buena_getprize
  4137.     inc hl
  4138.     ld a, [hld]
  4139.     ld c, a
  4140. -   ld a, [wdc4b]
  4141. +   ld a, [wBlueCardBalance]
  4142.     cp c
  4143. -   jr c, .asm_8b047
  4144. +   jr c, .InsufficientBalance
  4145. +
  4146.     ld a, [hli]
  4147.     push hl
  4148.     ld [CurItem], a
  4149. @@ -113,13 +115,13 @@ SpecialBuenaPrize: ; 8afd4
  4150.     jr nc, .asm_8b04c
  4151.     ld a, [hl]
  4152.     ld c, a
  4153. -   ld a, [wdc4b]
  4154. +   ld a, [wBlueCardBalance]
  4155.     sub c
  4156. -   ld [wdc4b], a
  4157. +   ld [wBlueCardBalance], a
  4158.     call Function8b097
  4159.     jr .asm_8b051
  4160.  
  4161. -.asm_8b047
  4162. +.InsufficientBalance
  4163.     ld hl, UnknownText_0x8b081
  4164.     jr .asm_8b05a
  4165.  
  4166. @@ -189,7 +191,7 @@ Function8b090: ; 8b090
  4167.  ; 8b097
  4168.  
  4169.  Function8b097: ; 8b097
  4170. -   ld de, wdc4b
  4171. +   ld de, wBlueCardBalance
  4172.     call Function8b09e
  4173.     ret
  4174.  ; 8b09e
  4175. @@ -245,7 +247,7 @@ Function8b0e2: ; 8b0e2
  4176.     ld hl, .MenuDataHeader
  4177.     call CopyMenuDataHeader
  4178.     ld a, [MenuSelection]
  4179. -   ld [wcf88], a
  4180. +   ld [wPocketPointerLocationBuffer], a
  4181.     xor a
  4182.     ld [wcf76], a
  4183.     ld [hBGMapMode], a
  4184. diff --git a/event/kurt.asm b/event/kurt.asm
  4185. index 505d0e7..9d53c46 100644
  4186. --- a/event/kurt.asm
  4187. +++ b/event/kurt.asm
  4188. @@ -27,7 +27,7 @@ Special_SelectApricornForKurt: ; 88018
  4189.     ld c, $1
  4190.     xor a
  4191.     ld [wd0e4], a
  4192. -   ld [wdca4], a
  4193. +   ld [wKurtApricornQuantity], a
  4194.  .loop
  4195.     push bc
  4196.     call Kurt_PrintTextWhichApricorn
  4197. @@ -48,7 +48,7 @@ Special_SelectApricornForKurt: ; 88018
  4198.     pop bc
  4199.     jr nc, .loop
  4200.     ld a, [wd10c]
  4201. -   ld [wdca4], a
  4202. +   ld [wKurtApricornQuantity], a
  4203.     call Kurt_GiveUpSelectedQuantityOfSelectedApricorn
  4204.  
  4205.  .done
  4206. @@ -62,7 +62,7 @@ Kurt_SelectApricorn: ; 88055
  4207.     ld hl, .MenuDataHeader
  4208.     call CopyMenuDataHeader
  4209.     ld a, [MenuSelection]
  4210. -   ld [wcf88], a
  4211. +   ld [wPocketPointerLocationBuffer], a
  4212.     xor a
  4213.     ld [hBGMapMode], a
  4214.     call Function352f
  4215. diff --git a/gfx/credits/border.png b/gfx/credits/border.png
  4216. index d93bddc..c396d53 100644
  4217. Binary files a/gfx/credits/border.png and b/gfx/credits/border.png differ
  4218. diff --git a/gfx/credits/ditto.png b/gfx/credits/ditto.png
  4219. index 17a1191..6f5b8ed 100644
  4220. Binary files a/gfx/credits/ditto.png and b/gfx/credits/ditto.png differ
  4221. diff --git a/gfx/credits/igglybuff.png b/gfx/credits/igglybuff.png
  4222. index 3a6d001..03776ba 100644
  4223. Binary files a/gfx/credits/igglybuff.png and b/gfx/credits/igglybuff.png differ
  4224. diff --git a/gfx/credits/pichu.png b/gfx/credits/pichu.png
  4225. index f98642e..529973d 100644
  4226. Binary files a/gfx/credits/pichu.png and b/gfx/credits/pichu.png differ
  4227. diff --git a/gfx/credits/smoochum.png b/gfx/credits/smoochum.png
  4228. index 415bac2..ac6d85a 100644
  4229. Binary files a/gfx/credits/smoochum.png and b/gfx/credits/smoochum.png differ
  4230. diff --git a/gfx/credits/theend.png b/gfx/credits/theend.png
  4231. index 165f8ba..1f10e16 100644
  4232. Binary files a/gfx/credits/theend.png and b/gfx/credits/theend.png differ
  4233. diff --git a/gfx/misc/badges.png b/gfx/misc/badges.png
  4234. index 4e5820d..e3a8da4 100644
  4235. Binary files a/gfx/misc/badges.png and b/gfx/misc/badges.png differ
  4236. diff --git a/gfx/misc/font.png b/gfx/misc/font.png
  4237. index 7119c06..cce5fd3 100644
  4238. Binary files a/gfx/misc/font.png and b/gfx/misc/font.png differ
  4239. diff --git a/gfx/misc/font_inversed.png b/gfx/misc/font_inversed.png
  4240. index 519339f..d34c58d 100644
  4241. Binary files a/gfx/misc/font_inversed.png and b/gfx/misc/font_inversed.png differ
  4242. diff --git a/gfx/misc/footprints.png b/gfx/misc/footprints.png
  4243. index b1e3504..814eb35 100644
  4244. Binary files a/gfx/misc/footprints.png and b/gfx/misc/footprints.png differ
  4245. diff --git a/gfx/misc/pack.png b/gfx/misc/pack.png
  4246. index b85fc09..738a9dd 100644
  4247. Binary files a/gfx/misc/pack.png and b/gfx/misc/pack.png differ
  4248. diff --git a/gfx/misc/pack_f.png b/gfx/misc/pack_f.png
  4249. index fbe120b..35171fb 100644
  4250. Binary files a/gfx/misc/pack_f.png and b/gfx/misc/pack_f.png differ
  4251. diff --git a/home.asm b/home.asm
  4252. index 75ed659..eef7279 100644
  4253. --- a/home.asm
  4254. +++ b/home.asm
  4255. @@ -95,7 +95,7 @@ Function2ecb:: ; 2ecb
  4256.  ; 2ed3
  4257.  
  4258.  
  4259. -Function2ed3:: ; 0x2ed3
  4260. +DisableSpriteUpdates:: ; 0x2ed3
  4261.  ; disables overworld sprite updating?
  4262.     xor a
  4263.     ld [$ffde], a
  4264. @@ -107,7 +107,7 @@ Function2ed3:: ; 0x2ed3
  4265.     ret
  4266.  ; 0x2ee4
  4267.  
  4268. -Function2ee4:: ; 2ee4
  4269. +EnableSpriteUpdates:: ; 2ee4
  4270.     ld a, $1
  4271.     ld [wc2ce], a
  4272.     ld a, [VramState]
  4273. @@ -157,7 +157,7 @@ IsInJohto:: ; 2f17
  4274.  ; 2f3e
  4275.  
  4276.  
  4277. -Function2f3e:: ; 2f3e
  4278. +ret_2f3e:: ; 2f3e
  4279.     ret
  4280.  ; 2f3f
  4281.  
  4282. @@ -605,10 +605,12 @@ Function3246:: ; 3246
  4283.     push af
  4284.     xor a
  4285.     ld [hBGMapMode], a
  4286. +
  4287.     ld a, [$ffde]
  4288.     push af
  4289.     xor a
  4290.     ld [$ffde], a
  4291. +
  4292.  .wait
  4293.     ld a, [rLY]
  4294.     cp $7f
  4295. @@ -623,6 +625,7 @@ Function3246:: ; 3246
  4296.     ld [rVBK], a
  4297.     hlcoord 0, 0
  4298.     call Function327b
  4299. +
  4300.  .wait2
  4301.     ld a, [rLY]
  4302.     cp $7f
  4303. @@ -637,30 +640,33 @@ Function3246:: ; 3246
  4304.  ; 327b
  4305.  
  4306.  Function327b:: ; 327b
  4307. +; Copy all tiles to VBGMap
  4308.     ld [hSPBuffer], sp
  4309.     ld sp, hl
  4310.     ld a, [hBGMapAddress + 1]
  4311.     ld h, a
  4312.     ld l, 0
  4313. -   ld a, 18
  4314. +   ld a, SCREEN_HEIGHT
  4315.     ld [$ffd3], a
  4316.     ld b, 1 << 1 ; not in v/hblank
  4317.     ld c, rSTAT % $100
  4318.  
  4319.  .loop
  4320. -rept 20 / 2
  4321. +rept SCREEN_WIDTH / 2
  4322.     pop de
  4323. +; if in v/hblank, wait until not in v/hblank
  4324.  .loop\@
  4325.     ld a, [$ff00+c]
  4326.     and b
  4327.     jr nz, .loop\@
  4328. +; load BGMap0
  4329.     ld [hl], e
  4330.     inc l
  4331.     ld [hl], d
  4332.     inc l
  4333.  endr
  4334.  
  4335. -   ld de, 32 - 20
  4336. +   ld de, $20 - SCREEN_WIDTH
  4337.     add hl, de
  4338.     ld a, [$ffd3]
  4339.     dec a
  4340. @@ -1163,16 +1169,16 @@ Function3524:: ; 3524
  4341.  ; 352f
  4342.  
  4343.  Function352f:: ; 352f
  4344. -   ld a, [wcf82]
  4345. +   ld a, [wMenuBorderTopCoord]
  4346.     dec a
  4347.     ld b, a
  4348. -   ld a, [wcf84]
  4349. +   ld a, [wMenuBorderBottomCoord]
  4350.     sub b
  4351.     ld d, a
  4352. -   ld a, [wcf83]
  4353. +   ld a, [wMenuBorderLeftCoord]
  4354.     dec a
  4355.     ld c, a
  4356. -   ld a, [wcf85]
  4357. +   ld a, [wMenuBorderRightCoord]
  4358.     sub c
  4359.     ld e, a
  4360.     push de
  4361. @@ -1599,7 +1605,7 @@ Function3718:: ; 3718
  4362.     jr .ok
  4363.  
  4364.  .canlose
  4365. -   ld a, [wd0ee]
  4366. +   ld a, [wBattleResult]
  4367.     ld hl, WalkingTile
  4368.     and $f
  4369.     jr z, .ok
  4370. @@ -2221,7 +2227,7 @@ Function3f6e:: ; 3f6e
  4371.  
  4372.  Function3f7c:: ; 3f7c
  4373.     call GetMemTileCoord
  4374. -   call Function1c53
  4375. +   call GetMenuBoxDims
  4376.     dec b
  4377.     dec c
  4378.     call Function3eea
  4379. diff --git a/home/copy.asm b/home/copy.asm
  4380. index ee66242..d17e459 100644
  4381. --- a/home/copy.asm
  4382. +++ b/home/copy.asm
  4383. @@ -224,19 +224,19 @@ Request2bpp:: ; eba
  4384.  
  4385.     ld a, [$ffd3]
  4386.     push af
  4387. -
  4388.     ld a, $8
  4389.     ld [$ffd3], a
  4390. +
  4391.     ld a, [wLinkMode]
  4392. -   cp $4
  4393. -   jr nz, .okay
  4394. -   ld a, [$ffe9]
  4395. +   cp LINK_MOBILE
  4396. +   jr nz, .NotMobile
  4397. +   ld a, [hMobile]
  4398.     and a
  4399. -   jr nz, .okay
  4400. +   jr nz, .NotMobile
  4401.     ld a, $6
  4402.     ld [$ffd3], a
  4403.  
  4404. -.okay
  4405. +.NotMobile
  4406.     ld a, e
  4407.     ld [Requested2bppSource], a
  4408.     ld a, d
  4409. @@ -245,7 +245,6 @@ Request2bpp:: ; eba
  4410.     ld [Requested2bppDest], a
  4411.     ld a, h
  4412.     ld [Requested2bppDest + 1], a
  4413. -
  4414.  .loop
  4415.     ld a, c
  4416.     ld hl, $ffd3
  4417. @@ -272,11 +271,13 @@ Request2bpp:: ; eba
  4418.  .iterate
  4419.     ld a, [$ffd3]
  4420.     ld [Requested2bpp], a
  4421. +
  4422.  .wait2
  4423.     call DelayFrame
  4424.     ld a, [Requested2bpp]
  4425.     and a
  4426.     jr nz, .wait2
  4427. +
  4428.     ld a, c
  4429.     ld hl, $ffd3
  4430.     sub [hl]
  4431. @@ -302,9 +303,9 @@ Request1bpp:: ; f1e
  4432.     ld a, $8
  4433.     ld [$ffd3], a
  4434.     ld a, [wLinkMode]
  4435. -   cp $4
  4436. +   cp LINK_MOBILE
  4437.     jr nz, .NotMobile
  4438. -   ld a, [$ffe9]
  4439. +   ld a, [hMobile]
  4440.     and a
  4441.     jr nz, .NotMobile
  4442.     ld a, $6
  4443. diff --git a/home/map.asm b/home/map.asm
  4444. index 1deb6c3..b59ca30 100644
  4445. --- a/home/map.asm
  4446. +++ b/home/map.asm
  4447. @@ -508,17 +508,18 @@ GetMapConnection:: ; 23a3
  4448.  
  4449.  
  4450.  Function23ac:: ; 23ac
  4451. -   ld a, [hli]
  4452. +   ld a, [hli] ; trigger count
  4453.     ld c, a
  4454. -   ld [wdc07], a
  4455. +   ld [wdc07], a ; current map trigger count
  4456.     ld a, l
  4457. -   ld [wdc07 + 1], a
  4458. +   ld [wdc08], a ; map trigger pointer
  4459.     ld a, h
  4460.     ld [wdc09], a
  4461.     ld a, c
  4462.     and a
  4463.     ret z
  4464. -   ld bc, $0004
  4465. +
  4466. +   ld bc, 4 ; size of a map trigger header entry
  4467.     call AddNTimes
  4468.     ret
  4469.  ; 23c3
  4470. @@ -534,7 +535,8 @@ Function23c3:: ; 23c3
  4471.     ld a, c
  4472.     and a
  4473.     ret z
  4474. -   ld bc, $0003
  4475. +
  4476. +   ld bc, 3
  4477.     call AddNTimes
  4478.     ret
  4479.  ; 23da
  4480. @@ -1958,7 +1960,7 @@ FadeToMenu:: ; 2b29
  4481.     call Function1d6e
  4482.     callba FadeBlackBGMap
  4483.     call ClearSprites
  4484. -   call Function2ed3
  4485. +   call DisableSpriteUpdates
  4486.     ret
  4487.  ; 2b3c
  4488.  
  4489. @@ -1986,7 +1988,7 @@ Function2b5c:: ; 2b5c
  4490.     callba Function49409
  4491.     call Function3200
  4492.     callba FadeInBGMap
  4493. -   call Function2ee4
  4494. +   call EnableSpriteUpdates
  4495.     ret
  4496.  ; 2b74
  4497.  
  4498. diff --git a/home/menu.asm b/home/menu.asm
  4499. index 7c46b97..1de260b 100644
  4500. --- a/home/menu.asm
  4501. +++ b/home/menu.asm
  4502. @@ -1,14 +1,14 @@
  4503.  ; Functions used in displaying and handling menus.
  4504.  
  4505.  
  4506. -LoadMenuDataHeader:: ; 0x1d35
  4507. +LoadMenuDataHeader::
  4508.     call CopyMenuDataHeader
  4509. -   call Function1c00
  4510. +   call BackUpTiles
  4511.     ret
  4512.  
  4513. -CopyMenuDataHeader:: ; 0x1d3c
  4514. +CopyMenuDataHeader::
  4515.     ld de, wcf81
  4516. -   ld bc, $0010
  4517. +   ld bc, 16
  4518.     call CopyBytes
  4519.     ld a, [hROMBank]
  4520.     ld [wcf8a], a
  4521. @@ -16,7 +16,7 @@ CopyMenuDataHeader:: ; 0x1d3c
  4522.  ; 0x1d4b
  4523.  
  4524.  Function1d4b:: ; 1d4b
  4525. -   ld [wcf88], a
  4526. +   ld [wPocketPointerLocationBuffer], a
  4527.     ret
  4528.  ; 1d4f
  4529.  
  4530. @@ -71,7 +71,7 @@ Function1d7d:: ; 1d7d
  4531.     ret
  4532.  ; 1d81
  4533.  
  4534. -InterpretMenu2:: ; 0x1d81
  4535. +InterpretMenu2::
  4536.     xor a
  4537.     ld [hBGMapMode], a
  4538.     call Function1cbb
  4539. @@ -81,12 +81,12 @@ InterpretMenu2:: ; 0x1d81
  4540.     call Function1c66
  4541.     ld a, [wcf91]
  4542.     bit 7, a
  4543. -   jr z, .cancel ; 0x1d98 $d
  4544. +   jr z, .cancel
  4545.     call Function1c10
  4546.     call Function1bc9
  4547.     call Function1ff8
  4548.     bit 1, a
  4549. -   jr z, .okay ; 0x1da5 $2
  4550. +   jr z, .okay
  4551.  .cancel
  4552.     scf
  4553.     ret
  4554. @@ -103,7 +103,7 @@ GetMenu2:: ; 1dab
  4555.     ret
  4556.  ; 1db8
  4557.  
  4558. -Function1db8:: ; 0x1db8
  4559. +Function1db8::
  4560.     push hl
  4561.     push bc
  4562.     push af
  4563. @@ -151,14 +151,14 @@ _YesNoBox:: ; 1dd9
  4564.  
  4565.  .okay
  4566.     ld a, b
  4567. -   ld [wcf83], a
  4568. +   ld [wMenuBorderLeftCoord], a
  4569.     add $5
  4570. -   ld [wcf85], a
  4571. +   ld [wMenuBorderRightCoord], a
  4572.     ld a, c
  4573. -   ld [wcf82], a
  4574. +   ld [wMenuBorderTopCoord], a
  4575.     add $4
  4576. -   ld [wcf84], a
  4577. -   call Function1c00
  4578. +   ld [wMenuBorderBottomCoord], a
  4579. +   call BackUpTiles
  4580.  
  4581.  InterpretTwoOptionMenu:: ; 1dfe
  4582.     call InterpretMenu2
  4583. @@ -198,7 +198,7 @@ YesNoMenuData2:: ; 1e25
  4584.  
  4585.  Function1e2e:: ; 1e2e
  4586.     call Function1e35
  4587. -   call Function1c00
  4588. +   call BackUpTiles
  4589.     ret
  4590.  ; 1e35
  4591.  
  4592. @@ -206,24 +206,24 @@ Function1e35:: ; 1e35
  4593.     push de
  4594.     call CopyMenuDataHeader
  4595.     pop de
  4596. -   ld a, [wcf83]
  4597. +   ld a, [wMenuBorderLeftCoord]
  4598.     ld h, a
  4599. -   ld a, [wcf85]
  4600. +   ld a, [wMenuBorderRightCoord]
  4601.     sub h
  4602.     ld h, a
  4603.     ld a, d
  4604. -   ld [wcf83], a
  4605. +   ld [wMenuBorderLeftCoord], a
  4606.     add h
  4607. -   ld [wcf85], a
  4608. -   ld a, [wcf82]
  4609. +   ld [wMenuBorderRightCoord], a
  4610. +   ld a, [wMenuBorderTopCoord]
  4611.     ld l, a
  4612. -   ld a, [wcf84]
  4613. +   ld a, [wMenuBorderBottomCoord]
  4614.     sub l
  4615.     ld l, a
  4616.     ld a, e
  4617. -   ld [wcf82], a
  4618. +   ld [wMenuBorderTopCoord], a
  4619.     add l
  4620. -   ld [wcf84], a
  4621. +   ld [wMenuBorderBottomCoord], a
  4622.     ret
  4623.  ; 1e5d
  4624.  
  4625. @@ -245,14 +245,14 @@ SetUpMenu:: ; 1e70
  4626.     set 7, [hl]
  4627.     ret
  4628.  
  4629. -MenuFunc_1e7f:: ; 0x1e7f
  4630. +MenuFunc_1e7f::
  4631.     call Function1c66
  4632.     call Function1ebd
  4633.     call Function1ea6
  4634.     call Function1cbb
  4635.     ret
  4636.  
  4637. -MenuWriteText:: ; 0x1e8c
  4638. +MenuWriteText::
  4639.     xor a
  4640.     ld [hBGMapMode], a
  4641.     call Function1ebd ; sort out the text
  4642. @@ -269,18 +269,18 @@ MenuWriteText:: ; 0x1e8c
  4643.  ; 0x1ea6
  4644.  
  4645.  Function1ea6:: ; 1ea6
  4646. -   ld a, [wcf83]
  4647. +   ld a, [wMenuBorderLeftCoord]
  4648.     ld c, a
  4649. -   ld a, [wcf85]
  4650. +   ld a, [wMenuBorderRightCoord]
  4651.     sub c
  4652.     ld c, a
  4653.     ld a, [wcf92]
  4654.     add a
  4655.     inc a
  4656.     ld b, a
  4657. -   ld a, [wcf82]
  4658. +   ld a, [wMenuBorderTopCoord]
  4659.     add b
  4660. -   ld [wcf84], a
  4661. +   ld [wMenuBorderBottomCoord], a
  4662.     ret
  4663.  ; 1ebd
  4664.  
  4665. @@ -410,7 +410,7 @@ Function1f2a:: ; 1f2a
  4666.     ld a, [hl]
  4667.     ld [MenuSelection], a
  4668.     ld a, [wcfa9]
  4669. -   ld [wcf88], a
  4670. +   ld [wPocketPointerLocationBuffer], a
  4671.     and a
  4672.     ret
  4673.  
  4674. @@ -571,7 +571,7 @@ InterpretMenu:: ; 202a
  4675.     ld a, [hROMBank]
  4676.     ld [wcf94], a
  4677.     callba Function2400e
  4678. -   ld a, [wcf88]
  4679. +   ld a, [wPocketPointerLocationBuffer]
  4680.     ret
  4681.  ; 2039
  4682.  
  4683. @@ -579,7 +579,7 @@ Function2039:: ; 2039
  4684.     ld a, [hROMBank]
  4685.     ld [wcf94], a
  4686.     callba Function24022
  4687. -   ld a, [wcf88]
  4688. +   ld a, [wPocketPointerLocationBuffer]
  4689.     ret
  4690.  ; 2048
  4691.  
  4692. @@ -587,7 +587,7 @@ Function2048:: ; 2048
  4693.     ld a, [hROMBank]
  4694.     ld [wcf94], a
  4695.     callba Function2403c
  4696. -   ld a, [wcf88]
  4697. +   ld a, [wPocketPointerLocationBuffer]
  4698.     ret
  4699.  ; 2057
  4700.  
  4701. diff --git a/home/mobile.asm b/home/mobile.asm
  4702. index c6c225d..dbf982d 100644
  4703. --- a/home/mobile.asm
  4704. +++ b/home/mobile.asm
  4705. @@ -74,9 +74,9 @@ Timer:: ; 3e93
  4706.     push de
  4707.     push hl
  4708.  
  4709. -   ld a, [$ffe9]
  4710. +   ld a, [hMobile]
  4711.     and a
  4712. -   jr z, .asm_3ed2
  4713. +   jr z, .pop_ret
  4714.  
  4715.     xor a
  4716.     ld [rTAC], a
  4717. @@ -88,15 +88,15 @@ Timer:: ; 3e93
  4718.  
  4719.     ld a, [$c86a]
  4720.     or a
  4721. -   jr z, .asm_3ed2
  4722. +   jr z, .pop_ret
  4723.  
  4724.     ld a, [$c822]
  4725.     bit 1, a
  4726. -   jr nz, .asm_3eca
  4727. +   jr nz, .skip_Function1118de
  4728.  
  4729.     ld a, [rSC]
  4730.     and 1 << rSC_ON
  4731. -   jr nz, .asm_3eca
  4732. +   jr nz, .skip_Function1118de
  4733.  
  4734.     ld a, [hROMBank]
  4735.     push af
  4736. @@ -111,14 +111,14 @@ Timer:: ; 3e93
  4737.     ld [$c981], a
  4738.     rst Bankswitch
  4739.  
  4740. -.asm_3eca
  4741. +.skip_Function1118de
  4742.     ld a, [rTMA]
  4743.     ld [rTIMA], a
  4744.  
  4745.     ld a, 1 << rTAC_ON | rTAC_65536_HZ
  4746.     ld [rTAC], a
  4747.  
  4748. -.asm_3ed2
  4749. +.pop_ret
  4750.     pop hl
  4751.     pop de
  4752.     pop bc
  4753. diff --git a/home/movement.asm b/home/movement.asm
  4754. index d85be3b..82486b5 100644
  4755. --- a/home/movement.asm
  4756. +++ b/home/movement.asm
  4757. @@ -190,33 +190,3 @@ Function1bf7:: ; 1bf7
  4758.     ret
  4759.  ; 1c00
  4760.  
  4761. -Function1c00:: ; 1c00
  4762. -   callab Function24374
  4763. -   ret
  4764. -; 1c07
  4765. -
  4766. -ExitMenu:: ; 0x1c07
  4767. -   push af
  4768. -   callab Function243e8
  4769. -   pop af
  4770. -   ret
  4771. -
  4772. -Function1c10:: ; 0x1c10
  4773. -   callab Function2446d
  4774. -   ret
  4775. -
  4776. -WriteBackup:: ; 0x1c17
  4777. -   push af
  4778. -   call ExitMenu
  4779. -   call Function321c
  4780. -   call UpdateSprites
  4781. -   pop af
  4782. -   ret
  4783. -
  4784. -Function1c23:: ; 0x1c23
  4785. -   call GetMemTileCoord
  4786. -   call Function1c30
  4787. -   call Function1d19
  4788. -   call Function1c30
  4789. -   ret
  4790. -; 0x1c30
  4791. diff --git a/home/tilemap.asm b/home/tilemap.asm
  4792. index 4ce4dce..d6a8f31 100644
  4793. --- a/home/tilemap.asm
  4794. +++ b/home/tilemap.asm
  4795. @@ -1,44 +1,79 @@
  4796. -Function1c30:: ; 0x1c30
  4797. -   call Function1c53
  4798. +BackUpTiles:: ; 1c00
  4799. +   callab _BackUpTiles
  4800. +   ret
  4801. +; 1c07
  4802. +
  4803. +ExitMenu:: ; 0x1c07
  4804. +   push af
  4805. +   callab Function243e8
  4806. +   pop af
  4807. +   ret
  4808. +
  4809. +Function1c10:: ; 0x1c10
  4810. +   callab Function2446d
  4811. +   ret
  4812. +
  4813. +WriteBackup:: ; 0x1c17
  4814. +   push af
  4815. +   call ExitMenu
  4816. +   call Function321c
  4817. +   call UpdateSprites
  4818. +   pop af
  4819. +   ret
  4820. +
  4821. +RestoreTileBackup:: ; 0x1c23
  4822. +   call GetMemTileCoord
  4823. +   call .copy
  4824. +   call GetMemAttrCoord
  4825. +   call .copy
  4826. +   ret
  4827. +; 0x1c30
  4828. +
  4829. +.copy: ; 0x1c30
  4830. +   call GetMenuBoxDims
  4831.     inc b
  4832.     inc c
  4833. -.asm_1c35
  4834. +
  4835. +.row
  4836.     push bc
  4837.     push hl
  4838. -.asm_1c37
  4839. +
  4840. +.col
  4841.     ld a, [de]
  4842.     ld [hli], a
  4843.     dec de
  4844.     dec c
  4845. -   jr nz, .asm_1c37 ; 0x1c3b $fa
  4846. +   jr nz, .col ; 0x1c3b $fa
  4847. +
  4848.     pop hl
  4849. -   ld bc, $0014
  4850. +   ld bc, SCREEN_WIDTH
  4851.     add hl, bc
  4852.     pop bc
  4853.     dec b
  4854. -   jr nz, .asm_1c35 ; 0x1c44 $ef
  4855. +   jr nz, .row ; 0x1c44 $ef
  4856. +
  4857.     ret
  4858.  
  4859.  Function1c47:: ; 0x1c47
  4860.     ld b, $10
  4861.     ld de, wcf81
  4862. -.asm_1c4c
  4863. +.loop
  4864.     ld a, [hld]
  4865.     ld [de], a
  4866.     inc de
  4867.     dec b
  4868. -   jr nz, .asm_1c4c ; 0x1c50 $fa
  4869. +   jr nz, .loop ; 0x1c50 $fa
  4870.     ret
  4871.  
  4872. -Function1c53:: ; 0x1c53
  4873. -   ld a, [wcf82]
  4874. +GetMenuBoxDims:: ; 0x1c53
  4875. +   ld a, [wMenuBorderTopCoord] ; top
  4876.     ld b, a
  4877. -   ld a, [wcf84]
  4878. +   ld a, [wMenuBorderBottomCoord] ; bottom
  4879.     sub b
  4880.     ld b, a
  4881. -   ld a, [wcf83]
  4882. +   ld a, [wMenuBorderLeftCoord] ; left
  4883.     ld c, a
  4884. -   ld a, [wcf85]
  4885. +   ld a, [wMenuBorderRightCoord] ; right
  4886.     sub c
  4887.     ld c, a
  4888.     ret
  4889. @@ -110,17 +145,17 @@ Function1c89:: ; 1c89
  4890.  
  4891.  Function1cbb:: ; 1cbb
  4892.     call GetMemTileCoord
  4893. -   call Function1c53
  4894. +   call GetMenuBoxDims
  4895.     dec b
  4896.     dec c
  4897.     jp TextBox
  4898.  ; 1cc6
  4899.  
  4900.  Function1cc6:: ; 1cc6
  4901. -   ld a, [wcf82]
  4902. +   ld a, [wMenuBorderTopCoord]
  4903.     ld b, a
  4904.     inc b
  4905. -   ld a, [wcf83]
  4906. +   ld a, [wMenuBorderLeftCoord]
  4907.     ld c, a
  4908.     inc c
  4909.     ld a, [wcf91]
  4910. @@ -142,7 +177,7 @@ Function1ce1:: ; 1ce1
  4911.     call GetMemTileCoord
  4912.     ld bc, $0015
  4913.     add hl, bc
  4914. -   call Function1c53
  4915. +   call GetMenuBoxDims
  4916.     dec b
  4917.     dec c
  4918.     call ClearBox
  4919. @@ -151,7 +186,7 @@ Function1ce1:: ; 1ce1
  4920.  
  4921.  Function1cf1:: ; 1cf1
  4922.     call GetMemTileCoord
  4923. -   call Function1c53
  4924. +   call GetMenuBoxDims
  4925.     inc c
  4926.     inc b
  4927.     call ClearBox
  4928. @@ -160,9 +195,9 @@ Function1cf1:: ; 1cf1
  4929.  
  4930.  
  4931.  GetMemTileCoord:: ; 1cfd
  4932. -   ld a, [wcf83]
  4933. +   ld a, [wMenuBorderLeftCoord]
  4934.     ld c, a
  4935. -   ld a, [wcf82]
  4936. +   ld a, [wMenuBorderTopCoord]
  4937.     ld b, a
  4938.  ; 1d05
  4939.  
  4940. @@ -191,10 +226,10 @@ endr
  4941.     ret
  4942.  ; 1d19
  4943.  
  4944. -Function1d19:: ; 1d19
  4945. -   ld a, [wcf83]
  4946. +GetMemAttrCoord:: ; 1d19
  4947. +   ld a, [wMenuBorderLeftCoord]
  4948.     ld c, a
  4949. -   ld a, [wcf82]
  4950. +   ld a, [wMenuBorderTopCoord]
  4951.     ld b, a
  4952.  
  4953.  GetAttrCoord:: ; 1d21
  4954. diff --git a/home/time.asm b/home/time.asm
  4955. index 609e466..173ea57 100644
  4956. --- a/home/time.asm
  4957. +++ b/home/time.asm
  4958. @@ -3,7 +3,7 @@
  4959.  
  4960.  AskTimer:: ; 591
  4961.     push af
  4962. -   ld a, [$ffe9]
  4963. +   ld a, [hMobile]
  4964.     and a
  4965.     jr z, .asm_59a
  4966.     call Timer
  4967. diff --git a/home/window.asm b/home/window.asm
  4968. index 1b33c99..1198cfb 100644
  4969. --- a/home/window.asm
  4970. +++ b/home/window.asm
  4971. @@ -16,12 +16,14 @@ ResetWindow:: ; 2dba
  4972.  ; 2dcf
  4973.  
  4974.  
  4975. -Function2dcf:: ; 2dcf
  4976. +LoadMoveSprites:: ; 2dcf
  4977.     ld a, [hOAMUpdate]
  4978.     push af
  4979.     ld a, $1
  4980.     ld [hOAMUpdate], a
  4981. +
  4982.     call Function2de2
  4983. +
  4984.     pop af
  4985.     ld [hOAMUpdate], a
  4986.     ld hl, VramState
  4987. diff --git a/hram.asm b/hram.asm
  4988. index 0cbb796..52ff0bf 100644
  4989. --- a/hram.asm
  4990. +++ b/hram.asm
  4991. @@ -20,6 +20,7 @@ hVBlankCounter     EQU $ff9b
  4992.  hROMBank           EQU $ff9d
  4993.  hVBlank            EQU $ff9e
  4994.  hMapEntryMethod    EQU $ff9f
  4995. +hMenuReturn        EQU $ffa0
  4996.  
  4997.  hJoypadReleased    EQU $ffa2
  4998.  hJoypadPressed     EQU $ffa3
  4999. @@ -91,3 +92,4 @@ hCGBPalUpdate      EQU $ffe5
  5000.  hCGB               EQU $ffe6
  5001.  hSGB               EQU $ffe7
  5002.  hDMATransfer       EQU $ffe8
  5003. +hMobile            EQU $ffe9
  5004. diff --git a/items/item_attributes.asm b/items/item_attributes.asm
  5005. index c66432b..5257378 100644
  5006. --- a/items/item_attributes.asm
  5007. +++ b/items/item_attributes.asm
  5008. @@ -1,777 +1,777 @@
  5009. -item_attribute: macro
  5010. -   ; price, effect, param, permissions, pocket, battle permissions
  5011. +item_attribute: MACRO
  5012.     dw \1
  5013. -   db \2, \3, \4, \5, \6
  5014. -   endm
  5015. +   db \2, \3, \4, \5
  5016. +   dn \6, \7
  5017. +ENDM
  5018.  
  5019.  Item1Attributes:
  5020.  
  5021.  ; MASTER BALL
  5022. -   item_attribute 0, NONE, 0, CANT_SELECT, BALL, $06
  5023. +   item_attribute     0, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5024.  
  5025.  Item2Attributes:
  5026.  
  5027.  ; ULTRA BALL
  5028. -   item_attribute 1200, NONE, 0, CANT_SELECT, BALL, $06
  5029. +   item_attribute  1200, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5030.  
  5031.  ; BRIGHTPOWDER
  5032. -   item_attribute 10, HELD_BRIGHTPOWDER, 20, CANT_SELECT, ITEM, $00
  5033. +   item_attribute    10, HELD_BRIGHTPOWDER,   20,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5034.  
  5035.  ; GREAT BALL
  5036. -   item_attribute 600, NONE, 0, CANT_SELECT, BALL, $06
  5037. +   item_attribute   600, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5038.  
  5039.  ; # BALL
  5040. -   item_attribute 200, NONE, 0, CANT_SELECT, BALL, $06
  5041. +   item_attribute   200, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5042.  
  5043.  ; TERU-SAMA
  5044. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5045. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5046.  
  5047.  ; BICYCLE
  5048. -   item_attribute 0, NONE, 0, CANT_TOSS, KEY_ITEM, $60
  5049. +   item_attribute     0, NONE,                 0,               CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5050.  
  5051.  ; MOON STONE
  5052. -   item_attribute 0, NONE, 0, CANT_SELECT, ITEM, $50
  5053. +   item_attribute     0, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5054.  
  5055.  ; ANTIDOTE
  5056. -   item_attribute 100, NONE, 0, CANT_SELECT, ITEM, $55
  5057. +   item_attribute   100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5058.  
  5059.  ; BURN HEAL
  5060. -   item_attribute 250, NONE, 0, CANT_SELECT, ITEM, $55
  5061. +   item_attribute   250, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5062.  
  5063.  ; ICE HEAL
  5064. -   item_attribute 250, NONE, 0, CANT_SELECT, ITEM, $55
  5065. +   item_attribute   250, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5066.  
  5067.  ; AWAKENING
  5068. -   item_attribute 250, NONE, 0, CANT_SELECT, ITEM, $55
  5069. +   item_attribute   250, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5070.  
  5071.  ; PARLYZ HEAL
  5072. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $55
  5073. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5074.  
  5075.  ; FULL RESTORE
  5076. -   item_attribute 3000, NONE, -1, CANT_SELECT, ITEM, $55
  5077. +   item_attribute  3000, NONE,                -1,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5078.  
  5079.  ; MAX POTION
  5080. -   item_attribute 2500, NONE, -1, CANT_SELECT, ITEM, $55
  5081. +   item_attribute  2500, NONE,                -1,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5082.  
  5083.  ; HYPER POTION
  5084. -   item_attribute 1200, NONE, 200, CANT_SELECT, ITEM, $55
  5085. +   item_attribute  1200, NONE,               200,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5086.  
  5087.  ; SUPER POTION
  5088. -   item_attribute 700, NONE, 50, CANT_SELECT, ITEM, $55
  5089. +   item_attribute   700, NONE,                50,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5090.  
  5091.  ; POTION
  5092. -   item_attribute 300, NONE, 20, CANT_SELECT, ITEM, $55
  5093. +   item_attribute   300, NONE,                20,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5094.  
  5095.  ; ESCAPE ROPE
  5096. -   item_attribute 550, NONE, 0, CANT_SELECT, ITEM, $60
  5097. +   item_attribute   550, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5098.  
  5099.  ; REPEL
  5100. -   item_attribute 350, NONE, 0, CANT_SELECT, ITEM, $40
  5101. +   item_attribute   350, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5102.  
  5103.  ; MAX ELIXER
  5104. -   item_attribute 4500, NONE, -1, CANT_SELECT, ITEM, $55
  5105. +   item_attribute  4500, NONE,                -1,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5106.  
  5107.  ; FIRE STONE
  5108. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $50
  5109. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5110.  
  5111.  ; THUNDERSTONE
  5112. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $50
  5113. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5114.  
  5115.  ; WATER STONE
  5116. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $50
  5117. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5118.  
  5119.  ; TERU-SAMA
  5120. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5121. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5122.  
  5123.  ; HP UP
  5124. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5125. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5126.  
  5127.  ; PROTEIN
  5128. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5129. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5130.  
  5131.  ; IRON
  5132. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5133. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5134.  
  5135.  ; CARBOS
  5136. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5137. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5138.  
  5139.  ; LUCKY PUNCH
  5140. -   item_attribute 10, NONE, 0, CANT_SELECT, ITEM, $00
  5141. +   item_attribute    10, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5142.  
  5143.  ; CALCIUM
  5144. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5145. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5146.  
  5147.  ; RARE CANDY
  5148. -   item_attribute 4800, NONE, 0, CANT_SELECT, ITEM, $50
  5149. +   item_attribute  4800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5150.  
  5151.  ; X ACCURACY
  5152. -   item_attribute 950, NONE, 0, CANT_SELECT, ITEM, $06
  5153. +   item_attribute   950, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5154.  
  5155.  ; LEAF STONE
  5156. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $50
  5157. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5158.  
  5159.  ; METAL POWDER
  5160. -   item_attribute 10, HELD_METAL_POWDER, 10, CANT_SELECT, ITEM, $00
  5161. +   item_attribute    10, HELD_METAL_POWDER,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5162.  
  5163.  ; NUGGET
  5164. -   item_attribute 10000, NONE, 0, CANT_SELECT, ITEM, $00
  5165. +   item_attribute 10000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5166.  
  5167.  ; # DOLL
  5168. -   item_attribute 1000, NONE, 0, CANT_SELECT, ITEM, $06
  5169. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5170.  
  5171.  ; FULL HEAL
  5172. -   item_attribute 600, NONE, 0, CANT_SELECT, ITEM, $55
  5173. +   item_attribute   600, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5174.  
  5175.  ; REVIVE
  5176. -   item_attribute 1500, NONE, 0, CANT_SELECT, ITEM, $55
  5177. +   item_attribute  1500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5178.  
  5179.  ; MAX REVIVE
  5180. -   item_attribute 4000, NONE, 0, CANT_SELECT, ITEM, $55
  5181. +   item_attribute  4000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5182.  
  5183.  ; GUARD SPEC.
  5184. -   item_attribute 700, NONE, 0, CANT_SELECT, ITEM, $06
  5185. +   item_attribute   700, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5186.  
  5187.  ; SUPER REPEL
  5188. -   item_attribute 500, NONE, 0, CANT_SELECT, ITEM, $40
  5189. +   item_attribute   500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5190.  
  5191.  ; MAX REPEL
  5192. -   item_attribute 700, NONE, 0, CANT_SELECT, ITEM, $40
  5193. +   item_attribute   700, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5194.  
  5195.  ; DIRE HIT
  5196. -   item_attribute 650, NONE, 0, CANT_SELECT, ITEM, $06
  5197. +   item_attribute   650, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5198.  
  5199.  ; TERU-SAMA
  5200. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5201. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5202.  
  5203.  ; FRESH WATER
  5204. -   item_attribute 200, NONE, 50, CANT_SELECT, ITEM, $55
  5205. +   item_attribute   200, NONE,                50,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5206.  
  5207.  ; SODA POP
  5208. -   item_attribute 300, NONE, 60, CANT_SELECT, ITEM, $55
  5209. +   item_attribute   300, NONE,                60,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5210.  
  5211.  ; LEMONADE
  5212. -   item_attribute 350, NONE, 80, CANT_SELECT, ITEM, $55
  5213. +   item_attribute   350, NONE,                80,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5214.  
  5215.  ; X ATTACK
  5216. -   item_attribute 500, NONE, 0, CANT_SELECT, ITEM, $06
  5217. +   item_attribute   500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5218.  
  5219.  ; TERU-SAMA
  5220. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5221. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5222.  
  5223.  ; X DEFEND
  5224. -   item_attribute 550, NONE, 0, CANT_SELECT, ITEM, $06
  5225. +   item_attribute   550, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5226.  
  5227.  ; X SPEED
  5228. -   item_attribute 350, NONE, 0, CANT_SELECT, ITEM, $06
  5229. +   item_attribute   350, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5230.  
  5231.  ; X SPECIAL
  5232. -   item_attribute 350, NONE, 0, CANT_SELECT, ITEM, $06
  5233. +   item_attribute   350, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5234.  
  5235.  ; COIN CASE
  5236. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $40
  5237. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5238.  
  5239.  ; ITEMFINDER
  5240. -   item_attribute 0, NONE, 0, CANT_TOSS, KEY_ITEM, $60
  5241. +   item_attribute     0, NONE,                 0,               CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5242.  
  5243.  ; TERU-SAMA
  5244. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5245. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5246.  
  5247.  ; EXP.SHARE
  5248. -   item_attribute 3000, NONE, 0, CANT_SELECT, ITEM, $00
  5249. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5250.  
  5251.  ; OLD ROD
  5252. -   item_attribute 0, NONE, 0, CANT_TOSS, KEY_ITEM, $60
  5253. +   item_attribute     0, NONE,                 0,               CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5254.  
  5255.  ; GOOD ROD
  5256. -   item_attribute 0, NONE, 0, CANT_TOSS, KEY_ITEM, $60
  5257. +   item_attribute     0, NONE,                 0,               CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5258.  
  5259.  ; SILVER LEAF
  5260. -   item_attribute 1000, NONE, 0, CANT_SELECT, ITEM, $00
  5261. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5262.  
  5263.  ; SUPER ROD
  5264. -   item_attribute 0, NONE, 0, CANT_TOSS, KEY_ITEM, $60
  5265. +   item_attribute     0, NONE,                 0,               CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5266.  
  5267.  ; PP UP
  5268. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $50
  5269. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5270.  
  5271.  ; ETHER
  5272. -   item_attribute 1200, NONE, 10, CANT_SELECT, ITEM, $55
  5273. +   item_attribute  1200, NONE,                10,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5274.  
  5275.  ; MAX ETHER
  5276. -   item_attribute 2000, NONE, -1, CANT_SELECT, ITEM, $55
  5277. +   item_attribute  2000, NONE,                -1,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5278.  
  5279.  ; ELIXER
  5280. -   item_attribute 3000, NONE, 10, CANT_SELECT, ITEM, $55
  5281. +   item_attribute  3000, NONE,                10,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5282.  
  5283.  ; RED SCALE
  5284. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5285. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5286.  
  5287.  ; SECRETPOTION
  5288. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5289. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5290.  
  5291.  ; S.S.TICKET
  5292. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5293. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5294.  
  5295.  ; MYSTERY EGG
  5296. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5297. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5298.  
  5299.  ; CLEAR BELL
  5300. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5301. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5302.  
  5303.  ; SILVER WING
  5304. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5305. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5306.  
  5307.  ; MOOMOO MILK
  5308. -   item_attribute 500, NONE, 100, CANT_SELECT, ITEM, $55
  5309. +   item_attribute   500, NONE,               100,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5310.  
  5311.  ; QUICK CLAW
  5312. -   item_attribute 100, HELD_QUICK_CLAW, 60, CANT_SELECT, ITEM, $00
  5313. +   item_attribute   100, HELD_QUICK_CLAW,     60,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5314.  
  5315.  ; PSNCUREBERRY
  5316. -   item_attribute 10, HELD_HEAL_POISON, 0, CANT_SELECT, ITEM, $55
  5317. +   item_attribute    10, HELD_HEAL_POISON,     0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5318.  
  5319.  ; GOLD LEAF
  5320. -   item_attribute 1000, NONE, 0, CANT_SELECT, ITEM, $00
  5321. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5322.  
  5323.  ; SOFT SAND
  5324. -   item_attribute 100, HELD_GROUND_BOOST, 10, CANT_SELECT, ITEM, $00
  5325. +   item_attribute   100, HELD_GROUND_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5326.  
  5327.  ; SHARP BEAK
  5328. -   item_attribute 100, HELD_FLYING_BOOST, 10, CANT_SELECT, ITEM, $00
  5329. +   item_attribute   100, HELD_FLYING_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5330.  
  5331.  ; PRZCUREBERRY
  5332. -   item_attribute 10, HELD_HEAL_PARALYZE, 0, CANT_SELECT, ITEM, $55
  5333. +   item_attribute    10, HELD_HEAL_PARALYZE,   0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5334.  
  5335.  ; BURNT BERRY
  5336. -   item_attribute 10, HELD_HEAL_FREEZE, 0, CANT_SELECT, ITEM, $55
  5337. +   item_attribute    10, HELD_HEAL_FREEZE,     0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5338.  
  5339.  ; ICE BERRY
  5340. -   item_attribute 10, HELD_HEAL_BURN, 0, CANT_SELECT, ITEM, $55
  5341. +   item_attribute    10, HELD_HEAL_BURN,       0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5342.  
  5343.  ; POISON BARB
  5344. -   item_attribute 100, HELD_POISON_BOOST, 10, CANT_SELECT, ITEM, $00
  5345. +   item_attribute   100, HELD_POISON_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5346.  
  5347.  ; KING'S ROCK
  5348. -   item_attribute 100, HELD_TRADE_EVOLVE, 30, CANT_SELECT, ITEM, $00
  5349. +   item_attribute   100, HELD_TRADE_EVOLVE,   30,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5350.  
  5351.  ; BITTER BERRY
  5352. -   item_attribute 10, HELD_HEAL_CONFUSION, 0, CANT_SELECT, ITEM, $05
  5353. +   item_attribute    10, HELD_HEAL_CONFUSION,  0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEANDFIELD
  5354.  
  5355.  ; MINT BERRY
  5356. -   item_attribute 10, HELD_HEAL_SLEEP, 0, CANT_SELECT, ITEM, $55
  5357. +   item_attribute    10, HELD_HEAL_SLEEP,      0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5358.  
  5359.  ; RED APRICORN
  5360. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5361. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5362.  
  5363.  ; TINYMUSHROOM
  5364. -   item_attribute 500, NONE, 0, CANT_SELECT, ITEM, $00
  5365. +   item_attribute   500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5366.  
  5367.  ; BIG MUSHROOM
  5368. -   item_attribute 5000, NONE, 0, CANT_SELECT, ITEM, $00
  5369. +   item_attribute  5000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5370.  
  5371.  ; SILVERPOWDER
  5372. -   item_attribute 100, HELD_BUG_BOOST, 10, CANT_SELECT, ITEM, $00
  5373. +   item_attribute   100, HELD_BUG_BOOST,      10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5374.  
  5375.  ; BLU APRICORN
  5376. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5377. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5378.  
  5379.  ; TERU-SAMA
  5380. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5381. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5382.  
  5383.  ; AMULET COIN
  5384. -   item_attribute 100, HELD_AMULET_COIN, 10, CANT_SELECT, ITEM, $00
  5385. +   item_attribute   100, HELD_AMULET_COIN,    10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5386.  
  5387.  ; YLW APRICORN
  5388. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5389. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5390.  
  5391.  ; GRN APRICORN
  5392. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5393. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5394.  
  5395.  ; CLEANSE TAG
  5396. -   item_attribute 200, HELD_CLEANSE_TAG, 0, CANT_SELECT, ITEM, $00
  5397. +   item_attribute   200, HELD_CLEANSE_TAG,     0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5398.  
  5399.  ; MYSTIC WATER
  5400. -   item_attribute 100, HELD_WATER_BOOST, 10, CANT_SELECT, ITEM, $00
  5401. +   item_attribute   100, HELD_WATER_BOOST,    10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5402.  
  5403.  ; TWISTEDSPOON
  5404. -   item_attribute 100, HELD_PSYCHIC_BOOST, 10, CANT_SELECT, ITEM, $00
  5405. +   item_attribute   100, HELD_PSYCHIC_BOOST,  10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5406.  
  5407.  ; WHT APRICORN
  5408. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5409. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5410.  
  5411.  ; BLACKBELT
  5412. -   item_attribute 100, HELD_FIGHTING_BOOST, 10, CANT_SELECT, ITEM, $00
  5413. +   item_attribute   100, HELD_FIGHTING_BOOST, 10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5414.  
  5415.  ; BLK APRICORN
  5416. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5417. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5418.  
  5419.  ; TERU-SAMA
  5420. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5421. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5422.  
  5423.  ; PNK APRICORN
  5424. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5425. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5426.  
  5427.  ; BLACKGLASSES
  5428. -   item_attribute 100, HELD_DARK_BOOST, 10, CANT_SELECT, ITEM, $00
  5429. +   item_attribute   100, HELD_DARK_BOOST,     10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5430.  
  5431.  ; SLOWPOKETAIL
  5432. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $00
  5433. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5434.  
  5435.  ; PINK BOW
  5436. -   item_attribute 100, HELD_NORMAL_BOOST, 10, CANT_SELECT, ITEM, $00
  5437. +   item_attribute   100, HELD_NORMAL_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5438.  
  5439.  ; STICK
  5440. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5441. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5442.  
  5443.  ; SMOKE BALL
  5444. -   item_attribute 200, HELD_ESCAPE, 0, CANT_SELECT, ITEM, $00
  5445. +   item_attribute   200, HELD_ESCAPE,          0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5446.  
  5447.  ; NEVERMELTICE
  5448. -   item_attribute 100, HELD_ICE_BOOST, 10, CANT_SELECT, ITEM, $00
  5449. +   item_attribute   100, HELD_ICE_BOOST,      10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5450.  
  5451.  ; MAGNET
  5452. -   item_attribute 100, HELD_ELECTRIC_BOOST, 10, CANT_SELECT, ITEM, $00
  5453. +   item_attribute   100, HELD_ELECTRIC_BOOST, 10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5454.  
  5455.  ; MIRACLEBERRY
  5456. -   item_attribute 10, HELD_HEAL_STATUS, 0, CANT_SELECT, ITEM, $55
  5457. +   item_attribute    10, HELD_HEAL_STATUS,     0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5458.  
  5459.  ; PEARL
  5460. -   item_attribute 1400, NONE, 0, CANT_SELECT, ITEM, $00
  5461. +   item_attribute  1400, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5462.  
  5463.  ; BIG PEARL
  5464. -   item_attribute 7500, NONE, 0, CANT_SELECT, ITEM, $00
  5465. +   item_attribute  7500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5466.  
  5467.  ; EVERSTONE
  5468. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5469. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5470.  
  5471.  ; SPELL TAG
  5472. -   item_attribute 100, HELD_GHOST_BOOST, 10, CANT_SELECT, ITEM, $00
  5473. +   item_attribute   100, HELD_GHOST_BOOST,    10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5474.  
  5475.  ; RAGECANDYBAR
  5476. -   item_attribute 300, NONE, 20, CANT_SELECT, ITEM, $55
  5477. +   item_attribute   300, NONE,                20,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5478.  
  5479.  ; GS BALL
  5480. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5481. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5482.  
  5483.  ; BLUE CARD
  5484. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $40
  5485. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5486.  
  5487.  ; MIRACLE SEED
  5488. -   item_attribute 100, HELD_GRASS_BOOST, 10, CANT_SELECT, ITEM, $00
  5489. +   item_attribute   100, HELD_GRASS_BOOST,    10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5490.  
  5491.  ; THICK CLUB
  5492. -   item_attribute 500, NONE, 0, CANT_SELECT, ITEM, $00
  5493. +   item_attribute   500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5494.  
  5495.  ; FOCUS BAND
  5496. -   item_attribute 200, HELD_FOCUS_BAND, 30, CANT_SELECT, ITEM, $00
  5497. +   item_attribute   200, HELD_FOCUS_BAND,     30,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5498.  
  5499.  ; TERU-SAMA
  5500. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5501. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5502.  
  5503.  ; ENERGYPOWDER
  5504. -   item_attribute 500, NONE, 0, CANT_SELECT, ITEM, $55
  5505. +   item_attribute   500, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5506.  
  5507.  ; ENERGY ROOT
  5508. -   item_attribute 800, NONE, 0, CANT_SELECT, ITEM, $55
  5509. +   item_attribute   800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5510.  
  5511.  ; HEAL POWDER
  5512. -   item_attribute 450, NONE, 0, CANT_SELECT, ITEM, $55
  5513. +   item_attribute   450, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5514.  
  5515.  ; REVIVAL HERB
  5516. -   item_attribute 2800, NONE, 0, CANT_SELECT, ITEM, $55
  5517. +   item_attribute  2800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5518.  
  5519.  ; HARD STONE
  5520. -   item_attribute 100, HELD_ROCK_BOOST, 10, CANT_SELECT, ITEM, $00
  5521. +   item_attribute   100, HELD_ROCK_BOOST,     10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5522.  
  5523.  ; LUCKY EGG
  5524. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5525. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5526.  
  5527.  ; CARD KEY
  5528. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $60
  5529. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5530.  
  5531.  ; MACHINE PART
  5532. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5533. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5534.  
  5535.  ; EGG TICKET
  5536. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5537. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5538.  
  5539.  ; LOST ITEM
  5540. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5541. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5542.  
  5543.  ; STARDUST
  5544. -   item_attribute 2000, NONE, 0, CANT_SELECT, ITEM, $00
  5545. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5546.  
  5547.  ; STAR PIECE
  5548. -   item_attribute 9800, NONE, 0, CANT_SELECT, ITEM, $00
  5549. +   item_attribute  9800, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5550.  
  5551.  ; BASEMENT KEY
  5552. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $60
  5553. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5554.  
  5555.  ; PASS
  5556. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5557. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5558.  
  5559.  ; TERU-SAMA
  5560. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5561. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5562.  
  5563.  ; TERU-SAMA
  5564. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5565. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5566.  
  5567.  ; TERU-SAMA
  5568. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5569. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5570.  
  5571.  ; CHARCOAL
  5572. -   item_attribute 9800, HELD_FIRE_BOOST, 10, CANT_SELECT, ITEM, $00
  5573. +   item_attribute  9800, HELD_FIRE_BOOST,     10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5574.  
  5575.  ; BERRY JUICE
  5576. -   item_attribute 100, HELD_BERRY, 20, CANT_SELECT, ITEM, $55
  5577. +   item_attribute   100, HELD_BERRY,          20,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5578.  
  5579.  ; SCOPE LENS
  5580. -   item_attribute 200, HELD_CRITICAL_UP, 0, CANT_SELECT, ITEM, $00
  5581. +   item_attribute   200, HELD_CRITICAL_UP,     0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5582.  
  5583.  ; TERU-SAMA
  5584. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5585. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5586.  
  5587.  ; TERU-SAMA
  5588. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5589. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5590.  
  5591.  ; METAL COAT
  5592. -   item_attribute 100, HELD_STEEL_BOOST, 10, CANT_SELECT, ITEM, $00
  5593. +   item_attribute   100, HELD_STEEL_BOOST,    10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5594.  
  5595.  ; DRAGON FANG
  5596. -   item_attribute 100, NONE, 0, CANT_SELECT, ITEM, $00
  5597. +   item_attribute   100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5598.  
  5599.  ; TERU-SAMA
  5600. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5601. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5602.  
  5603.  ; LEFTOVERS
  5604. -   item_attribute 200, HELD_LEFTOVERS, 10, CANT_SELECT, ITEM, $00
  5605. +   item_attribute   200, HELD_LEFTOVERS,      10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5606.  
  5607.  ; TERU-SAMA
  5608. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5609. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5610.  
  5611.  ; TERU-SAMA
  5612. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5613. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5614.  
  5615.  ; TERU-SAMA
  5616. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5617. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5618.  
  5619.  ; MYSTERYBERRY
  5620. -   item_attribute 10, HELD_RESTORE_PP, -1, CANT_SELECT, ITEM, $55
  5621. +   item_attribute    10, HELD_RESTORE_PP,     -1,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5622.  
  5623.  ; DRAGON SCALE
  5624. -   item_attribute 2100, HELD_DRAGON_BOOST, 10, CANT_SELECT, ITEM, $00
  5625. +   item_attribute  2100, HELD_DRAGON_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5626.  
  5627.  ; BERSERK GENE
  5628. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $00
  5629. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5630.  
  5631.  ; TERU-SAMA
  5632. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5633. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5634.  
  5635.  ; TERU-SAMA
  5636. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5637. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5638.  
  5639.  ; TERU-SAMA
  5640. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5641. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5642.  
  5643.  ; SACRED ASH
  5644. -   item_attribute 200, NONE, 0, CANT_SELECT, ITEM, $60
  5645. +   item_attribute   200, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5646.  
  5647.  ; HEAVY BALL
  5648. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5649. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5650.  
  5651.  ; FLOWER MAIL
  5652. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5653. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5654.  
  5655.  ; LEVEL BALL
  5656. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5657. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5658.  
  5659.  ; LURE BALL
  5660. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5661. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5662.  
  5663.  ; FAST BALL
  5664. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5665. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5666.  
  5667.  ; TERU-SAMA
  5668. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5669. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5670.  
  5671.  ; LIGHT BALL
  5672. -   item_attribute 100, NONE, 0, CANT_SELECT, ITEM, $00
  5673. +   item_attribute   100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5674.  
  5675.  ; FRIEND BALL
  5676. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5677. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5678.  
  5679.  ; MOON BALL
  5680. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5681. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5682.  
  5683.  ; LOVE BALL
  5684. -   item_attribute 150, NONE, 0, CANT_SELECT, BALL, $06
  5685. +   item_attribute   150, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5686.  
  5687.  ; NORMAL BOX
  5688. -   item_attribute 10, NONE, 0, CANT_SELECT, ITEM, $40
  5689. +   item_attribute    10, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5690.  
  5691.  ; GORGEOUS BOX
  5692. -   item_attribute 10, NONE, 0, CANT_SELECT, ITEM, $40
  5693. +   item_attribute    10, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_CURRENT, ITEMCONTEXT_NOTINBATTLE
  5694.  
  5695.  ; SUN STONE
  5696. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $50
  5697. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5698.  
  5699.  ; POLKADOT BOW
  5700. -   item_attribute 100, HELD_NORMAL_BOOST, 10, CANT_SELECT, ITEM, $00
  5701. +   item_attribute   100, HELD_NORMAL_BOOST,   10,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5702.  
  5703.  ; TERU-SAMA
  5704. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5705. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5706.  
  5707.  ; UP-GRADE
  5708. -   item_attribute 2100, NONE, 0, CANT_SELECT, ITEM, $00
  5709. +   item_attribute  2100, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5710.  
  5711.  ; BERRY
  5712. -   item_attribute 10, HELD_BERRY, 10, CANT_SELECT, ITEM, $55
  5713. +   item_attribute    10, HELD_BERRY,          10,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5714.  
  5715.  ; GOLD BERRY
  5716. -   item_attribute 10, HELD_BERRY, 30, CANT_SELECT, ITEM, $55
  5717. +   item_attribute    10, HELD_BERRY,          30,             CANT_SELECT, ITEM,     ITEMMENU_PARTY,   ITEMCONTEXT_BATTLEANDFIELD
  5718.  
  5719.  ; SQUIRTBOTTLE
  5720. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $60
  5721. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_FIELD,   ITEMCONTEXT_NOTINBATTLE
  5722.  
  5723.  ; TERU-SAMA
  5724. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5725. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5726.  
  5727.  ; PARK BALL
  5728. -   item_attribute 0, NONE, 0, CANT_SELECT, BALL, $06
  5729. +   item_attribute     0, NONE,                 0,             CANT_SELECT, BALL,     ITEMMENU_NOUSE,   ITEMCONTEXT_BATTLEONLY
  5730.  
  5731.  ; RAINBOW WING
  5732. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, $00
  5733. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5734.  
  5735.  ; TERU-SAMA
  5736. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5737. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5738.  
  5739.  ; BRICK PIECE
  5740. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5741. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5742.  
  5743.  ; SURF MAIL
  5744. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5745. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5746.  
  5747.  ; LITEBLUEMAIL
  5748. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5749. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5750.  
  5751.  ; PORTRAITMAIL
  5752. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5753. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5754.  
  5755.  ; LOVELY MAIL
  5756. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5757. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5758.  
  5759.  ; EON MAIL
  5760. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5761. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5762.  
  5763.  ; MORPH MAIL
  5764. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5765. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5766.  
  5767.  ; BLUESKY MAIL
  5768. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5769. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5770.  
  5771.  ; MUSIC MAIL
  5772. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5773. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5774.  
  5775.  ; MIRAGE MAIL
  5776. -   item_attribute 50, NONE, 0, CANT_SELECT, ITEM, $00
  5777. +   item_attribute    50, NONE,                 0,             CANT_SELECT, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5778.  
  5779.  ; TERU-SAMA
  5780. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5781. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5782.  
  5783.  ; TM01
  5784. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5785. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5786.  
  5787.  ; TM02
  5788. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5789. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5790.  
  5791.  ; TM03
  5792. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5793. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5794.  
  5795.  ; TM04
  5796. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5797. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5798.  
  5799.  ; TERU-SAMA
  5800. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5801. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5802.  
  5803.  ; TM05
  5804. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5805. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5806.  
  5807.  ; TM06
  5808. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5809. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5810.  
  5811.  ; TM07
  5812. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5813. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5814.  
  5815.  ; TM08
  5816. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5817. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5818.  
  5819.  ; TM09
  5820. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5821. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5822.  
  5823.  ; TM10
  5824. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5825. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5826.  
  5827.  ; TM11
  5828. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5829. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5830.  
  5831.  ; TM12
  5832. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5833. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5834.  
  5835.  ; TM13
  5836. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5837. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5838.  
  5839.  ; TM14
  5840. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5841. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5842.  
  5843.  ; TM15
  5844. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5845. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5846.  
  5847.  ; TM16
  5848. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5849. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5850.  
  5851.  ; TM17
  5852. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5853. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5854.  
  5855.  ; TM18
  5856. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5857. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5858.  
  5859.  ; TM19
  5860. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5861. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5862.  
  5863.  ; TM20
  5864. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5865. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5866.  
  5867.  ; TM21
  5868. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5869. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5870.  
  5871.  ; TM22
  5872. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5873. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5874.  
  5875.  ; TM23
  5876. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5877. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5878.  
  5879.  ; TM24
  5880. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5881. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5882.  
  5883.  ; TM25
  5884. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5885. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5886.  
  5887.  ; TM26
  5888. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5889. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5890.  
  5891.  ; TM27
  5892. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5893. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5894.  
  5895.  ; TM28
  5896. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5897. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5898.  
  5899.  ; TERU-SAMA
  5900. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  5901. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  5902.  
  5903.  ; TM29
  5904. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5905. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5906.  
  5907.  ; TM30
  5908. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5909. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5910.  
  5911.  ; TM31
  5912. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5913. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5914.  
  5915.  ; TM32
  5916. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5917. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5918.  
  5919.  ; TM33
  5920. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5921. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5922.  
  5923.  ; TM34
  5924. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5925. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5926.  
  5927.  ; TM35
  5928. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5929. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5930.  
  5931.  ; TM36
  5932. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5933. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5934.  
  5935.  ; TM37
  5936. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5937. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5938.  
  5939.  ; TM38
  5940. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5941. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5942.  
  5943.  ; TM39
  5944. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5945. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5946.  
  5947.  ; TM40
  5948. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5949. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5950.  
  5951.  ; TM41
  5952. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5953. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5954.  
  5955.  ; TM42
  5956. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5957. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5958.  
  5959.  ; TM43
  5960. -   item_attribute 1000, NONE, 0, CANT_SELECT, TM_HM, $50
  5961. +   item_attribute  1000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5962.  
  5963.  ; TM44
  5964. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5965. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5966.  
  5967.  ; TM45
  5968. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5969. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5970.  
  5971.  ; TM46
  5972. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5973. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5974.  
  5975.  ; TM47
  5976. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5977. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5978.  
  5979.  ; TM48
  5980. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5981. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5982.  
  5983.  ; TM49
  5984. -   item_attribute 3000, NONE, 0, CANT_SELECT, TM_HM, $50
  5985. +   item_attribute  3000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5986.  
  5987.  ; TM50
  5988. -   item_attribute 2000, NONE, 0, CANT_SELECT, TM_HM, $50
  5989. +   item_attribute  2000, NONE,                 0,             CANT_SELECT, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5990.  
  5991.  ; HM01
  5992. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  5993. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5994.  
  5995.  ; HM02
  5996. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  5997. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  5998.  
  5999.  ; HM03
  6000. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  6001. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  6002.  
  6003.  ; HM04
  6004. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  6005. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  6006.  
  6007.  ; HM05
  6008. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  6009. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  6010.  
  6011.  ; HM06
  6012. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  6013. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  6014.  
  6015.  ; HM07
  6016. -   item_attribute 0, NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, $50
  6017. +   item_attribute     0, NONE,                 0, CANT_SELECT | CANT_TOSS, TM_HM,    ITEMMENU_PARTY,   ITEMCONTEXT_NOTINBATTLE
  6018.  
  6019.  ; TERU-SAMA
  6020. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6021. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6022.  
  6023.  ; TERU-SAMA
  6024. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6025. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6026.  
  6027.  ; TERU-SAMA
  6028. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6029. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6030.  
  6031.  ; TERU-SAMA
  6032. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6033. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6034.  
  6035.  ; TERU-SAMA
  6036. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6037. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6038.  
  6039.  ; TERU-SAMA
  6040. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6041. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6042.  
  6043.  ; ?
  6044. -   item_attribute $9999, NONE, 0, 0, ITEM, $00
  6045. +   item_attribute $9999, NONE,                 0,                       0, ITEM,     ITEMMENU_NOUSE,   ITEMCONTEXT_NOTINBATTLE
  6046. diff --git a/items/item_effects.asm b/items/item_effects.asm
  6047. index 9a529c9..d40fc85 100644
  6048. --- a/items/item_effects.asm
  6049. +++ b/items/item_effects.asm
  6050. @@ -512,7 +512,7 @@ endr
  6051.     cp BATTLETYPE_TUTORIAL
  6052.     jp z, .asm_ebd9
  6053.  
  6054. -   callba Function10607f
  6055. +   callba MobileFn_10607f
  6056.  
  6057.     ld hl, UnknownText_0xedc9
  6058.     call PrintText
  6059. @@ -550,7 +550,7 @@ endr
  6060.     jp z, .asm_ebd1
  6061.     cp BATTLETYPE_CELEBI
  6062.     jr nz, .asm_eac8
  6063. -   ld hl, wd0ee
  6064. +   ld hl, wBattleResult
  6065.     set 6, [hl]
  6066.  .asm_eac8
  6067.  
  6068. @@ -628,7 +628,7 @@ endr
  6069.     ld a, [sBoxCount]
  6070.     cp MONS_PER_BOX
  6071.     jr nz, .asm_eb5b
  6072. -   ld hl, wd0ee
  6073. +   ld hl, wBattleResult
  6074.     set 7, [hl]
  6075.  .asm_eb5b
  6076.     ld a, [CurItem]
  6077. @@ -2254,12 +2254,12 @@ Repel: ; f46a
  6078.  ; f46c
  6079.  
  6080.  Function_0xf46c: ; f46c
  6081. -   ld a, [wdca1]
  6082. +   ld a, [wRepelEffect]
  6083.     and a
  6084.     ld hl, UnknownText_0xf47d
  6085.     jp nz, PrintText
  6086.     ld a, b
  6087. -   ld [wdca1], a
  6088. +   ld [wRepelEffect], a
  6089.     jp Functionf789
  6090.  ; f47d
  6091.  
  6092. @@ -2285,10 +2285,10 @@ PokeDoll: ; f48f
  6093.     jr nz, .asm_f4a6
  6094.     inc a
  6095.     ld [wd232], a
  6096. -   ld a, [wd0ee]
  6097. +   ld a, [wBattleResult]
  6098.     and 3 << 6
  6099.     or $2
  6100. -   ld [wd0ee], a
  6101. +   ld [wBattleResult], a
  6102.     jp Functionf789
  6103.  
  6104.  .asm_f4a6
  6105. diff --git a/macros.asm b/macros.asm
  6106. index 147468c..b91fa2e 100644
  6107. --- a/macros.asm
  6108. +++ b/macros.asm
  6109. @@ -14,6 +14,7 @@ INCLUDE "macros/predef.asm"
  6110.  INCLUDE "macros/rst.asm"
  6111.  INCLUDE "macros/mobile.asm"
  6112.  INCLUDE "macros/trainer.asm"
  6113. +INCLUDE "macros/map_setup.asm"
  6114.  
  6115.  
  6116.  
  6117. @@ -90,12 +91,16 @@ lb: MACRO ; r, hi, lo
  6118.     ld \1, (\2) << 8 + (\3)
  6119.     ENDM
  6120.  
  6121. +ln: MACRO ; r, hi, lo
  6122. +   ld , (\2) << 4 + (\3)
  6123. +   ENDM
  6124.  
  6125.  bccoord equs "coord bc,"
  6126.  decoord equs "coord de,"
  6127.  hlcoord equs "coord hl,"
  6128.  
  6129.  coord: MACRO
  6130. +; register, x, y[, origin]
  6131.     if _NARG < 4
  6132.     ld \1, TileMap + SCREEN_WIDTH * (\3) + (\2)
  6133.     else
  6134. @@ -165,16 +170,4 @@ bcd: MACRO
  6135.     endr
  6136.  ENDM
  6137.  
  6138. -ln: MACRO
  6139. -   if _NARG == 5
  6140. -   lb , \2 << 4 + \3, \4 << 4 + \5
  6141. -   else
  6142. -   if _NARG == 3
  6143. -   ld , \2 << 4 + \3
  6144. -   else
  6145. -   fail "incorrect number of arguments for ln"
  6146. -   endc
  6147. -   endc
  6148. -ENDM
  6149. -
  6150.  tile EQUS "+ $10 *"
  6151. diff --git a/macros/map.asm b/macros/map.asm
  6152. index a9d3209..6133f30 100644
  6153. --- a/macros/map.asm
  6154. +++ b/macros/map.asm
  6155. @@ -18,8 +18,8 @@ ENDM
  6156.  
  6157.  person_event: macro
  6158.     db \1 ; sprite
  6159. -   db \2 ; y
  6160. -   db \3 ; x
  6161. +   db \2 + 4 ; y
  6162. +   db \3 + 4 ; x
  6163.     db \4 ; movement function
  6164.     dn \5, \6 ; radius: y, x
  6165.     db \7 ; clock_hour
  6166. diff --git a/main.asm b/main.asm
  6167. index b5cd9ea..5a3dfe1 100644
  6168. --- a/main.asm
  6169. +++ b/main.asm
  6170. @@ -117,7 +117,7 @@ Function5b44: ; 5b44
  6171.  
  6172.  MysteryGift: ; 5b54
  6173.     call UpdateTime
  6174. -   callba Function11548
  6175. +   callba DoMysteryGiftIfDayHasPassed
  6176.     callba DoMysteryGift
  6177.     ret
  6178.  ; 5b64
  6179. @@ -149,7 +149,7 @@ NewGame: ; 5b6b
  6180.  Function5b8f: ; 5b8f
  6181.     callba Function10632f
  6182.     jr c, .ok
  6183. -   callba Function48dcb
  6184. +   callba InitGender
  6185.     ret
  6186.  
  6187.  .ok
  6188. @@ -380,7 +380,7 @@ InitializeNPCNames: ; 5ce9
  6189.  InitializeWorld: ; 5d23
  6190.     call ShrinkPlayer
  6191.     callba GetSpawnCoord
  6192. -   callba Function113d6
  6193. +   callba _InitializeStartDay
  6194.     ret
  6195.  ; 5d33
  6196.  
  6197. @@ -3176,7 +3176,7 @@ Predef1: ; 747a
  6198.  SECTION "bank2", ROMX, BANK[$2]
  6199.  
  6200.  Function8000: ; 8000
  6201. -   call Function2ed3
  6202. +   call DisableSpriteUpdates
  6203.     xor a
  6204.     ld [hBGMapMode], a
  6205.     call WhiteBGMap
  6206. @@ -3195,26 +3195,26 @@ Function8000: ; 8000
  6207.  ; 8029
  6208.  
  6209.  GetSpawnCoord: ; 8029
  6210. -   ld a, $ff
  6211. +   ld a, -1
  6212.     ld [wd4cd], a
  6213.     ld [wd4ce], a
  6214.     ld a, $0
  6215.     ld hl, PlayerObjectTemplate
  6216.     call Function19a6
  6217.     ld b, $0
  6218. -   call Function808f
  6219. +   call PlayerSpawn_ConvertCoords
  6220.     ld a, $0
  6221.     call GetMapObject
  6222.     ld hl, MAPOBJECT_COLOR
  6223.     add hl, bc
  6224. -   ld e, $80
  6225. -   ld a, [wd45b]
  6226. +   ln e, (1 << 3) | PAL_OW_RED, $0
  6227. +   ld a, [wPlayerSpriteSetupFlags]
  6228.     bit 2, a
  6229.     jr nz, .ok
  6230.     ld a, [PlayerGender]
  6231.     bit 0, a
  6232.     jr z, .ok
  6233. -   ld e, (PAL_OW_BLUE << 4) | $80
  6234. +   ln e, (1 << 3) | PAL_OW_BLUE, $0
  6235.  
  6236.  .ok
  6237.     ld [hl], e
  6238. @@ -3234,11 +3234,10 @@ PlayerObjectTemplate: ; 8071
  6239.  ; A dummy map object used to initialize the player object.
  6240.  ; Shorter than the actual amount copied by two bytes.
  6241.  ; Said bytes seem to be unused.
  6242. -   person_event SPRITE_CHRIS, 0, 0, $0b, 15, 15, -1, -1, 0, 0, 0, $0000, -1
  6243. -   ; db $01, $00, $00, $0b, $ff, $ff, $ff, $00, $00, $00, $00, $ff, $ff
  6244. +   person_event SPRITE_CHRIS, -4, -4, $0b, 15, 15, -1, -1, 0, 0, 0, $0000, -1
  6245.  ; 807e
  6246.  
  6247. -Function807e:: ; 807e
  6248. +CopyDECoordsToMapObject:: ; 807e
  6249.     push de
  6250.     ld a, b
  6251.     call GetMapObject
  6252. @@ -3252,7 +3251,7 @@ Function807e:: ; 807e
  6253.     ret
  6254.  ; 808f
  6255.  
  6256. -Function808f: ; 808f
  6257. +PlayerSpawn_ConvertCoords: ; 808f
  6258.     push bc
  6259.     ld a, [XCoord]
  6260.     add 4
  6261. @@ -3261,7 +3260,7 @@ Function808f: ; 808f
  6262.     add 4
  6263.     ld e, a
  6264.     pop bc
  6265. -   call Function807e
  6266. +   call CopyDECoordsToMapObject
  6267.     ret
  6268.  ; 80a1
  6269.  
  6270. @@ -3278,7 +3277,7 @@ Function80a1:: ; 80a1
  6271.     ld e, [hl]
  6272.     ld a, [hConnectionStripLength]
  6273.     ld b, a
  6274. -   call Function807e
  6275. +   call CopyDECoordsToMapObject
  6276.     and a
  6277.     ret
  6278.  ; 80b8
  6279. @@ -4101,10 +4100,10 @@ CheckTime:: ; c000
  6280.  ; c012
  6281.  
  6282.  TimeOfDayTable: ; c012
  6283. -   db MORN, 1
  6284. -   db DAY,  2
  6285. -   db NITE, 4
  6286. -   db NITE, 4
  6287. +   db MORN, 1 << MORN
  6288. +   db DAY,  1 << DAY
  6289. +   db NITE, 1 << NITE
  6290. +   db NITE, 1 << NITE
  6291.     db -1
  6292.  ; c01b
  6293.  
  6294. @@ -5031,7 +5030,7 @@ UsedSurfScript: ; c986
  6295.  ; c9a2
  6296.  
  6297.  Functionc9a2: ; c9a2
  6298. -   callba Function1060bb ; empty
  6299. +   callba MobileFn_1060bb ; empty
  6300.     ret
  6301.  ; c9a9
  6302.  
  6303. @@ -5330,7 +5329,7 @@ CheckContinueWaterfall: ; cb38
  6304.     ld a, [StandingTile]
  6305.     call CheckWaterfallTile
  6306.     ret z
  6307. -   callba Function1060c1
  6308. +   callba MobileFn_1060c1
  6309.     ld a, $1
  6310.     ld [ScriptVar], a
  6311.     ret
  6312. @@ -6606,7 +6605,7 @@ _ReceiveItem:: ; d1d5
  6313.     push hl
  6314.     call CheckItemPocket
  6315.     pop de
  6316. -   ld a, [wd142]
  6317. +   ld a, [wItemAttributeParamBuffer]
  6318.     dec a
  6319.     ld hl, .Pockets
  6320.     rst JumpTable
  6321. @@ -6653,7 +6652,7 @@ _TossItem:: ; d20d
  6322.     push hl
  6323.     call CheckItemPocket
  6324.     pop de
  6325. -   ld a, [wd142]
  6326. +   ld a, [wItemAttributeParamBuffer]
  6327.     dec a
  6328.     ld hl, .Pockets
  6329.     rst JumpTable
  6330. @@ -6701,7 +6700,7 @@ _CheckItem:: ; d244
  6331.     push hl
  6332.     call CheckItemPocket
  6333.     pop de
  6334. -   ld a, [wd142]
  6335. +   ld a, [wItemAttributeParamBuffer]
  6336.     dec a
  6337.     ld hl, .Pockets
  6338.     rst JumpTable
  6339. @@ -7138,50 +7137,50 @@ GetNumberedTMHM: ; d417
  6340.  
  6341.  
  6342.  _CheckTossableItem:: ; d427
  6343. -; Return 1 in wd142 and carry if CurItem can't be removed from the bag.
  6344. +; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be removed from the bag.
  6345.     ld a, ITEMATTR_PERMISSIONS
  6346.     call GetItemAttr
  6347.     bit 7, a
  6348. -   jr nz, Functiond47f
  6349. +   jr nz, ItemAttr_ReturnCarry
  6350.     and a
  6351.     ret
  6352.  ; d432
  6353.  
  6354.  CheckSelectableItem: ; d432
  6355. -; Return 1 in wd142 and carry if CurItem can't be selected.
  6356. +; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be selected.
  6357.     ld a, ITEMATTR_PERMISSIONS
  6358.     call GetItemAttr
  6359.     bit 6, a
  6360. -   jr nz, Functiond47f
  6361. +   jr nz, ItemAttr_ReturnCarry
  6362.     and a
  6363.     ret
  6364.  ; d43d
  6365.  
  6366.  CheckItemPocket:: ; d43d
  6367. -; Return the pocket for CurItem in wd142.
  6368. +; Return the pocket for CurItem in wItemAttributeParamBuffer.
  6369.     ld a, ITEMATTR_POCKET
  6370.     call GetItemAttr
  6371.     and $f
  6372. -   ld [wd142], a
  6373. +   ld [wItemAttributeParamBuffer], a
  6374.     ret
  6375.  ; d448
  6376.  
  6377.  CheckItemContext: ; d448
  6378. -; Return the context for CurItem in wd142.
  6379. +; Return the context for CurItem in wItemAttributeParamBuffer.
  6380.     ld a, ITEMATTR_HELP
  6381.     call GetItemAttr
  6382.     and $f
  6383. -   ld [wd142], a
  6384. +   ld [wItemAttributeParamBuffer], a
  6385.     ret
  6386.  ; d453
  6387.  
  6388.  CheckItemMenu: ; d453
  6389. -; Return the menu for CurItem in wd142.
  6390. +; Return the menu for CurItem in wItemAttributeParamBuffer.
  6391.     ld a, ITEMATTR_HELP
  6392.     call GetItemAttr
  6393.     swap a
  6394.     and $f
  6395. -   ld [wd142], a
  6396. +   ld [wItemAttributeParamBuffer], a
  6397.     ret
  6398.  ; d460
  6399.  
  6400. @@ -7197,7 +7196,7 @@ GetItemAttr: ; d460
  6401.     add hl, bc
  6402.  
  6403.     xor a
  6404. -   ld [wd142], a
  6405. +   ld [wItemAttributeParamBuffer], a
  6406.  
  6407.     ld a, [CurItem]
  6408.     dec a
  6409. @@ -7212,9 +7211,9 @@ GetItemAttr: ; d460
  6410.     ret
  6411.  ; d47f
  6412.  
  6413. -Functiond47f: ; d47f
  6414. +ItemAttr_ReturnCarry: ; d47f
  6415.     ld a, 1
  6416. -   ld [wd142], a
  6417. +   ld [wItemAttributeParamBuffer], a
  6418.     scf
  6419.     ret
  6420.  ; d486
  6421. @@ -7311,7 +7310,7 @@ Functiond508: ; d508 (3:5508)
  6422.     ret
  6423.  
  6424.  Functiond509: ; d509 (3:5509)
  6425. -   callba Function10602e
  6426. +   callba MobileFn_10602e
  6427.     ret
  6428.  
  6429.  Functiond510: ; d510 (3:5510)
  6430. @@ -9504,14 +9503,14 @@ GivePoke:: ; e277
  6431.     push af
  6432.     ld a, [CurItem]
  6433.     and a
  6434. -   jr z, .asm_e2e1
  6435. +   jr z, .done
  6436.     ld a, [CurPartyMon]
  6437.     ld hl, PartyMon1Item
  6438.     ld bc, PartyMon2 - PartyMon1
  6439.     call AddNTimes
  6440.     ld a, [CurItem]
  6441.     ld [hl], a
  6442. -   jr .asm_e2e1
  6443. +   jr .done
  6444.  
  6445.  .failed
  6446.     ld a, [CurPartySpecies]
  6447. @@ -9532,11 +9531,11 @@ GivePoke:: ; e277
  6448.     push af
  6449.     ld a, [CurItem]
  6450.     and a
  6451. -   jr z, .asm_e2e1
  6452. +   jr z, .done
  6453.     ld a, [CurItem]
  6454.     ld [sBoxMon1Item], a
  6455.  
  6456. -.asm_e2e1
  6457. +.done
  6458.     ld a, [CurPartySpecies]
  6459.     ld [wd265], a
  6460.     ld [TempEnemyMonSpecies], a
  6461. @@ -9570,6 +9569,7 @@ endr
  6462.     push de
  6463.     push bc
  6464.     jr nz, .asm_e35e
  6465. +
  6466.     push hl
  6467.     ld a, [CurPartyMon]
  6468.     ld hl, PartyMonOT
  6469. @@ -9577,14 +9577,14 @@ endr
  6470.     ld d, h
  6471.     ld e, l
  6472.     pop hl
  6473. -.asm_e32f
  6474. +.otnameloop
  6475.     ld a, [ScriptBank]
  6476.     call GetFarByte
  6477.     ld [de], a
  6478.     inc hl
  6479.     inc de
  6480.     cp "@"
  6481. -   jr nz, .asm_e32f
  6482. +   jr nz, .otnameloop
  6483.     ld a, [ScriptBank]
  6484.     call GetFarByte
  6485.     ld b, a
  6486. @@ -9593,9 +9593,9 @@ endr
  6487.     ld hl, PartyMon1ID
  6488.     ld bc, PartyMon2 - PartyMon1
  6489.     call AddNTimes
  6490. -   ld a, $3
  6491. +   ld a, 01001 / $100
  6492.     ld [hli], a
  6493. -   ld [hl], $e9
  6494. +   ld [hl], 01001 % $100
  6495.     pop bc
  6496.     callba SetPkmnCaughtData
  6497.     jr .asm_e3b2
  6498. @@ -9610,7 +9610,7 @@ endr
  6499.     ld [de], a
  6500.     inc hl
  6501.     inc de
  6502. -   cp $50
  6503. +   cp "@"
  6504.     jr nz, .asm_e366
  6505.     ld a, [ScriptBank]
  6506.     call GetFarByte
  6507. @@ -9656,7 +9656,7 @@ endr
  6508.     call GetSRAMBank
  6509.     ld hl, wd050
  6510.     ld de, sBoxMonNicknames
  6511. -   ld bc, $000b
  6512. +   ld bc, PKMN_NAME_LENGTH
  6513.     call CopyBytes
  6514.     call CloseSRAM
  6515.     ld b, $1
  6516. @@ -9679,7 +9679,7 @@ TextJump_WasSentToBillsPC: ; 0xe3d9
  6517.  Functione3de: ; e3de
  6518.     push de
  6519.     call Function1d6e
  6520. -   call Function2ed3
  6521. +   call DisableSpriteUpdates
  6522.     pop de
  6523.     push de
  6524.     ld b, $0
  6525. @@ -9748,14 +9748,14 @@ Functione443: ; e443 (3:6443)
  6526.     call LoadMenuDataHeader
  6527.     ld a, $1
  6528.  .asm_e44b
  6529. -   ld [wcf88], a
  6530. +   ld [wPocketPointerLocationBuffer], a
  6531.     call Function32f9
  6532.     xor a
  6533.     ld [wcf76], a
  6534.     ld [hBGMapMode], a ; $ff00+$d4
  6535.     call Function1e5d
  6536.     jr c, .asm_e46b
  6537. -   ld a, [wcf88]
  6538. +   ld a, [wPocketPointerLocationBuffer]
  6539.     push af
  6540.     ld a, [MenuSelection]
  6541.     ld hl, Jumptable_e4ba
  6542. @@ -9953,7 +9953,7 @@ Functione583: ; e583 (3:6583)
  6543.     ret
  6544.  
  6545.  ClearPCItemScreen: ; e58b
  6546. -   call Function2ed3
  6547. +   call DisableSpriteUpdates
  6548.     xor a
  6549.     ld [hBGMapMode], a
  6550.     call WhiteBGMap
  6551. @@ -10425,7 +10425,7 @@ TMHMMoves: ; 1167a
  6552.  ; 116b7
  6553.  
  6554.  _NamingScreen: ; 0x116b7
  6555. -   call Function2ed3
  6556. +   call DisableSpriteUpdates
  6557.     call Function116c1
  6558.     call Function2b74
  6559.     ret
  6560. @@ -12260,7 +12260,7 @@ Function1250a: ; 1250a
  6561.  HalveMoney: ; 12513
  6562.  
  6563.  ; Empty function...
  6564. -   callba Function1060c7
  6565. +   callba MobileFn_1060c7
  6566.  
  6567.  ; Halve the player's money.
  6568.     ld hl, Money
  6569. @@ -12441,7 +12441,7 @@ StartMenu:: ; 125cd
  6570.     call LoadMenuDataHeader
  6571.     call .SetUpMenuItems
  6572.     ld a, [wd0d2]
  6573. -   ld [wcf88], a
  6574. +   ld [wPocketPointerLocationBuffer], a
  6575.     call .DrawMenuAccount_
  6576.     call MenuFunc_1e7f
  6577.     call .DrawBugContestStatusBox
  6578. @@ -12457,13 +12457,13 @@ StartMenu:: ; 125cd
  6579.     call UpdateTimePals
  6580.     call .SetUpMenuItems
  6581.     ld a, [wd0d2]
  6582. -   ld [wcf88], a
  6583. +   ld [wPocketPointerLocationBuffer], a
  6584.  
  6585.  .Select
  6586.     call .GetInput
  6587.     jr c, .Exit
  6588.     call .DrawMenuAccount
  6589. -   ld a, [wcf88]
  6590. +   ld a, [wPocketPointerLocationBuffer]
  6591.     ld [wd0d2], a
  6592.     call PlayClickSFX
  6593.     call Function1bee
  6594. @@ -12502,7 +12502,7 @@ endr
  6595.  .ReturnEnd
  6596.     call ExitMenu
  6597.  .ReturnEnd2
  6598. -   call Function2dcf
  6599. +   call LoadMoveSprites
  6600.     call UpdateTimePals
  6601.     ret
  6602.  
  6603. @@ -12534,15 +12534,15 @@ endr
  6604.  
  6605.  .ReturnFour ; 12691
  6606.     call ExitMenu
  6607. -   ld a, $80
  6608. -   ld [$ffa0], a
  6609. +   ld a, HMENURETURN_SCRIPT
  6610. +   ld [hMenuReturn], a
  6611.     ret
  6612.  ; 12699
  6613.  
  6614.  .ReturnThree ; 12699
  6615.     call ExitMenu
  6616. -   ld a, $80
  6617. -   ld [$ffa0], a
  6618. +   ld a, HMENURETURN_SCRIPT
  6619. +   ld [hMenuReturn], a
  6620.     jr .ReturnEnd2
  6621.  ; 126a2
  6622.  
  6623. @@ -13019,7 +13019,7 @@ Function129f4: ; 129f4
  6624.     push de
  6625.     call PartyMonItemName
  6626.     callba _CheckTossableItem
  6627. -   ld a, [wd142]
  6628. +   ld a, [wItemAttributeParamBuffer]
  6629.     and a
  6630.     jr nz, .asm_12a3f
  6631.     ld hl, UnknownText_0x12a45
  6632. @@ -13270,7 +13270,7 @@ Function12ba9: ; 12ba9
  6633.     jr z, .next
  6634.  
  6635.     call CheckTossableItem
  6636. -   ld a, [wd142]
  6637. +   ld a, [wItemAttributeParamBuffer]
  6638.     and a
  6639.     jr nz, .next
  6640.  
  6641. @@ -13683,7 +13683,7 @@ Function12e30: ; 12e30
  6642.     jr z, .asm_12e4c
  6643.     cp $0
  6644.     jr z, .asm_12e4f
  6645. -   callba Function1060b5
  6646. +   callba MobileFn_1060b5
  6647.     ld b, $4
  6648.     ld a, $2
  6649.     ret
  6650. @@ -14403,7 +14403,7 @@ SelectMenu:: ; 13327
  6651.     ld hl, ItemMayBeRegisteredText
  6652.     call MapTextbox
  6653.     call CloseText
  6654. -   jp Function2dcf
  6655. +   jp LoadMoveSprites
  6656.  ; 13340
  6657.  
  6658.  
  6659. @@ -14516,7 +14516,7 @@ endr
  6660.  UseRegisteredItem: ; 133c3
  6661.  
  6662.     callba CheckItemMenu
  6663. -   ld a, [wd142]
  6664. +   ld a, [wItemAttributeParamBuffer]
  6665.     ld hl, .SwitchTo
  6666.     rst JumpTable
  6667.     ret
  6668. @@ -14534,7 +14534,7 @@ UseRegisteredItem: ; 133c3
  6669.  .NoFunction ; 133df
  6670.     call LoadFont
  6671.     call CantUseItem
  6672. -   call Function2dcf
  6673. +   call LoadMoveSprites
  6674.     and a
  6675.     ret
  6676.  ; 133ea
  6677. @@ -14542,7 +14542,7 @@ UseRegisteredItem: ; 133c3
  6678.  .Current ; 133ea
  6679.     call LoadFont
  6680.     call DoItemEffect
  6681. -   call Function2dcf
  6682. +   call LoadMoveSprites
  6683.     and a
  6684.     ret
  6685.  ; 133f5
  6686. @@ -14552,7 +14552,7 @@ UseRegisteredItem: ; 133c3
  6687.     call FadeToMenu
  6688.     call DoItemEffect
  6689.     call Function2b3c
  6690. -   call Function2dcf
  6691. +   call LoadMoveSprites
  6692.     and a
  6693.     ret
  6694.  ; 13406
  6695. @@ -14566,19 +14566,19 @@ UseRegisteredItem: ; 133c3
  6696.     ld [wd0ef], a
  6697.     ld a, [wd0ec]
  6698.     cp 1
  6699. -   jr nz, .asm_13425
  6700. +   jr nz, ._cantuse
  6701.     scf
  6702. -   ld a, $80
  6703. -   ld [$ffa0], a
  6704. +   ld a, HMENURETURN_SCRIPT
  6705. +   ld [hMenuReturn], a
  6706.     ret
  6707.  ; 13422
  6708.  
  6709.  .CantUse ; 13422
  6710.     call ResetWindow
  6711.  
  6712. -.asm_13425
  6713. +._cantuse
  6714.     call CantUseItem
  6715. -   call Function2dcf
  6716. +   call LoadMoveSprites
  6717.     and a
  6718.     ret
  6719.  ; 1342d
  6720. @@ -14878,7 +14878,7 @@ Special_GiveParkBalls: ; 135db
  6721.     ld [wContestMon], a
  6722.     ld a, 20
  6723.     ld [wdc79], a
  6724. -   callba Function11490
  6725. +   callba StartBugContestTimer
  6726.     ret
  6727.  ; 135eb
  6728.  
  6729. @@ -15027,7 +15027,7 @@ Script_JumpStdFromRAM: ; 0x1369a
  6730.  
  6731.  _BugContestJudging: ; 1369d
  6732.     call ContestScore
  6733. -   callba Function105f79
  6734. +   callba MobileFn_105f79
  6735.     call Function13819
  6736.     ld a, [wd00a]
  6737.     call LoadContestantName
  6738. @@ -16072,11 +16072,13 @@ Function1409b: ; 1409b
  6739.  Function140ae: ; 140ae
  6740.     call Function6e3
  6741.     ld c, a
  6742. -   and $c0
  6743. +   and %11000000
  6744.     jr nz, .asm_140c8
  6745. +
  6746.     ld a, c
  6747. -   and $20
  6748. +   and %00100000
  6749.     jr z, .asm_140eb
  6750. +
  6751.     call UpdateTime
  6752.     ld a, [wRTC + 0]
  6753.     ld b, a
  6754. @@ -16085,7 +16087,7 @@ Function140ae: ; 140ae
  6755.     jr c, .asm_140eb
  6756.  
  6757.  .asm_140c8
  6758. -   callba Function113da
  6759. +   callba ClearDailyTimers
  6760.     callba Function170923
  6761.     ld a, $5
  6762.     call GetSRAMBank
  6763. @@ -16218,7 +16220,7 @@ GetPlayerSprite: ; 14183
  6764.  ; Get Chris or Kris's sprite.
  6765.  
  6766.     ld hl, .Chris
  6767. -   ld a, [wd45b]
  6768. +   ld a, [wPlayerSpriteSetupFlags]
  6769.     bit 2, a
  6770.     jr nz, .go
  6771.     ld a, [PlayerGender]
  6772. @@ -18104,7 +18106,7 @@ KrisWithdrawItemMenu: ; 0x157d1
  6773.  Function157e9: ; 0x157e9
  6774.     ; check if the item has a quantity
  6775.     callba _CheckTossableItem
  6776. -   ld a, [wd142]
  6777. +   ld a, [wItemAttributeParamBuffer]
  6778.     and a
  6779.     jr z, .askquantity
  6780.  
  6781. @@ -18202,7 +18204,7 @@ KrisLogOffMenu: ; 0x15888
  6782.  KrisDepositItemMenu: ; 0x1588b
  6783.     call Function158b8
  6784.     jr c, .asm_158b6
  6785. -   call Function2ed3
  6786. +   call DisableSpriteUpdates
  6787.     call Function1d6e
  6788.     callba Function106a5
  6789.  .asm_1589c
  6790. @@ -18244,26 +18246,27 @@ Function158cc: ; 0x158cc
  6791.     ld a, $0
  6792.     ld [wc2ce], a
  6793.     callba CheckItemMenu
  6794. -   ld a, [wd142]
  6795. -   ld hl, Jumptable_158e7
  6796. +   ld a, [wItemAttributeParamBuffer]
  6797. +   ld hl, .jumptable
  6798.     rst JumpTable
  6799.     pop af
  6800.     ld [wc2ce], a
  6801.     ret
  6802.  ; 0x158e7
  6803.  
  6804. -Jumptable_158e7: ; 0x158e7
  6805. -   dw .jump2
  6806. -   dw .jump1
  6807. -   dw .jump1
  6808. -   dw .jump1
  6809. -   dw .jump2
  6810. -   dw .jump2
  6811. -   dw .jump2
  6812. +.jumptable: ; 0x158e7
  6813. +   dw .maybe_use
  6814. +   dw .no_use
  6815. +   dw .no_use
  6816. +   dw .no_use
  6817. +   dw .maybe_use
  6818. +   dw .maybe_use
  6819. +   dw .maybe_use
  6820.  
  6821. -.jump1:
  6822. +.no_use:
  6823.     ret
  6824. -.jump2:
  6825. +
  6826. +.maybe_use:
  6827.     ld a, [Buffer1]
  6828.     push af
  6829.     ld a, [Buffer2]
  6830. @@ -18278,7 +18281,7 @@ Jumptable_158e7: ; 0x158e7
  6831.  
  6832.  Function1590a: ; 0x1590a
  6833.     callba _CheckTossableItem
  6834. -   ld a, [wd142]
  6835. +   ld a, [wItemAttributeParamBuffer]
  6836.     and a
  6837.     jr z, .asm_1591d
  6838.     ld a, $1
  6839. @@ -18360,7 +18363,7 @@ Function15985: ; 0x15985
  6840.     ld c, $12
  6841.     call TextBox
  6842.     ld a, [wd0d7]
  6843. -   ld [wcf88], a
  6844. +   ld [wPocketPointerLocationBuffer], a
  6845.     ld a, [wd0dd]
  6846.     ld [wd0e4], a
  6847.     call Function350c
  6848. @@ -18936,7 +18939,7 @@ Function15cef: ; 15cef
  6849.     ld hl, MenuDataHeader_0x15e18
  6850.     call CopyMenuDataHeader
  6851.     ld a, [WalkingX]
  6852. -   ld [wcf88], a
  6853. +   ld [wPocketPointerLocationBuffer], a
  6854.     ld a, [WalkingY]
  6855.     ld [wd0e4], a
  6856.     call Function350c
  6857. @@ -19269,7 +19272,7 @@ UnknownText_0x15eae: ; 0x15eae
  6858.  
  6859.  
  6860.  Function15eb3: ; 15eb3
  6861. -   call Function2ed3
  6862. +   call DisableSpriteUpdates
  6863.     callba Function106a5
  6864.  .asm_15ebc
  6865.     callba Function106be
  6866. @@ -19302,30 +19305,30 @@ UnknownText_0x15edb: ; 0x15edb
  6867.  
  6868.  Function15ee0: ; 15ee0
  6869.     callba CheckItemMenu
  6870. -   ld a, [wd142]
  6871. -   ld hl, Jumptable_15eee
  6872. +   ld a, [wItemAttributeParamBuffer]
  6873. +   ld hl, .jumptable
  6874.     rst JumpTable
  6875.     ret
  6876.  ; 15eee
  6877.  
  6878. -Jumptable_15eee: ; 15eee
  6879. -   dw Function15efd
  6880. -   dw Function15efc
  6881. -   dw Function15efc
  6882. -   dw Function15efc
  6883. -   dw Function15efd
  6884. -   dw Function15efd
  6885. -   dw Function15efd
  6886. +.jumptable: ; 15eee
  6887. +   dw .maybe_use
  6888. +   dw .no_use
  6889. +   dw .no_use
  6890. +   dw .no_use
  6891. +   dw .maybe_use
  6892. +   dw .maybe_use
  6893. +   dw .maybe_use
  6894.  ; 15efc
  6895.  
  6896. -Function15efc: ; 15efc
  6897. +.no_use: ; 15efc
  6898.     ret
  6899.  ; 15efd
  6900.  
  6901.  
  6902. -Function15efd: ; 15efd
  6903. +.maybe_use: ; 15efd
  6904.     callba _CheckTossableItem
  6905. -   ld a, [wd142]
  6906. +   ld a, [wItemAttributeParamBuffer]
  6907.     and a
  6908.     jr z, .asm_15f11
  6909.     ld hl, UnknownText_0x15faf
  6910. @@ -20690,7 +20693,7 @@ Function16dc7: ; 16dc7
  6911.     jr z, .asm_16dfd
  6912.     ld hl, UnknownText_0x16e09
  6913.     call PrintText
  6914. -   call Function2ed3
  6915. +   call DisableSpriteUpdates
  6916.     callba Function8461a
  6917.     call Function2b74
  6918.     ld a, [$ffac]
  6919. @@ -20907,7 +20910,7 @@ Function16ed6: ; 16ed6
  6920.     ret
  6921.  ; 16f3e
  6922.  
  6923. -Function16f3e:: ; 16f3e
  6924. +DoEggStep:: ; 16f3e
  6925.     ld de, PartySpecies
  6926.     ld hl, PartyMon1Happiness
  6927.     ld c, 0
  6928. @@ -20938,7 +20941,7 @@ OverworldHatchEgg:: ; 16f5e
  6929.     call Function16f70
  6930.     call Function2b4d
  6931.     call RestartMapMusic
  6932. -   jp Function2dcf
  6933. +   jp LoadMoveSprites
  6934.  ; 16f70
  6935.  
  6936.  Function16f70: ; 16f70 (5:6f70)
  6937. @@ -20964,7 +20967,7 @@ Function16f7a: ; 16f7a (5:6f7a)
  6938.     push de
  6939.  
  6940.     callba Function4dbb8
  6941. -   callba Function10608d
  6942. +   callba MobileFn_10608d
  6943.     ld a, [CurPartyMon]
  6944.     ld hl, PartyMons ; wdcdf (aliases: PartyMon1, PartyMon1Species)
  6945.     ld bc, PartyMon2 - PartyMon1
  6946. @@ -22049,7 +22052,7 @@ Function2403c:: ; 2403c
  6947.     ld c, a
  6948.     ld a, [wcfa3]
  6949.     call SimpleMultiply
  6950. -   ld [wcf88], a
  6951. +   ld [wPocketPointerLocationBuffer], a
  6952.     and a
  6953.     ret
  6954.  ; 24085
  6955. @@ -22094,7 +22097,7 @@ Function24098: ; 24098
  6956.     ld c, a
  6957.     ld a, [wcfaa]
  6958.     add c
  6959. -   ld [wcf88], a
  6960. +   ld [wPocketPointerLocationBuffer], a
  6961.     and a
  6962.     ret
  6963.  
  6964. @@ -22180,7 +22183,7 @@ Function2411a: ; 2411a (9:411a)
  6965.     call Function24193
  6966.     ld a, [wcfa4]
  6967.     ld e, a
  6968. -   ld a, [wcf88]
  6969. +   ld a, [wPocketPointerLocationBuffer]
  6970.     ld b, a
  6971.     xor a
  6972.     ld d, $0
  6973. @@ -22583,7 +22586,7 @@ Function24329: ; 24329
  6974.     ret
  6975.  ; 24374
  6976.  
  6977. -Function24374:: ; 24374
  6978. +_BackUpTiles:: ; 24374
  6979.     ld a, [rSVBK]
  6980.     push af
  6981.     ld a, $7
  6982. @@ -22594,9 +22597,9 @@ Function24374:: ; 24374
  6983.     inc hl
  6984.     ld d, [hl]
  6985.     push de
  6986. +
  6987.     ld b, $10
  6988.     ld hl, wcf81
  6989. -
  6990.  .loop
  6991.     ld a, [hli]
  6992.     ld [de], a
  6993. @@ -22604,6 +22607,9 @@ Function24374:: ; 24374
  6994.     dec b
  6995.     jr nz, .loop
  6996.  
  6997. +; If bit 6 or 7 of the menu flags is set, set bit 0 of the address
  6998. +; at 7:[wcf71], and draw the menu using the coordinates from the header.
  6999. +; Otherwise, reset bit 0 of 7:[wcf71].
  7000.     ld a, [wcf81]
  7001.     bit 6, a
  7002.     jr nz, .bit_6
  7003. @@ -22617,13 +22623,13 @@ Function24374:: ; 24374
  7004.     ld l, a
  7005.     set 0, [hl]
  7006.     call GetMemTileCoord
  7007. -   call Function243cd
  7008. -   call Function1d19
  7009. -   call Function243cd
  7010. +   call .copy
  7011. +   call GetMemAttrCoord
  7012. +   call .copy
  7013.     jr .done
  7014.  
  7015.  .not_bit_7
  7016. -   pop hl
  7017. +   pop hl ; last-pushed register was de
  7018.     push hl
  7019.     ld a, [hld]
  7020.     ld l, [hl]
  7021. @@ -22632,7 +22638,7 @@ Function24374:: ; 24374
  7022.  
  7023.  .done
  7024.     pop hl
  7025. -   call Function243e7
  7026. +   call .ret ; empty function
  7027.     ld a, h
  7028.     ld [de], a
  7029.     dec de
  7030. @@ -22651,30 +22657,34 @@ Function24374:: ; 24374
  7031.     ret
  7032.  ; 243cd
  7033.  
  7034. -Function243cd: ; 243cd
  7035. -   call Function1c53
  7036. +.copy: ; 243cd
  7037. +   call GetMenuBoxDims
  7038.     inc b
  7039.     inc c
  7040. -   call Function243e7
  7041. -.asm_243d5
  7042. +   call .ret ; empty function
  7043. +
  7044. +.row
  7045.     push bc
  7046.     push hl
  7047. -.asm_243d7
  7048. +
  7049. +.col
  7050.     ld a, [hli]
  7051.     ld [de], a
  7052.     dec de
  7053.     dec c
  7054. -   jr nz, .asm_243d7
  7055. +   jr nz, .col
  7056. +
  7057.     pop hl
  7058.     ld bc, SCREEN_WIDTH
  7059.     add hl, bc
  7060.     pop bc
  7061.     dec b
  7062. -   jr nz, .asm_243d5
  7063. +   jr nz, .row
  7064. +
  7065.     ret
  7066.  ; 243e7
  7067.  
  7068. -Function243e7: ; 243e7
  7069. +.ret: ; 243e7
  7070.     ret
  7071.  ; 243e8
  7072.  
  7073. @@ -22699,7 +22709,7 @@ Function243e8:: ; 243e8
  7074.     jr z, .next
  7075.     ld d, h
  7076.     ld e, l
  7077. -   call Function1c23
  7078. +   call RestoreTileBackup
  7079.  
  7080.  .next
  7081.     call Function1c7e
  7082. @@ -22768,7 +22778,7 @@ Function2446d:: ; 2446d
  7083.     ld a, [wcf91]
  7084.     ld b, a
  7085.     ld hl, wcfa1
  7086. -   ld a, [wcf82]
  7087. +   ld a, [wMenuBorderTopCoord]
  7088.     inc a
  7089.     bit 6, b
  7090.     jr nz, .asm_2447d
  7091. @@ -22776,7 +22786,7 @@ Function2446d:: ; 2446d
  7092.  
  7093.  .asm_2447d
  7094.     ld [hli], a
  7095. -   ld a, [wcf83]
  7096. +   ld a, [wMenuBorderLeftCoord]
  7097.     inc a
  7098.     ld [hli], a
  7099.     ld a, [wcf92]
  7100. @@ -22807,7 +22817,7 @@ Function2446d:: ; 2446d
  7101.  
  7102.  .asm_244a9
  7103.     ld [hli], a
  7104. -   ld a, [wcf88]
  7105. +   ld a, [wPocketPointerLocationBuffer]
  7106.     and a
  7107.     jr z, .asm_244b7
  7108.     ld c, a
  7109. @@ -22835,11 +22845,11 @@ Function244c3: ; 0x244c3
  7110.     ld a, [MenuSelection]
  7111.     ld [CurSpecies], a
  7112.     hlcoord 0, 12
  7113. -   ld b, $4
  7114. -   ld c, $12
  7115. +   ld b, 4
  7116. +   ld c, SCREEN_WIDTH - 2
  7117.     call TextBox
  7118.     ld a, [MenuSelection]
  7119. -   cp $ff
  7120. +   cp -1
  7121.     ret z
  7122.     decoord 1, 14
  7123.     callba PrintItemDescription
  7124. @@ -22861,10 +22871,10 @@ Pokepic:: ; 244e3
  7125.     call GetBaseData
  7126.     ld de, VTiles1
  7127.     predef GetFrontpic
  7128. -   ld a, [wcf82]
  7129. +   ld a, [wMenuBorderTopCoord]
  7130.     inc a
  7131.     ld b, a
  7132. -   ld a, [wcf83]
  7133. +   ld a, [wMenuBorderLeftCoord]
  7134.     inc a
  7135.     ld c, a
  7136.     call GetTileCoord
  7137. @@ -23185,18 +23195,19 @@ Function246fc: ; 246fc
  7138.  
  7139.  Function24706: ; 24706 (9:4706)
  7140.     call GetMemTileCoord
  7141. -   ld de, $14
  7142. +   ld de, SCREEN_WIDTH
  7143.     add hl, de
  7144. -   ld de, $28
  7145. +   ld de, 2 * SCREEN_WIDTH
  7146.     ld a, [wcf92]
  7147.  .asm_24713
  7148. -   ld [hl], $7f
  7149. +   ld [hl], " "
  7150.     add hl, de
  7151.     dec a
  7152.     jr nz, .asm_24713
  7153.     ret
  7154.  
  7155.  Function2471a: ; 2471a
  7156. +; Get the value of (wcf95):(wcf96,wcf97) and store it in wd144.
  7157.     ld hl, wcf96
  7158.     ld a, [hli]
  7159.     ld h, [hl]
  7160. @@ -23204,30 +23215,33 @@ Function2471a: ; 2471a
  7161.     ld a, [wcf95]
  7162.     call GetFarByte
  7163.     ld [wd144], a
  7164. +; Store [wcf92] + [wd0e4] in c
  7165.     ld a, [wcf92]
  7166.     ld c, a
  7167.     ld a, [wd0e4]
  7168.     add c
  7169.     ld c, a
  7170. +; If [wd144] > c, skip this next part.
  7171.     ld a, [wd144]
  7172.     inc a
  7173.     cp c
  7174. -   jr nc, .asm_24748
  7175. +   jr nc, .skip
  7176. +; If [wd144] > [wcf92], store ([wd144] - [wcf92]) in [wd0e4].  Else, store 0 in [wd0e4].
  7177.     ld a, [wcf92]
  7178.     ld c, a
  7179.     ld a, [wd144]
  7180.     inc a
  7181.     sub c
  7182. -   jr nc, .asm_24745
  7183. +   jr nc, .store
  7184.     xor a
  7185.  
  7186. -.asm_24745
  7187. +.store
  7188.     ld [wd0e4], a
  7189.  
  7190. -.asm_24748
  7191. +.skip
  7192.     ld a, [wd0e4]
  7193.     ld c, a
  7194. -   ld a, [wcf88]
  7195. +   ld a, [wPocketPointerLocationBuffer]
  7196.     add c
  7197.     ld b, a
  7198.     ld a, [wd144]
  7199. @@ -23240,7 +23254,7 @@ Function2471a: ; 2471a
  7200.     xor a
  7201.     ld [wd0e4], a
  7202.     ld a, $1
  7203. -   ld [wcf88], a
  7204. +   ld [wPocketPointerLocationBuffer], a
  7205.  
  7206.  .asm_24763
  7207.     ret
  7208. @@ -23251,10 +23265,10 @@ Function24764: ; 24764
  7209.     ld c, a
  7210.     ld a, [wd144]
  7211.     ld b, a
  7212. -   ld a, [wcf82]
  7213. +   ld a, [wMenuBorderTopCoord]
  7214.     add $1
  7215.     ld [wcfa1], a
  7216. -   ld a, [wcf83]
  7217. +   ld a, [wMenuBorderLeftCoord]
  7218.     add $0
  7219.     ld [wcfa2], a
  7220.     ld a, [wcf92]
  7221. @@ -23298,7 +23312,7 @@ Function24764: ; 24764
  7222.     ld [wcfa8], a
  7223.     ld a, [wcfa3]
  7224.     ld b, a
  7225. -   ld a, [wcf88]
  7226. +   ld a, [wPocketPointerLocationBuffer]
  7227.     and a
  7228.     jr z, .asm_247c8
  7229.     cp b
  7230. @@ -23343,9 +23357,9 @@ Function247f0: ; 247f0
  7231.     ld a, [wd0e4]
  7232.     and a
  7233.     jr z, .asm_2480d
  7234. -   ld a, [wcf82]
  7235. +   ld a, [wMenuBorderTopCoord]
  7236.     ld b, a
  7237. -   ld a, [wcf85]
  7238. +   ld a, [wMenuBorderRightCoord]
  7239.     ld c, a
  7240.     call GetTileCoord
  7241.     ld [hl], $61
  7242. @@ -23380,9 +23394,9 @@ Function247f0: ; 247f0
  7243.     ld a, [wcf91]
  7244.     bit 4, a
  7245.     jr z, .asm_24850
  7246. -   ld a, [wcf84]
  7247. +   ld a, [wMenuBorderBottomCoord]
  7248.     ld b, a
  7249. -   ld a, [wcf85]
  7250. +   ld a, [wMenuBorderRightCoord]
  7251.     ld c, a
  7252.     call GetTileCoord
  7253.     ld [hl], $ee
  7254. @@ -23449,10 +23463,10 @@ Function2488b: ; 2488b
  7255.     add a
  7256.     add $1
  7257.     ld c, a
  7258. -   ld a, [wcf82]
  7259. +   ld a, [wMenuBorderTopCoord]
  7260.     add c
  7261.     ld b, a
  7262. -   ld a, [wcf83]
  7263. +   ld a, [wMenuBorderLeftCoord]
  7264.     add $0
  7265.     ld c, a
  7266.     call GetTileCoord
  7267. @@ -23799,7 +23813,7 @@ PlaceMenuItemQuantity: ; 0x24ac3
  7268.     ld a, [MenuSelection]
  7269.     ld [CurItem], a
  7270.     callba _CheckTossableItem
  7271. -   ld a, [wd142]
  7272. +   ld a, [wItemAttributeParamBuffer]
  7273.     pop hl
  7274.     and a
  7275.     jr nz, .done
  7276. @@ -24138,10 +24152,10 @@ Function24d47: ; 24d47
  7277.     inc a
  7278.     add a
  7279.     ld b, a
  7280. -   ld a, [wcf84]
  7281. +   ld a, [wMenuBorderBottomCoord]
  7282.     sub b
  7283.     inc a
  7284. -   ld [wcf82], a
  7285. +   ld [wMenuBorderTopCoord], a
  7286.     call Function1cbb
  7287.     ret
  7288.  ; 24d59
  7289. @@ -24416,9 +24430,9 @@ LoadBattleMenu: ; 24ef2
  7290.     ld hl, BattleMenuDataHeader
  7291.     call LoadMenuDataHeader
  7292.     ld a, [wd0d2]
  7293. -   ld [wcf88], a
  7294. +   ld [wPocketPointerLocationBuffer], a
  7295.     call Function2039
  7296. -   ld a, [wcf88]
  7297. +   ld a, [wPocketPointerLocationBuffer]
  7298.     ld [wd0d2], a
  7299.     call ExitMenu
  7300.     ret
  7301. @@ -24439,9 +24453,9 @@ ContestBattleMenu: ; 24f13
  7302.  
  7303.  Function24f19: ; 24f19
  7304.     ld a, [wd0d2]
  7305. -   ld [wcf88], a
  7306. +   ld [wPocketPointerLocationBuffer], a
  7307.     call InterpretMenu
  7308. -   ld a, [wcf88]
  7309. +   ld a, [wPocketPointerLocationBuffer]
  7310.     ld [wd0d2], a
  7311.     call ExitMenu
  7312.     ret
  7313. @@ -25681,7 +25695,7 @@ _KrisDecorationMenu: ; 0x2675c
  7314.     ld [wd1ef], a
  7315.  .asm_2676f
  7316.     ld a, [wd1ef]
  7317. -   ld [wcf88], a
  7318. +   ld [wPocketPointerLocationBuffer], a
  7319.     call Function26806
  7320.     call Function1e5d
  7321.     ld a, [wcfa9]
  7322. @@ -29175,7 +29189,7 @@ Function28b87: ; 28b87
  7323.  
  7324.  .asm_28e63
  7325.     callba Function14a58
  7326. -   callba Function1060af
  7327. +   callba MobileFn_1060af
  7328.     callba Function106187
  7329.     ld c, $28
  7330.     call DelayFrames
  7331. @@ -31228,9 +31242,9 @@ Special_CheckBothSelectedSameRoom: ; 29e82
  7332.  Special_TimeCapsule: ; 29eaf
  7333.     ld a, LINK_TIMECAPSULE
  7334.     ld [wLinkMode], a
  7335. -   call Function2ed3
  7336. +   call DisableSpriteUpdates
  7337.     callab LinkCommunications
  7338. -   call Function2ee4
  7339. +   call EnableSpriteUpdates
  7340.     xor a
  7341.     ld [hVBlank], a
  7342.     ret
  7343. @@ -31239,9 +31253,9 @@ Special_TimeCapsule: ; 29eaf
  7344.  Special_TradeCenter: ; 29ec4
  7345.     ld a, LINK_TRADECENTER
  7346.     ld [wLinkMode], a
  7347. -   call Function2ed3
  7348. +   call DisableSpriteUpdates
  7349.     callab LinkCommunications
  7350. -   call Function2ee4
  7351. +   call EnableSpriteUpdates
  7352.     xor a
  7353.     ld [hVBlank], a
  7354.     ret
  7355. @@ -31250,9 +31264,9 @@ Special_TradeCenter: ; 29ec4
  7356.  Special_Colosseum: ; 29ed9
  7357.     ld a, LINK_COLOSSEUM
  7358.     ld [wLinkMode], a
  7359. -   call Function2ed3
  7360. +   call DisableSpriteUpdates
  7361.     callab LinkCommunications
  7362. -   call Function2ee4
  7363. +   call EnableSpriteUpdates
  7364.     xor a
  7365.     ld [hVBlank], a
  7366.     ret
  7367. @@ -31723,7 +31737,7 @@ endr
  7368.  
  7369.  CheckRepelEffect:: ; 2a1df
  7370.  ; If there is no active Repel, there's no need to be here.
  7371. -   ld a, [wdca1]
  7372. +   ld a, [wRepelEffect]
  7373.     and a
  7374.     jr z, .encounter
  7375.  ; Get the first Pokemon in your party that isn't fainted.
  7376. @@ -32446,23 +32460,23 @@ Function2b930: ; 2b930
  7377.     jr nc, .asm_2b97f
  7378.  
  7379.  .asm_2b976
  7380. -   ld a, [wd0ee]
  7381. +   ld a, [wBattleResult]
  7382.     and $f0
  7383. -   ld [wd0ee], a
  7384. +   ld [wBattleResult], a
  7385.     ret
  7386.  
  7387.  .asm_2b97f
  7388. -   ld a, [wd0ee]
  7389. +   ld a, [wBattleResult]
  7390.     and $f0
  7391.     add $1
  7392. -   ld [wd0ee], a
  7393. +   ld [wBattleResult], a
  7394.     ret
  7395.  
  7396.  .asm_2b98a
  7397. -   ld a, [wd0ee]
  7398. +   ld a, [wBattleResult]
  7399.     and $f0
  7400.     add $2
  7401. -   ld [wd0ee], a
  7402. +   ld [wBattleResult], a
  7403.     ret
  7404.  ; 2b995
  7405.  
  7406. @@ -32829,7 +32843,7 @@ GFX_2c172: ; 2c172
  7407.  INCBIN "gfx/battle/balls.2bpp"
  7408.  ; 2c1b2
  7409.  
  7410. -Function2c1b2: ; 2c1b2
  7411. +_ShowLinkBattleParticipants: ; 2c1b2
  7412.     call WhiteBGMap
  7413.     call Functione5f
  7414.     hlcoord 2, 3
  7415. @@ -33510,7 +33524,7 @@ Function2c867: ; 2c867
  7416.     and a
  7417.     jr z, .nope
  7418.  
  7419. -   callba Function106049
  7420. +   callba MobileFn_106049
  7421.     ld a, [CurItem]
  7422.     call IsHM
  7423.     ret c
  7424. @@ -33583,7 +33597,7 @@ Function2c8d3: ; 2c8d3 (b:48d3)
  7425.     ld [wcfa7], a
  7426.     ld a, $f3
  7427.     ld [wcfa8], a
  7428. -   ld a, [wd0dc]
  7429. +   ld a, [wTMHMPocketPointerLocation]
  7430.     inc a
  7431.     ld [wcfa9], a
  7432.     ld a, $1
  7433. @@ -33596,7 +33610,7 @@ Function2c915: ; 2c915 (b:4915)
  7434.     ld b, a
  7435.     ld a, [wcfa9]
  7436.     dec a
  7437. -   ld [wd0dc], a
  7438. +   ld [wTMHMPocketPointerLocation], a
  7439.     xor a
  7440.     ld [hBGMapMode], a ; $ff00+$d4
  7441.     ld a, [wcfa6]
  7442. @@ -34117,14 +34131,14 @@ ConvertBerriesToBerryJuice: ; 2ede6
  7443.     ret
  7444.  ; 2ee18
  7445.  
  7446. -Function2ee18: ; 2ee18
  7447. +ShowLinkBattleParticipants: ; 2ee18
  7448.  ; If we're not in a communications room,
  7449.  ; we don't need to be here.
  7450.     ld a, [wLinkMode]
  7451.     and a
  7452.     ret z
  7453.  
  7454. -   callba Function2c1b2
  7455. +   callba _ShowLinkBattleParticipants
  7456.     ld c, 150
  7457.     call DelayFrames
  7458.     call ClearTileMap
  7459. @@ -34133,7 +34147,7 @@ Function2ee18: ; 2ee18
  7460.  ; 2ee2f
  7461.  
  7462.  
  7463. -Function2ee2f: ; 2ee2f
  7464. +FindFirstAliveMon: ; 2ee2f
  7465.     xor a
  7466.     ld [$ffde], a
  7467.     call DelayFrame
  7468. @@ -34275,7 +34289,7 @@ PlayBattleMusic: ; 2ee6c
  7469.  ClearBattleRAM: ; 2ef18
  7470.     xor a
  7471.     ld [wd0ec], a
  7472. -   ld [wd0ee], a
  7473. +   ld [wBattleResult], a
  7474.  
  7475.     ld hl, wd0d8
  7476.  rept 3
  7477. @@ -34441,7 +34455,7 @@ Function39550: ; 39550
  7478.     ld hl, StringBuffer1
  7479.  
  7480.  .ok
  7481. -   ld bc, $000d
  7482. +   ld bc, TRAINER_CLASS_NAME_LENGTH
  7483.     ld de, OTName
  7484.     push de
  7485.     call CopyBytes
  7486. @@ -34456,7 +34470,7 @@ Function3957b: ; 3957b
  7487.     ld a, [TrainerClass]
  7488.     dec a
  7489.     ld hl, TrainerClassAttributes
  7490. -   ld bc, 7
  7491. +   ld bc, NUM_TRAINER_ATTRIBUTES
  7492.     call AddNTimes
  7493.     ld de, wc650
  7494.     ld a, [hli]
  7495. @@ -35210,7 +35224,7 @@ endr
  7496.     push hl
  7497.     ld hl, UnknownText_0x42478
  7498.     call PrintTextBoxText
  7499. -   callba Function106094
  7500. +   callba MobileFn_106094
  7501.  
  7502.     ld de, MUSIC_NONE
  7503.     call PlayMusic
  7504. @@ -36554,7 +36568,7 @@ Function44806: ; 0x44806
  7505.     call Function352f
  7506.     call UpdateSprites
  7507.     ld a, [wd0f1]
  7508. -   ld [wcf88], a
  7509. +   ld [wPocketPointerLocationBuffer], a
  7510.     ld a, [OBPals + 8 * 6]
  7511.     ld [wd0e4], a
  7512.     call Function350c
  7513. @@ -36760,6 +36774,7 @@ Function48000: ; 48000
  7514.     ld [wd478], a
  7515.     ld [DefaultFlypoint], a
  7516.     ld [wd003], a
  7517. +   ; could have done "ld a, [wd479] \ and -4", saved four operations
  7518.     ld a, [wd479]
  7519.     res 0, a
  7520.     ld [wd479], a
  7521. @@ -37072,7 +37087,7 @@ asm_4828d: ; 4828d (12:428d)
  7522.     call WaitBGMap
  7523.     ld a, [PlayerGender]
  7524.     inc a
  7525. -   ld [wcf88], a
  7526. +   ld [wPocketPointerLocationBuffer], a
  7527.     call Function1bc9
  7528.     call PlayClickSFX
  7529.     call ExitMenu
  7530. @@ -37116,7 +37131,7 @@ Function48304: ; 48304 (12:4304)
  7531.     ld b, $c
  7532.     ld c, $8
  7533.     call Function48cdc
  7534. -   ld a, [wcf88]
  7535. +   ld a, [wPocketPointerLocationBuffer]
  7536.     ld b, a
  7537.     ld a, [wd0e4]
  7538.     ld c, a
  7539. @@ -37127,7 +37142,7 @@ Function48304: ; 48304 (12:4304)
  7540.     jr c, .asm_4833f
  7541.     sub $29
  7542.     inc a
  7543. -   ld [wcf88], a
  7544. +   ld [wPocketPointerLocationBuffer], a
  7545.     ld a, $29
  7546.  .asm_4833f
  7547.     ld [wd0e4], a
  7548. @@ -37140,7 +37155,7 @@ Function48304: ; 48304 (12:4304)
  7549.     ld d, a
  7550.     pop bc
  7551.     ld a, b
  7552. -   ld [wcf88], a
  7553. +   ld [wPocketPointerLocationBuffer], a
  7554.     ld a, c
  7555.     ld [wd0e4], a
  7556.     ld a, d
  7557. @@ -37189,7 +37204,7 @@ Function48383: ; 48383 (12:4383)
  7558.  .asm_483af
  7559.     ld hl, wcfa9
  7560.     ld a, [hl]
  7561. -   ld [wcf88], a
  7562. +   ld [wPocketPointerLocationBuffer], a
  7563.     scf
  7564.  .asm_483b7
  7565.     pop bc
  7566. @@ -38600,7 +38615,7 @@ Function48d94: ; 48d94 (12:4d94)
  7567.     ld [hl], a
  7568.     ret
  7569.  
  7570. -Function48dcb: ; 48dcb (12:4dcb)
  7571. +InitGender: ; 48dcb (12:4dcb)
  7572.     call Function48e14
  7573.     call Function48e47
  7574.     call Function48e64
  7575. @@ -38608,7 +38623,7 @@ Function48dcb: ; 48dcb (12:4dcb)
  7576.     call Function32f9
  7577.     ld hl, UnknownText_0x48e0f
  7578.     call PrintText
  7579. -   ld hl, MenuDataHeader_0x48dfc
  7580. +   ld hl, .MenuDataHeader
  7581.     call LoadMenuDataHeader
  7582.     call Function3200
  7583.     call InterpretMenu2
  7584. @@ -38616,20 +38631,20 @@ Function48dcb: ; 48dcb (12:4dcb)
  7585.     ld a, [wcfa9]
  7586.     dec a
  7587.     ld [PlayerGender], a
  7588. -   ld c, $a
  7589. +   ld c, 10
  7590.     call DelayFrames
  7591.     ret
  7592.  ; 48dfc (12:4dfc)
  7593.  
  7594. -MenuDataHeader_0x48dfc: ; 0x48dfc
  7595. +.MenuDataHeader: ; 0x48dfc
  7596.     db $40 ; flags
  7597.     db 04, 06 ; start coords
  7598.     db 09, 12 ; end coords
  7599. -   dw MenuData2_0x48e04
  7600. +   dw .MenuData2
  7601.     db 1 ; default option
  7602.  ; 0x48e04
  7603.  
  7604. -MenuData2_0x48e04: ; 0x48e04
  7605. +.MenuData2: ; 0x48e04
  7606.     db $a1 ; flags
  7607.     db 2 ; items
  7608.     db "Boy@"
  7609. @@ -38693,7 +38708,7 @@ GFX_48e71: ; 48e71
  7610.  INCBIN "gfx/unknown/048e71.2bpp"
  7611.  
  7612.  
  7613. -Function48e81: ; 48e81
  7614. +DrawKrisPackGFX: ; 48e81
  7615.     ld hl, PackFGFXPointers
  7616.  rept 2
  7617.     add hl, de
  7618. @@ -38726,7 +38741,7 @@ Function4925b: ; 4925b
  7619.     ld b, $14
  7620.     call GetSGBLayout
  7621.     xor a
  7622. -   ld [wd142], a
  7623. +   ld [wItemAttributeParamBuffer], a
  7624.     call Function492a5
  7625.     ld [wd265], a
  7626.     ld [wd262], a
  7627. @@ -39794,7 +39809,7 @@ Function49bf3: ; 49bf3
  7628.  ; 49bf9
  7629.  
  7630.  Function49bf9: ; 49bf9
  7631. -   ld a, [wd0ee]
  7632. +   ld a, [wBattleResult]
  7633.     bit 6, a
  7634.     jr z, .asm_49c07
  7635.     ld a, $1
  7636. @@ -42069,20 +42084,20 @@ Function4acaa: ; 4acaa
  7637.     ld a, $2
  7638.     ld [wcf92], a
  7639.     ld a, $c
  7640. -   ld [wcf82], a
  7641. +   ld [wMenuBorderTopCoord], a
  7642.     jr .asm_4accc
  7643.  
  7644.  .asm_4acc2
  7645.     ld a, $4
  7646.     ld [wcf92], a
  7647.     ld a, $8
  7648. -   ld [wcf82], a
  7649. +   ld [wMenuBorderTopCoord], a
  7650.  
  7651.  .asm_4accc
  7652.     ld a, $b
  7653. -   ld [wcf83], a
  7654. +   ld [wMenuBorderLeftCoord], a
  7655.     ld a, $1
  7656. -   ld [wcf88], a
  7657. +   ld [wPocketPointerLocationBuffer], a
  7658.     call Function1c10
  7659.     ld hl, wcfa5
  7660.     set 6, [hl]
  7661. @@ -42290,14 +42305,14 @@ Function4ae1f: ; 4ae1f
  7662.     call CopyMenuDataHeader
  7663.     pop bc
  7664.     ld a, b
  7665. -   ld [wcf83], a
  7666. +   ld [wMenuBorderLeftCoord], a
  7667.     add $5
  7668. -   ld [wcf85], a
  7669. +   ld [wMenuBorderRightCoord], a
  7670.     ld a, c
  7671. -   ld [wcf82], a
  7672. +   ld [wMenuBorderTopCoord], a
  7673.     add $4
  7674. -   ld [wcf84], a
  7675. -   call Function1c00
  7676. +   ld [wMenuBorderBottomCoord], a
  7677. +   call BackUpTiles
  7678.     call InterpretMenu2
  7679.     push af
  7680.     ld c, $f
  7681. @@ -42541,13 +42556,13 @@ Function4cf80: ; 4cf80 (13:4f80)
  7682.     ld a, [hBGMapAddress + 1]
  7683.     ld h, a
  7684.     ld l, 0
  7685. -   ld a, 18
  7686. +   ld a, SCREEN_HEIGHT
  7687.     ld [$ffd3], a
  7688.     ld b, 1 << 1
  7689.     ld c, rSTAT % $100
  7690.  
  7691.  .loop
  7692. -rept 20 / 2
  7693. +rept SCREEN_WIDTH / 2
  7694.     pop de
  7695.  .loop\@
  7696.     ld a, [$ff00+c]
  7697. @@ -42559,7 +42574,7 @@ rept 20 / 2
  7698.     inc l
  7699.  endr
  7700.  
  7701. -   ld de, 32 - 20
  7702. +   ld de, $20 - SCREEN_WIDTH
  7703.     add hl, de
  7704.     ld a, [$ffd3]
  7705.     dec a
  7706. @@ -42689,13 +42704,13 @@ Function4d1cb: ; 4d1cb
  7707.     ld a, [hBGMapAddress + 1]
  7708.     ld h, a
  7709.     ld l, 0
  7710. -   ld a, 18
  7711. +   ld a, SCREEN_HEIGHT
  7712.     ld [$ffd3], a
  7713.     ld b, 1 << 1 ; not in v/hblank
  7714.     ld c, rSTAT % $100
  7715.  
  7716.  .loop
  7717. -rept 20 / 2
  7718. +rept SCREEN_WIDTH / 2
  7719.     pop de
  7720.  .loop\@
  7721.     ld a, [$ff00+c]
  7722. @@ -42707,7 +42722,7 @@ rept 20 / 2
  7723.     inc l
  7724.  endr
  7725.  
  7726. -   ld de, 32 - 20
  7727. +   ld de, $20 - SCREEN_WIDTH
  7728.     add hl, de
  7729.     ld a, [$ffd3]
  7730.     dec a
  7731. @@ -43396,7 +43411,7 @@ endr
  7732.     ld a, [ScriptVar]
  7733.     and a
  7734.     ret z ; found nothing
  7735. -   callba Function1060cd
  7736. +   callba MobileFn_1060cd
  7737.     ld a, [wFoundMatchingIDInParty]
  7738.     and a
  7739.     push af
  7740. @@ -45905,7 +45920,7 @@ INCLUDE "event/poke_seer.asm"
  7741.  SECTION "bank14", ROMX, BANK[$14]
  7742.  
  7743.  SelectMonFromParty: ; 50000
  7744. -   call Function2ed3
  7745. +   call DisableSpriteUpdates
  7746.     xor a
  7747.     ld [PartyMenuActionText], a
  7748.     call WhiteBGMap
  7749. @@ -45922,7 +45937,7 @@ SelectMonFromParty: ; 50000
  7750.  Function5001d: ; 5001d
  7751.     ld a, b
  7752.     ld [PartyMenuActionText], a
  7753. -   call Function2ed3
  7754. +   call DisableSpriteUpdates
  7755.     call WhiteBGMap
  7756.     call Function5003f
  7757.     call WaitBGMap
  7758. @@ -46847,7 +46862,7 @@ endr
  7759.     ret
  7760.  ; 505da
  7761.  
  7762. -Function505da:: ; 505da
  7763. +DoPoisonStep:: ; 505da
  7764.     ld a, [PartyCount]
  7765.     and a
  7766.     jr z, .asm_5062c
  7767. @@ -50037,12 +50052,12 @@ INCLUDE "engine/engine_flags.asm"
  7768.  _GetVarAction:: ; 80648 (20:4648)
  7769.     ld a, c
  7770.     cp NUM_VARS
  7771. -   jr c, .asm_8064e
  7772. +   jr c, .valid
  7773.     xor a
  7774. -.asm_8064e
  7775. +.valid
  7776.     ld c, a
  7777.     ld b, 0
  7778. -   ld hl, VarActionTable
  7779. +   ld hl, .VarActionTable
  7780.  rept 3
  7781.     add hl, bc
  7782.  endr
  7783. @@ -50052,104 +50067,105 @@ endr
  7784.     inc hl
  7785.     ld b, [hl]
  7786.     ld a, b
  7787. -   and $80
  7788. -   jr nz, .asm_80668
  7789. +   and RETVAR_EXECUTE
  7790. +   jr nz, .call
  7791.     ld a, b
  7792. -   and $40
  7793. +   and RETVAR_ADDR_DE
  7794.     ret nz
  7795.     ld a, [de]
  7796. -   jr Function8066c
  7797. -.asm_80668
  7798. +   jr .loadstringbuffer2
  7799. +
  7800. +.call
  7801.     call _de_
  7802.     ret
  7803.  
  7804. -Function8066c: ; 8066c (20:466c)
  7805. +.loadstringbuffer2: ; 8066c (20:466c)
  7806.     ld de, StringBuffer2
  7807.     ld [de], a
  7808.     ret
  7809.  ; 80671 (20:4671)
  7810.  
  7811. -VarActionTable: ; 80671
  7812. -; $00: return address
  7813. -; $40: return at StringBuffer2
  7814. -; $80: return function result at StringBuffer2
  7815. -   dwb StringBuffer2, $00
  7816. -   dwb PartyCount,    $00
  7817. -   dwb Function80728, $80
  7818. -   dwb BattleType,    $40
  7819. -   dwb TimeOfDay,     $00
  7820. -   dwb Function806c5, $80
  7821. -   dwb Function806d3, $80
  7822. -   dwb CountBadges,   $80
  7823. -   dwb PlayerState,   $40
  7824. -   dwb Function806ef, $80
  7825. -   dwb hHours,        $00
  7826. -   dwb Function806f9, $80
  7827. -   dwb MapGroup,      $00
  7828. -   dwb MapNumber,     $00
  7829. -   dwb Function806ff, $80
  7830. -   dwb wPermission,         $00
  7831. -   dwb Function80715, $80
  7832. -   dwb wd46c,         $00
  7833. -   dwb XCoord,        $00
  7834. -   dwb YCoord,        $00
  7835. -   dwb wSpecialPhoneCallID,         $00
  7836. -   dwb wcf64,         $00
  7837. -   dwb wdca4,         $00
  7838. -   dwb wCurrentCaller,         $40
  7839. -   dwb wdc4b,         $40
  7840. -   dwb wdc4a,         $40
  7841. -   dwb wdc58,         $00
  7842. -   dwb NULL,          $00
  7843. +.VarActionTable: ; 80671
  7844. +; $00: copy [de] to StringBuffer2
  7845. +; $40: return address in de
  7846. +; $80: call function
  7847. +   dwb StringBuffer2,         RETVAR_STRBUF2
  7848. +   dwb PartyCount,            RETVAR_STRBUF2
  7849. +   dwb .BattleResult,         RETVAR_EXECUTE
  7850. +   dwb BattleType,            RETVAR_ADDR_DE
  7851. +   dwb TimeOfDay,             RETVAR_STRBUF2
  7852. +   dwb .CountCaughtMons,      RETVAR_EXECUTE
  7853. +   dwb .CountSeenMons,        RETVAR_EXECUTE
  7854. +   dwb .CountBadges,          RETVAR_EXECUTE
  7855. +   dwb PlayerState,           RETVAR_ADDR_DE
  7856. +   dwb .PlayerFacing,         RETVAR_EXECUTE
  7857. +   dwb hHours,                RETVAR_STRBUF2
  7858. +   dwb .DayOfWeek,            RETVAR_EXECUTE
  7859. +   dwb MapGroup,              RETVAR_STRBUF2
  7860. +   dwb MapNumber,             RETVAR_STRBUF2
  7861. +   dwb .UnownCaught,          RETVAR_EXECUTE
  7862. +   dwb wPermission,           RETVAR_STRBUF2
  7863. +   dwb .BoxFreeSpace,         RETVAR_EXECUTE
  7864. +   dwb wBugContestMinsRemaining,                 RETVAR_STRBUF2
  7865. +   dwb XCoord,                RETVAR_STRBUF2
  7866. +   dwb YCoord,                RETVAR_STRBUF2
  7867. +   dwb wSpecialPhoneCallID,   RETVAR_STRBUF2
  7868. +   dwb wcf64,                 RETVAR_STRBUF2
  7869. +   dwb wKurtApricornQuantity, RETVAR_STRBUF2
  7870. +   dwb wCurrentCaller,        RETVAR_ADDR_DE
  7871. +   dwb wBlueCardBalance,      RETVAR_ADDR_DE
  7872. +   dwb wBuenasPassword,       RETVAR_ADDR_DE
  7873. +   dwb wdc58,                 RETVAR_STRBUF2
  7874. +   dwb NULL,                  RETVAR_STRBUF2
  7875.  ; 806c5
  7876.  
  7877. -Function806c5: ; 806c5
  7878. +.CountCaughtMons: ; 806c5
  7879.  ; Caught mons.
  7880.     ld hl, PokedexCaught
  7881.     ld b, EndPokedexCaught - PokedexCaught
  7882.     call CountSetBits
  7883.     ld a, [wd265]
  7884. -   jp Function8066c
  7885. +   jp .loadstringbuffer2
  7886.  ; 806d3
  7887.  
  7888. -Function806d3: ; 806d3
  7889. +.CountSeenMons: ; 806d3
  7890.  ; Seen mons.
  7891.     ld hl, PokedexSeen
  7892.     ld b, EndPokedexSeen - PokedexSeen
  7893.     call CountSetBits
  7894.     ld a, [wd265]
  7895. -   jp Function8066c
  7896. +   jp .loadstringbuffer2
  7897.  ; 806e1
  7898.  
  7899. -CountBadges: ; 806e1
  7900. +.CountBadges: ; 806e1
  7901.  ; Number of owned badges.
  7902.     ld hl, Badges
  7903.     ld b, 2
  7904.     call CountSetBits
  7905.     ld a, [wd265]
  7906. -   jp Function8066c
  7907. +   jp .loadstringbuffer2
  7908.  ; 806ef
  7909.  
  7910. -Function806ef: ; 806ef
  7911. +.PlayerFacing: ; 806ef
  7912.  ; The direction the player is facing.
  7913.     ld a, [PlayerDirection]
  7914.     and $c
  7915.     rrca
  7916.     rrca
  7917. -   jp Function8066c
  7918. +   jp .loadstringbuffer2
  7919.  ; 806f9
  7920.  
  7921. -Function806f9: ; 806f9
  7922. +.DayOfWeek: ; 806f9
  7923.  ; The day of the week.
  7924.     call GetWeekday
  7925. -   jp Function8066c
  7926. +   jp .loadstringbuffer2
  7927.  ; 806ff
  7928.  
  7929. -Function806ff: ; 806ff
  7930. +.UnownCaught: ; 806ff
  7931.  ; Number of unique Unown caught.
  7932.     call .count
  7933.     ld a, b
  7934. -   jp Function8066c
  7935. +   jp .loadstringbuffer2
  7936.  
  7937.  .count
  7938.     ld hl, UnownDex
  7939. @@ -50165,7 +50181,7 @@ Function806ff: ; 806ff
  7940.     ret
  7941.  ; 80715
  7942.  
  7943. -Function80715: ; 80715
  7944. +.BoxFreeSpace: ; 80715
  7945.  ; Remaining slots in the current box.
  7946.     ld a, BANK(sBoxCount)
  7947.     call GetSRAMBank
  7948. @@ -50175,13 +50191,13 @@ Function80715: ; 80715
  7949.     ld b, a
  7950.     call CloseSRAM
  7951.     ld a, b
  7952. -   jp Function8066c
  7953. +   jp .loadstringbuffer2
  7954.  ; 80728
  7955.  
  7956. -Function80728: ; 80728
  7957. -   ld a, [wd0ee]
  7958. +.BattleResult: ; 80728
  7959. +   ld a, [wBattleResult]
  7960.     and $3f
  7961. -   jp Function8066c
  7962. +   jp .loadstringbuffer2
  7963.  ; 80730
  7964.  
  7965.  
  7966. @@ -53211,7 +53227,7 @@ HallOfFame:: ; 0x8640e
  7967.     push af
  7968.     ld a, 1
  7969.     ld [wc2cd], a
  7970. -   call Function2ed3
  7971. +   call DisableSpriteUpdates
  7972.     ld a, SPAWN_LANCE
  7973.     ld [wSpawnAfterChampion], a
  7974.  
  7975. @@ -53254,7 +53270,7 @@ RedCredits:: ; 86455
  7976.     callba Function4e8c2
  7977.     ld c, $8
  7978.     call DelayFrames
  7979. -   call Function2ed3
  7980. +   call DisableSpriteUpdates
  7981.     ld a, SPAWN_RED
  7982.     ld [wSpawnAfterChampion], a
  7983.     ld a, [StatusFlags]
  7984. @@ -58518,876 +58534,7 @@ INCLUDE "menu/mon_icons.asm"
  7985.  
  7986.  SECTION "bank24", ROMX, BANK[$24]
  7987.  
  7988. -AddPhoneNumber:: ; 90000
  7989. -   call _CheckCellNum
  7990. -   jr c, .asm_9000d
  7991. -   call Function9002d
  7992. -   jr nc, .asm_9000d
  7993. -   ld [hl], c
  7994. -   xor a
  7995. -   ret
  7996. -
  7997. -.asm_9000d
  7998. -   scf
  7999. -   ret
  8000. -; 9000f
  8001. -
  8002. -
  8003. -DelCellNum:: ; 9000f
  8004. -   call _CheckCellNum
  8005. -   jr nc, .asm_90017
  8006. -   xor a
  8007. -   ld [hl], a
  8008. -   ret
  8009. -
  8010. -.asm_90017
  8011. -   scf
  8012. -   ret
  8013. -; 90019
  8014. -
  8015. -CheckCellNum:: ; 90019
  8016. -   jp _CheckCellNum
  8017. -; 9001c
  8018. -
  8019. -_CheckCellNum: ; 9001c
  8020. -   ld hl, wdc7c
  8021. -   ld b, $a
  8022. -.asm_90021
  8023. -   ld a, [hli]
  8024. -   cp c
  8025. -   jr z, .asm_9002a
  8026. -   dec b
  8027. -   jr nz, .asm_90021
  8028. -   xor a
  8029. -   ret
  8030. -
  8031. -.asm_9002a
  8032. -   dec hl
  8033. -   scf
  8034. -   ret
  8035. -; 9002d
  8036. -
  8037. -Function9002d: ; 9002d
  8038. -   call Function90040
  8039. -   ld b, a
  8040. -   ld hl, wdc7c
  8041. -.asm_90034
  8042. -   ld a, [hli]
  8043. -   and a
  8044. -   jr z, .asm_9003d
  8045. -   dec b
  8046. -   jr nz, .asm_90034
  8047. -   xor a
  8048. -   ret
  8049. -
  8050. -.asm_9003d
  8051. -   dec hl
  8052. -   scf
  8053. -   ret
  8054. -; 90040
  8055. -
  8056. -Function90040: ; 90040
  8057. -   xor a
  8058. -   ld [Buffer1], a
  8059. -   ld hl, Unknown_90066
  8060. -.asm_90047
  8061. -   ld a, [hli]
  8062. -   cp $ff
  8063. -   jr z, .asm_9005f
  8064. -   cp c
  8065. -   jr z, .asm_9005d
  8066. -   push bc
  8067. -   push hl
  8068. -   ld c, a
  8069. -   call _CheckCellNum
  8070. -   jr c, .asm_9005b
  8071. -   ld hl, Buffer1
  8072. -   inc [hl]
  8073. -
  8074. -.asm_9005b
  8075. -   pop hl
  8076. -   pop bc
  8077. -
  8078. -.asm_9005d
  8079. -   jr .asm_90047
  8080. -
  8081. -.asm_9005f
  8082. -   ld a, $a
  8083. -   ld hl, Buffer1
  8084. -   sub [hl]
  8085. -   ret
  8086. -; 90066
  8087. -
  8088. -Unknown_90066: ; 90066
  8089. -   db 1, 4, $ff
  8090. -; 90069
  8091. -
  8092. -
  8093. -Function90069: ; 90069
  8094. -   ld a, [hROMBank]
  8095. -   push af
  8096. -   ld a, b
  8097. -   rst Bankswitch
  8098. -
  8099. -   call PlaceString
  8100. -
  8101. -   pop af
  8102. -   rst Bankswitch
  8103. -   ret
  8104. -; 90074
  8105. -
  8106. -
  8107. -CheckPhoneCall:: ; 90074 (24:4074)
  8108. -; Check if the phone is ringing in the overworld.
  8109. -
  8110. -   call CheckStandingOnEntrance
  8111. -   jr z, .no_call
  8112. -
  8113. -   call Function900a6
  8114. -   nop
  8115. -   jr nc, .no_call
  8116. -
  8117. -   call Random
  8118. -   ld b, a
  8119. -   and $7f
  8120. -   cp b
  8121. -   jr nz, .no_call
  8122. -
  8123. -   call GetMapHeaderPhoneServiceNybble
  8124. -   and a
  8125. -   jr nz, .no_call
  8126. -
  8127. -   call Function900de
  8128. -   call Function900bf
  8129. -   jr nc, .no_call
  8130. -
  8131. -   ld e, a
  8132. -   call LoadCallerScript
  8133. -   ld a, BANK(Script_SpecialPhoneCall)
  8134. -   ld hl, Script_SpecialPhoneCall
  8135. -   call CallScript
  8136. -   scf
  8137. -   ret
  8138. -
  8139. -.no_call
  8140. -   xor a
  8141. -   ret
  8142. -
  8143. -Function900a6: ; 900a6 (24:40a6)
  8144. -   callba Function11401
  8145. -   ret
  8146. -
  8147. -Function900ad: ; 900ad (24:40ad)
  8148. -   push hl
  8149. -   push bc
  8150. -   push de
  8151. -   push af
  8152. -   callba CheckTime
  8153. -   pop af
  8154. -   and $7
  8155. -   and c
  8156. -   pop de
  8157. -   pop bc
  8158. -   pop hl
  8159. -   ret
  8160. -
  8161. -Function900bf: ; 900bf (24:40bf)
  8162. -   ld a, [wd040]
  8163. -   and a
  8164. -   jr z, .asm_900dc
  8165. -   ld c, a
  8166. -   call Random
  8167. -   ld a, [hRandomAdd] ; $ff00+$e1
  8168. -   swap a
  8169. -   and $1f
  8170. -   call SimpleDivide
  8171. -   ld c, a
  8172. -   ld b, $0
  8173. -   ld hl, wd041
  8174. -   add hl, bc
  8175. -   ld a, [hl]
  8176. -   scf
  8177. -   ret
  8178. -.asm_900dc
  8179. -   xor a
  8180. -   ret
  8181. -
  8182. -Function900de: ; 900de (24:40de)
  8183. -   callba CheckTime
  8184. -   ld a, c
  8185. -   ld [EngineBuffer1], a ; wd03e (aliases: MenuItemsList, CurFruitTree, CurInput)
  8186. -   ld hl, wd040
  8187. -   ld bc, $b
  8188. -   xor a
  8189. -   call ByteFill
  8190. -   ld de, wdc7c
  8191. -   ld a, $a
  8192. -.asm_900f7
  8193. -   ld [wd03f], a
  8194. -   ld a, [de]
  8195. -   and a
  8196. -   jr z, .asm_9012e
  8197. -   ld hl, PhoneContacts + 8
  8198. -   ld bc, 12
  8199. -   call AddNTimes
  8200. -   ld a, [EngineBuffer1] ; wd03e (aliases: MenuItemsList, CurFruitTree, CurInput)
  8201. -   and [hl]
  8202. -   jr z, .asm_9012e
  8203. -   ld bc, $fffa
  8204. -   add hl, bc
  8205. -   ld a, [MapGroup]
  8206. -   cp [hl]
  8207. -   jr nz, .asm_9011e
  8208. -   inc hl
  8209. -   ld a, [MapNumber]
  8210. -   cp [hl]
  8211. -   jr z, .asm_9012e
  8212. -.asm_9011e
  8213. -   ld a, [wd040]
  8214. -   ld c, a
  8215. -   ld b, $0
  8216. -   inc a
  8217. -   ld [wd040], a
  8218. -   ld hl, wd041
  8219. -   add hl, bc
  8220. -   ld a, [de]
  8221. -   ld [hl], a
  8222. -.asm_9012e
  8223. -   inc de
  8224. -   ld a, [wd03f]
  8225. -   dec a
  8226. -   jr nz, .asm_900f7
  8227. -   ret
  8228. -
  8229. -Function90136:: ; 90136 (24:4136)
  8230. -   ld a, [wSpecialPhoneCallID]
  8231. -   and a
  8232. -   jr z, .NoPhoneCall
  8233. -
  8234. -   dec a
  8235. -   ld c, a
  8236. -   ld b, 0
  8237. -   ld hl, SpecialPhoneCallList
  8238. -   ld a, 6
  8239. -   call AddNTimes
  8240. -   ld a, [hli]
  8241. -   ld h, [hl]
  8242. -   ld l, a
  8243. -   call _hl_
  8244. -   jr nc, .NoPhoneCall
  8245. -
  8246. -   call .DoSpecialPhoneCall
  8247. -rept 2
  8248. -   inc hl
  8249. -endr
  8250. -   ld a, [hli]
  8251. -   ld e, a
  8252. -   push hl
  8253. -   call LoadCallerScript
  8254. -   pop hl
  8255. -   ld de, wd048
  8256. -   ld a, [hli]
  8257. -   ld [de], a
  8258. -   inc de
  8259. -   ld a, [hli]
  8260. -   ld [de], a
  8261. -   inc de
  8262. -   ld a, [hli]
  8263. -   ld [de], a
  8264. -   ld a, BANK(.script)
  8265. -   ld hl, .script
  8266. -   call CallScript
  8267. -   scf
  8268. -   ret
  8269. -.NoPhoneCall
  8270. -   xor a
  8271. -   ret
  8272. -; 90173 (24:4173)
  8273. -
  8274. -.script: ; 0x90173
  8275. -   pause 30
  8276. -   jump Script_SpecialPhoneCall
  8277. -; 0x90178
  8278. -
  8279. -.DoSpecialPhoneCall: ; 90178 (24:4178)
  8280. -   ld a, [wSpecialPhoneCallID]
  8281. -   dec a
  8282. -   ld c, a
  8283. -   ld b, 0
  8284. -   ld hl, SpecialPhoneCallList
  8285. -   ld a, 6
  8286. -   call AddNTimes
  8287. -   ret
  8288. -
  8289. -SpecialCallOnlyWhenOutside: ; 90188
  8290. -   ld a, [wPermission]
  8291. -   cp TOWN
  8292. -   jr z, .outside
  8293. -   cp ROUTE
  8294. -   jr z, .outside
  8295. -   xor a
  8296. -   ret
  8297. -
  8298. -.outside
  8299. -   scf
  8300. -   ret
  8301. -
  8302. -SpecialCallWhereverYouAre: ; 90197
  8303. -   scf
  8304. -   ret
  8305. -
  8306. -Function90199: ; 90199 (24:4199)
  8307. -   ld a, [wLinkMode]
  8308. -   and a
  8309. -   jr nz, .asm_901e7
  8310. -   call GetMapHeaderPhoneServiceNybble
  8311. -   and a
  8312. -   jr nz, .asm_901e7
  8313. -   ld a, b
  8314. -   ld [wCurrentCaller], a
  8315. -   ld hl, PhoneContacts
  8316. -   ld bc, 12
  8317. -   call AddNTimes
  8318. -   ld d, h
  8319. -   ld e, l
  8320. -   ld hl, 4
  8321. -   add hl, de
  8322. -   ld a, [hl]
  8323. -   call Function900ad
  8324. -   jr z, .asm_901e7
  8325. -   ld hl, 2
  8326. -   add hl, de
  8327. -   ld a, [MapGroup]
  8328. -   cp [hl]
  8329. -   jr nz, .asm_901d9
  8330. -   ld hl, $3
  8331. -   add hl, de
  8332. -   ld a, [MapNumber]
  8333. -   cp [hl]
  8334. -   jr nz, .asm_901d9
  8335. -   ld b, BANK(UnknownScript_0x90660)
  8336. -   ld hl, UnknownScript_0x90660
  8337. -   jr .asm_901f0
  8338. -
  8339. -.asm_901d9
  8340. -   ld hl, $5
  8341. -   add hl, de
  8342. -   ld b, [hl]
  8343. -   ld hl, $6
  8344. -   add hl, de
  8345. -   ld a, [hli]
  8346. -   ld h, [hl]
  8347. -   ld l, a
  8348. -   jr .asm_901f0
  8349. -
  8350. -.asm_901e7
  8351. -   ld b, BANK(UnknownScript_0x90209)
  8352. -   ld de, UnknownScript_0x90209
  8353. -   call ExecuteCallbackScript
  8354. -   ret
  8355. -
  8356. -.asm_901f0
  8357. -   ld a, b
  8358. -   ld [wd002], a
  8359. -   ld a, l
  8360. -   ld [wd003], a
  8361. -   ld a, h
  8362. -   ld [wd004], a
  8363. -   ld b, BANK(UnknownScript_0x90205)
  8364. -   ld de, UnknownScript_0x90205
  8365. -   call ExecuteCallbackScript
  8366. -   ret
  8367. -; 90205 (24:4205)
  8368. -
  8369. -UnknownScript_0x90205: ; 0x90205
  8370. -   ptcall wd002
  8371. -   return
  8372. -; 0x90209
  8373. -
  8374. -UnknownScript_0x90209: ; 0x90209
  8375. -   scall UnknownScript_0x90657
  8376. -   return
  8377. -; 0x9020d
  8378. -
  8379. -LoadCallerScript: ; 9020d (24:420d)
  8380. -   nop
  8381. -   nop
  8382. -   ld a, e
  8383. -   ld [wCurrentCaller], a
  8384. -   and a
  8385. -   jr nz, .actualcaller
  8386. -   ld a, BANK(WrongNumber)
  8387. -   ld hl, WrongNumber
  8388. -   jr .proceed
  8389. -
  8390. -.actualcaller
  8391. -   ld hl, PhoneContacts
  8392. -   ld bc, 12
  8393. -   ld a, e
  8394. -   call AddNTimes
  8395. -   ld a, BANK(PhoneContacts)
  8396. -.proceed
  8397. -   ld de, wd03f
  8398. -   ld bc, 12
  8399. -   call FarCopyBytes
  8400. -   ret
  8401. -; 90233 (24:4233)
  8402. -
  8403. -WrongNumber: ; 90233
  8404. -   db PHONE, PHONE_00
  8405. -   dba .script
  8406. -.script:
  8407. -   writetext .text
  8408. -   end
  8409. -.text:
  8410. -   ; Huh? Sorry, wrong number!
  8411. -   text_jump UnknownText_0x1c5565
  8412. -   db "@"
  8413. -; 90241
  8414. -
  8415. -Script_SpecialPhoneCall: ; 0x90241
  8416. -   refreshscreen $0
  8417. -   callasm Function9026f
  8418. -   ptcall wd048
  8419. -   closetext
  8420. -   callasm HangUp
  8421. -   loadmovesprites
  8422. -   callasm Function113e5
  8423. -   end
  8424. -; 0x90255
  8425. -
  8426. -Script_SpecialBillCall:: ; 0x90255
  8427. -   callasm Function9025c
  8428. -   jump Script_SpecialPhoneCall
  8429. -; 0x9025c
  8430. -
  8431. -Function9025c: ; 9025c
  8432. -   ld e, PHONE_BILL
  8433. -   jp LoadCallerScript
  8434. -; 90261
  8435. -
  8436. -UnknownScript_0x90261: ; 0x90261
  8437. -   callasm Function9026a
  8438. -   pause 30
  8439. -   jump Script_SpecialPhoneCall
  8440. -; 0x9026a
  8441. -
  8442. -Function9026a: ; 9026a
  8443. -   ld e, PHONE_ELM
  8444. -   jp LoadCallerScript
  8445. -; 9026f
  8446. -
  8447. -Function9026f: ; 9026f
  8448. -   call Function9027c
  8449. -   call Function9027c
  8450. -   callba Function1060d3
  8451. -   ret
  8452. -; 9027c
  8453. -
  8454. -Function9027c: ; 9027c (24:427c)
  8455. -   call Phone_StartRinging
  8456. -   call Phone_Wait20Frames
  8457. -   call Phone_CallerTextboxWithName
  8458. -   call Phone_Wait20Frames
  8459. -   call Phone_CallerTextbox
  8460. -   call Phone_Wait20Frames
  8461. -   call Phone_CallerTextboxWithName
  8462. -   ret
  8463. -
  8464. -Phone_CallerTextboxWithName: ; 90292 (24:4292)
  8465. -   ld a, [wCurrentCaller]
  8466. -   ld b, a
  8467. -   call Function90363
  8468. -   ret
  8469. -
  8470. -
  8471. -PhoneCall:: ; 9029a
  8472. -   ld a, b
  8473. -   ld [PhoneScriptBank], a
  8474. -   ld a, e
  8475. -   ld [PhoneCallerLo], a
  8476. -   ld a, d
  8477. -   ld [PhoneCallerHi], a
  8478. -   call Phone_FirstOfTwoRings
  8479. -   call Phone_FirstOfTwoRings
  8480. -   callba Function1060d3
  8481. -   ret
  8482. -; 902b3
  8483. -
  8484. -Phone_FirstOfTwoRings: ; 902b3
  8485. -   call Phone_StartRinging
  8486. -   call Phone_Wait20Frames
  8487. -   call Phone_CallerTextboxWithName2
  8488. -   call Phone_Wait20Frames
  8489. -   call Phone_CallerTextbox
  8490. -   call Phone_Wait20Frames
  8491. -   call Phone_CallerTextboxWithName2
  8492. -   ret
  8493. -; 902c9
  8494. -
  8495. -Phone_CallerTextboxWithName2: ; 902c9
  8496. -   call Phone_CallerTextbox
  8497. -   hlcoord 1, 2
  8498. -   ld [hl], $62
  8499. -rept 2
  8500. -   inc hl
  8501. -endr
  8502. -   ld a, [PhoneScriptBank]
  8503. -   ld b, a
  8504. -   ld a, [PhoneCallerLo]
  8505. -   ld e, a
  8506. -   ld a, [PhoneCallerHi]
  8507. -   ld d, a
  8508. -   call Function90069
  8509. -   ret
  8510. -; 902e3
  8511. -
  8512. -
  8513. -Phone_NoSignal: ; 902e3 (24:42e3)
  8514. -   ld de, SFX_NO_SIGNAL
  8515. -   call PlaySFX
  8516. -   jr Phone_CallEnd
  8517. -
  8518. -HangUp:: ; 902eb
  8519. -   call HangUp_Beep
  8520. -   call HangUp_Wait20Frames
  8521. -Phone_CallEnd:
  8522. -   call HangUp_BoopOn
  8523. -   call HangUp_Wait20Frames
  8524. -   call HangUp_BoopOff
  8525. -   call HangUp_Wait20Frames
  8526. -   call HangUp_BoopOn
  8527. -   call HangUp_Wait20Frames
  8528. -   call HangUp_BoopOff
  8529. -   call HangUp_Wait20Frames
  8530. -   call HangUp_BoopOn
  8531. -   call HangUp_Wait20Frames
  8532. -   call HangUp_BoopOff
  8533. -   call HangUp_Wait20Frames
  8534. -   ret
  8535. -; 90316
  8536. -
  8537. -Function90316: ; 90316
  8538. -   ld de, SFX_SHUT_DOWN_PC
  8539. -   call PlaySFX
  8540. -   ret
  8541. -; 9031d
  8542. -
  8543. -HangUp_Beep: ; 9031d
  8544. -   ld hl, UnknownText_0x9032a
  8545. -   call PrintText
  8546. -   ld de, SFX_HANG_UP
  8547. -   call PlaySFX
  8548. -   ret
  8549. -; 9032a
  8550. -
  8551. -UnknownText_0x9032a: ; 9032a
  8552. -   text_jump UnknownText_0x1c5580
  8553. -   db "@"
  8554. -; 9032f
  8555. -
  8556. -
  8557. -HangUp_BoopOn: ; 9032f
  8558. -   ld hl, UnknownText_0x90336
  8559. -   call PrintText
  8560. -   ret
  8561. -; 90336
  8562. -
  8563. -UnknownText_0x90336: ; 0x90336
  8564. -   text_jump UnknownText_0x1c5588
  8565. -   db "@"
  8566. -; 0x9033b
  8567. -
  8568. -
  8569. -HangUp_BoopOff: ; 9033b
  8570. -   call SpeechTextBox
  8571. -   ret
  8572. -; 9033f
  8573. -
  8574. -Phone_StartRinging: ; 9033f
  8575. -   call WaitSFX
  8576. -   ld de, SFX_CALL
  8577. -   call PlaySFX
  8578. -   call Phone_CallerTextbox
  8579. -   call UpdateSprites
  8580. -   callba Function4d188
  8581. -   ret
  8582. -; 90355
  8583. -
  8584. -HangUp_Wait20Frames: ; 90355
  8585. -   jr Phone_Wait20Frames
  8586. -
  8587. -Phone_Wait20Frames
  8588. -   ld c, 20
  8589. -   call DelayFrames
  8590. -   callba Function4d188
  8591. -   ret
  8592. -; 90363
  8593. -
  8594. -
  8595. -Function90363: ; 90363 (24:4363)
  8596. -   push bc
  8597. -   call Phone_CallerTextbox
  8598. -   hlcoord 1, 1
  8599. -   ld [hl], $62
  8600. -rept 2
  8601. -   inc hl
  8602. -endr
  8603. -   ld d, h
  8604. -   ld e, l
  8605. -   pop bc
  8606. -   call Function90380
  8607. -   ret
  8608. -
  8609. -
  8610. -Phone_CallerTextbox: ; 90375
  8611. -   hlcoord 0, 0
  8612. -   ld b, 2
  8613. -   ld c, SCREEN_WIDTH - 2
  8614. -   call TextBox
  8615. -   ret
  8616. -; 90380
  8617. -
  8618. -
  8619. -Function90380: ; 90380 (24:4380)
  8620. -   ld h, d
  8621. -   ld l, e
  8622. -   ld a, b
  8623. -   call GetCallerTrainerClass
  8624. -   call GetCallerName
  8625. -   ret
  8626. -
  8627. -Function9038a: ; 9038a (24:438a)
  8628. -   ld a, c
  8629. -   call GetCallerTrainerClass
  8630. -   ld a, c
  8631. -   ret nz
  8632. -   ld a, b
  8633. -   cp $1
  8634. -   ret z
  8635. -   cp $4
  8636. -   ret z
  8637. -   ld c, $1
  8638. -   ret
  8639. -
  8640. -GetCallerTrainerClass: ; 9039a
  8641. -   push hl
  8642. -   ld hl, PhoneContacts + 0 ; PHONE_CONTACT_TRAINER_CLASS
  8643. -   ld bc, 12 ; PHONE_TABLE_WIDTH
  8644. -   call AddNTimes
  8645. -   ld a, [hli]
  8646. -   ld b, [hl]
  8647. -   ld c, a
  8648. -   pop hl
  8649. -   ret
  8650. -; 903a9
  8651. -
  8652. -
  8653. -GetCallerName: ; 903a9 (24:43a9)
  8654. -   ld a, c
  8655. -   and a
  8656. -   jr z, .NotTrainer
  8657. -
  8658. -   call Phone_GetTrainerName
  8659. -   push hl
  8660. -   push bc
  8661. -   call PlaceString
  8662. -   ld a, ":"
  8663. -   ld [bc], a
  8664. -   pop bc
  8665. -   pop hl
  8666. -   ld de, SCREEN_WIDTH + 3
  8667. -   add hl, de
  8668. -   call Phone_GetTrainerClassName
  8669. -   call PlaceString
  8670. -   ret
  8671. -
  8672. -.NotTrainer
  8673. -   push hl
  8674. -   ld c, b
  8675. -   ld b, 0
  8676. -   ld hl, NonTrainerCallerNames
  8677. -rept 2
  8678. -   add hl, bc
  8679. -endr
  8680. -   ld a, [hli]
  8681. -   ld e, a
  8682. -   ld d, [hl]
  8683. -   pop hl
  8684. -   call PlaceString
  8685. -   ret
  8686. -; 903d6 (24:43d6)
  8687. -
  8688. -NonTrainerCallerNames: ; 903d6
  8689. -   dw .none
  8690. -   dw .mom
  8691. -   dw .bikeshop
  8692. -   dw .bill
  8693. -   dw .elm
  8694. -   dw .buena
  8695. -
  8696. -.none: db "----------@"
  8697. -.mom: db "MOM:@"
  8698. -.bill: db "BILL:@"
  8699. -.elm: db "PROF.ELM:@"
  8700. -.bikeshop: db "BIKE SHOP:@"
  8701. -.buena: db "BUENA:", $22, "   DISC JOCKEY@"
  8702. -; 90423
  8703. -
  8704. -Phone_GetTrainerName: ; 90423 (24:4423)
  8705. -   push hl
  8706. -   push bc
  8707. -   callba GetTrainerName
  8708. -   pop bc
  8709. -   pop hl
  8710. -   ret
  8711. -
  8712. -Phone_GetTrainerClassName: ; 9042e (24:442e)
  8713. -   push hl
  8714. -   push bc
  8715. -   callba GetTrainerClassName
  8716. -   pop bc
  8717. -   pop hl
  8718. -   ret
  8719. -
  8720. -GetCallerLocation: ; 90439
  8721. -   ld a, [wCurrentCaller]
  8722. -   call GetCallerTrainerClass
  8723. -   ld d, c
  8724. -   ld e, b
  8725. -   push de
  8726. -   ld a, [wCurrentCaller]
  8727. -   ld hl, PhoneContacts + 2 ; PHONE_CONTACT_MAP_GROUP
  8728. -   ld bc, 12 ; PHONE_TABLE_WIDTH
  8729. -   call AddNTimes
  8730. -   ld b, [hl]
  8731. -   inc hl
  8732. -   ld c, [hl]
  8733. -   push bc
  8734. -   call GetWorldMapLocation
  8735. -   ld e, a
  8736. -   callba GetLandmarkName
  8737. -   pop bc
  8738. -   pop de
  8739. -   ret
  8740. -; 9045f
  8741. -
  8742. -PhoneContacts: ; 9045f
  8743. -phone: MACRO
  8744. -   db  , \2 ; trainer
  8745. -   map \3     ; map
  8746. -   db  \4
  8747. -   dba \5 ; script 1
  8748. -   db  \6
  8749. -   dba \7 ; script 2
  8750. -ENDM
  8751. -
  8752. -   phone PHONE, PHONE_00, N_A,                        0, UnusedPhoneScript,   0, UnusedPhoneScript
  8753. -   phone PHONE, MOM_PHONE, KRISS_HOUSE_1F,              7, MomPhoneScript,      0, UnusedPhoneScript
  8754. -   phone PHONE, OAK_PHONE, OAKS_LAB,                    0, UnusedPhoneScript,   0, UnusedPhoneScript
  8755. -   phone PHONE, BILL_PHONE, N_A,                        7, BillPhoneScript1,    0, BillPhoneScript2
  8756. -   phone PHONE, ELM_PHONE, ELMS_LAB,                    7, ElmPhoneScript1,     0, ElmPhoneScript2
  8757. -   phone SCHOOLBOY, JACK1, NATIONAL_PARK,               7, JackPhoneScript1,    7, JackPhoneScript2
  8758. -   phone POKEFANF, BEVERLY1, NATIONAL_PARK,             7, BeverlyPhoneScript1, 7, BeverlyPhoneScript2
  8759. -   phone SAILOR, HUEY1, OLIVINE_LIGHTHOUSE_2F,          7, HueyPhoneScript1,    7, HueyPhoneScript2
  8760. -   phone PHONE, PHONE_00, N_A,                        0, UnusedPhoneScript,   0, UnusedPhoneScript
  8761. -   phone PHONE, PHONE_00, N_A,                        0, UnusedPhoneScript,   0, UnusedPhoneScript
  8762. -   phone PHONE, PHONE_00, N_A,                        0, UnusedPhoneScript,   0, UnusedPhoneScript
  8763. -   phone COOLTRAINERM, GAVEN3, ROUTE_26,                7, GavenPhoneScript1,   7, GavenPhoneScript2
  8764. -   phone COOLTRAINERF, BETH1, ROUTE_26,                 7, BethPhoneScript1,    7, BethPhoneScript2
  8765. -   phone BIRD_KEEPER, JOSE2, ROUTE_27,                  7, JosePhoneScript1,    7, JosePhoneScript2
  8766. -   phone COOLTRAINERF, REENA1, ROUTE_27,                7, ReenaPhoneScript1,   7, ReenaPhoneScript2
  8767. -   phone YOUNGSTER, JOEY1, ROUTE_30,                    7, JoeyPhoneScript1,    7, JoeyPhoneScript2
  8768. -   phone BUG_CATCHER, WADE1, ROUTE_31,                  7, WadePhoneScript1,    7, WadePhoneScript2
  8769. -   phone FISHER, RALPH1, ROUTE_32,                      7, RalphPhoneScript1,   7, RalphPhoneScript2
  8770. -   phone PICNICKER, LIZ1, ROUTE_32,                     7, LizPhoneScript1,     7, LizPhoneScript2
  8771. -   phone HIKER, ANTHONY2, ROUTE_33,                     7, AnthonyPhoneScript1, 7, AnthonyPhoneScript2
  8772. -   phone CAMPER, TODD1, ROUTE_34,                       7, ToddPhoneScript1,    7, ToddPhoneScript2
  8773. -   phone PICNICKER, GINA1, ROUTE_34,                    7, GinaPhoneScript1,    7, GinaPhoneScript2
  8774. -   phone JUGGLER, IRWIN1, ROUTE_35,                     7, IrwinPhoneScript1,   7, IrwinPhoneScript2
  8775. -   phone BUG_CATCHER, ARNIE1, ROUTE_35,                 7, ArniePhoneScript1,   7, ArniePhoneScript2
  8776. -   phone SCHOOLBOY, ALAN1, ROUTE_36,                    7, AlanPhoneScript1,    7, AlanPhoneScript2
  8777. -   phone PHONE, PHONE_00, N_A,                        0, UnusedPhoneScript,   0, UnusedPhoneScript
  8778. -   phone LASS, DANA1, ROUTE_38,                         7, DanaPhoneScript1,    7, DanaPhoneScript2
  8779. -   phone SCHOOLBOY, CHAD1, ROUTE_38,                    7, ChadPhoneScript1,    7, ChadPhoneScript2
  8780. -   phone POKEFANM, DEREK1, ROUTE_39,                    7, DerekPhoneScript1,   7, DerekPhoneScript2
  8781. -   phone FISHER, TULLY1, ROUTE_42,                      7, TullyPhoneScript1,   7, TullyPhoneScript2
  8782. -   phone POKEMANIAC, BRENT1, ROUTE_43,                  7, BrentPhoneScript1,   7, BrentPhoneScript2
  8783. -   phone PICNICKER, TIFFANY3, ROUTE_43,                 7, TiffanyPhoneScript1, 7, TiffanyPhoneScript2
  8784. -   phone BIRD_KEEPER, VANCE1, ROUTE_44,                 7, VancePhoneScript1,   7, VancePhoneScript2
  8785. -   phone FISHER, WILTON1, ROUTE_44,                     7, WiltonPhoneScript1,  7, WiltonPhoneScript2
  8786. -   phone BLACKBELT_T, KENJI3, ROUTE_45,                 7, KenjiPhoneScript1,   7, KenjiPhoneScript2
  8787. -   phone HIKER, PARRY1, ROUTE_45,                       7, ParryPhoneScript1,   7, ParryPhoneScript2
  8788. -   phone PICNICKER, ERIN1, ROUTE_46,                    7, ErinPhoneScript1,    7, ErinPhoneScript2
  8789. -   phone PHONE, BUENA_PHONE, GOLDENROD_DEPT_STORE_ROOF, 7, BuenaPhoneScript1,   7, BuenaPhoneScript2
  8790. -; 90627
  8791. -
  8792. -SpecialPhoneCallList: ; 90627
  8793. -   dw SpecialCallOnlyWhenOutside
  8794. -   db PHONE_ELM
  8795. -   dba ElmPhoneScript2
  8796. -
  8797. -   dw SpecialCallOnlyWhenOutside
  8798. -   db PHONE_ELM
  8799. -   dba ElmPhoneScript2
  8800. -
  8801. -   dw SpecialCallOnlyWhenOutside
  8802. -   db PHONE_ELM
  8803. -   dba ElmPhoneScript2
  8804. -
  8805. -   dw SpecialCallOnlyWhenOutside
  8806. -   db PHONE_ELM
  8807. -   dba ElmPhoneScript2
  8808. -
  8809. -   dw SpecialCallWhereverYouAre
  8810. -   db PHONE_ELM
  8811. -   dba ElmPhoneScript2
  8812. -
  8813. -   dw SpecialCallWhereverYouAre
  8814. -   db PHONE_OAK ; ????????
  8815. -   dba BikeShopPhoneScript ; bike shop
  8816. -
  8817. -   dw SpecialCallWhereverYouAre
  8818. -   db PHONE_MOM
  8819. -   dba MomPhoneLectureScript
  8820. -
  8821. -   dw SpecialCallOnlyWhenOutside
  8822. -   db PHONE_ELM
  8823. -   dba ElmPhoneScript2
  8824. -; 90657
  8825. -
  8826. -UnknownScript_0x90657: ; 0x90657
  8827. -   writetext UnknownText_0x9065b
  8828. -   end
  8829. -; 0x9065b
  8830. -
  8831. -UnknownText_0x9065b: ; 0x9065b
  8832. -   ; That number is out of the area.
  8833. -   text_jump UnknownText_0x1c558b
  8834. -   db "@"
  8835. -; 0x90660
  8836. -
  8837. -UnknownScript_0x90660: ; 0x90660
  8838. -   writetext UnknownText_0x90664
  8839. -   end
  8840. -; 0x90664
  8841. -
  8842. -UnknownText_0x90664: ; 0x90664
  8843. -   ; Just go talk to that person!
  8844. -   text_jump UnknownText_0x1c55ac
  8845. -   db "@"
  8846. -; 0x90669
  8847. -
  8848. -UnknownScript_0x90669: ; 0x90669
  8849. -   writetext UnknownText_0x9066d
  8850. -   end
  8851. -; 0x9066d
  8852. -
  8853. -UnknownText_0x9066d: ; 0x9066d
  8854. -   ; Thank you!
  8855. -   text_jump UnknownText_0x1c55ca
  8856. -   db "@"
  8857. -; 0x90672
  8858. +INCLUDE "engine/phone.asm"
  8859.  
  8860.  InitClock: ; 90672 (24:4672)
  8861.  ; Ask the player to set the time.
  8862. @@ -61038,7 +60185,7 @@ Function91171: ; 91171 (24:5171)
  8863.     ret
  8864.  
  8865.  .a
  8866. -   ld hl, wdc7c
  8867. +   ld hl, wPhoneList
  8868.     ld a, [wc6d2]
  8869.     ld e, a
  8870.     ld d, 0
  8871. @@ -61225,7 +60372,7 @@ endr
  8872.     ld a, [wc6d2]
  8873.     ld e, a
  8874.     ld d, $0
  8875. -   ld hl, wdc7c
  8876. +   ld hl, wPhoneList
  8877.     add hl, de
  8878.     xor a
  8879.     ld [wc6d0], a
  8880. @@ -61253,7 +60400,7 @@ endr
  8881.  ; 9131e (24:531e)
  8882.  
  8883.  Function9131e: ; 9131e
  8884. -   ld hl, wdc7c
  8885. +   ld hl, wPhoneList
  8886.     ld a, [wc6d2]
  8887.     ld e, a
  8888.     ld d, 0
  8889. @@ -61263,7 +60410,7 @@ Function9131e: ; 9131e
  8890.     ld d, 0
  8891.     add hl, de
  8892.     ld [hl], 0
  8893. -   ld hl, wdc7c
  8894. +   ld hl, wPhoneList
  8895.     ld c, $a
  8896.  .asm_91336
  8897.     ld a, [hli]
  8898. @@ -61279,7 +60426,7 @@ Function9131e: ; 9131e
  8899.  ; 91342
  8900.  
  8901.  Function91342: ; 91342 (24:5342)
  8902. -   ld hl, wdc7c
  8903. +   ld hl, wPhoneList
  8904.     ld a, [wc6d2]
  8905.     ld e, a
  8906.     ld d, 0
  8907. @@ -62928,7 +62075,7 @@ _SlotMachine:
  8908.     call PlaySFX
  8909.     call WaitSFX
  8910.     call WhiteBGMap
  8911. -   callba Function105fd0
  8912. +   callba MobileFn_105fd0
  8913.     ld hl, Options
  8914.     res 4, [hl]
  8915.     ld hl, rLCDC ; $ff40
  8916. @@ -64674,7 +63821,7 @@ Function93124: ; 93124 (24:7124)
  8917.     ld a, [hl]
  8918.     ld [wc711], a
  8919.     ld d, a
  8920. -   callba Function105fe3
  8921. +   callba MobileFn_105fe3
  8922.     ret
  8923.  
  8924.  .data_93145
  8925. @@ -64698,7 +63845,7 @@ Function93158: ; 93158 (24:7158)
  8926.     jr nz, .asm_9316c
  8927.     ld hl, UnknownText_0x931e0
  8928.     call PrintText
  8929. -   callba Function105fd0
  8930. +   callba MobileFn_105fd0
  8931.     ret
  8932.  .asm_9316c
  8933.     srl a
  8934. @@ -64720,7 +63867,7 @@ endr
  8935.  .asm_93188
  8936.     ld hl, UnknownText_0x931b9
  8937.     call PrintText
  8938. -   callba Function105f9f
  8939. +   callba MobileFn_105f9f
  8940.     ret
  8941.  ; 93195 (24:7195)
  8942.  
  8943. @@ -65416,7 +64563,7 @@ CheckForSignpostItems: ; b8172
  8944.  
  8945.  
  8946.  TreeMonEncounter: ; b81ea
  8947. -   callba Function1060ef
  8948. +   callba MobileFn_1060ef
  8949.  
  8950.     xor a
  8951.     ld [TempWildMonSpecies], a
  8952. @@ -72104,7 +71251,7 @@ Functione2e01: ; e2e01 (38:6e01)
  8953.  .asm_e2e0b
  8954.     ld hl, Unknown_e2e2b
  8955.     ld de, Sprites
  8956. -.asm_e2e11
  8957. +.done1
  8958.     ld a, [hl]
  8959.     cp $ff
  8960.     ret z
  8961. @@ -72124,7 +71271,7 @@ Functione2e01: ; e2e01 (38:6e01)
  8962.     ld a, [hli]
  8963.     ld [de], a
  8964.     inc de
  8965. -   jr .asm_e2e11
  8966. +   jr .done1
  8967.  ; e2e2b (38:6e2b)
  8968.  
  8969.  Unknown_e2e2b: ; e2e2b
  8970. @@ -77444,7 +76591,7 @@ NPCTrade:: ; fcba8
  8971.  ; fcc07
  8972.  
  8973.  Functionfcc07: ; fcc07
  8974. -   call Function2ed3
  8975. +   call DisableSpriteUpdates
  8976.     ld a, [wJumptableEntryIndexBuffer]
  8977.     push af
  8978.     ld a, [wcf64]
  8979. @@ -77991,7 +77138,7 @@ TradeAfterText3: ; 0xfcfe7
  8980.  
  8981.  
  8982.  MomTriesToBuySomething:: ; fcfec
  8983. -   ld a, [wd45c]
  8984. +   ld a, [wMapReentryScriptQueueFlag]
  8985.     and a
  8986.     ret nz
  8987.     call GetMapHeaderPhoneServiceNybble
  8988. @@ -78005,14 +77152,14 @@ MomTriesToBuySomething:: ; fcfec
  8989.     ret nc
  8990.     ld b, BANK(UnknownScript_0xfd00f)
  8991.     ld de, UnknownScript_0xfd00f
  8992. -   callba Function97c4f
  8993. +   callba LoadScriptBDE
  8994.     scf
  8995.     ret
  8996.  ; fd00f
  8997.  
  8998.  UnknownScript_0xfd00f: ; 0xfd00f
  8999.     callasm Functionfd017
  9000. -   farjump Script_SpecialPhoneCall
  9001. +   farjump Script_ReceivePhoneCall
  9002.  ; 0xfd017
  9003.  
  9004.  Functionfd017: ; fd017
  9005. @@ -79198,23 +78345,23 @@ RefreshMapSprites: ; 1047f0
  9006.     call Function2914
  9007.     callba Function579d
  9008.     callba Function154f7
  9009. -   ld hl, wd45b
  9010. +   ld hl, wPlayerSpriteSetupFlags
  9011.     bit 6, [hl]
  9012.     jr nz, .asm_104817
  9013.     ld hl, VramState
  9014.     set 0, [hl]
  9015.     call Function2e31
  9016.  .asm_104817
  9017. -   ld a, [wd45b]
  9018. +   ld a, [wPlayerSpriteSetupFlags]
  9019.     and $1c
  9020. -   ld [wd45b], a
  9021. +   ld [wPlayerSpriteSetupFlags], a
  9022.     ret
  9023.  
  9024.  CheckMovingOffEdgeOfMap:: ; 104820 (41:4820)
  9025.     ld a, [wd151]
  9026.     cp STANDING
  9027.     ret z
  9028. -   and a
  9029. +   and a ; DOWN
  9030.     jr z, .down
  9031.     cp UP
  9032.     jr z, .up
  9033. @@ -79374,7 +78521,7 @@ DoMysteryGift: ; 1048ba (41:48ba)
  9034.     jr z, .asm_104963
  9035.     call Function104a71
  9036.     callba Function10619d
  9037. -   callba Function1060a9
  9038. +   callba MobileFn_1060a9
  9039.     callba Function106187
  9040.  .asm_104963
  9041.     ld a, [wc90f]
  9042. @@ -79397,7 +78544,7 @@ DoMysteryGift: ; 1048ba (41:48ba)
  9043.     jr Function1049c5
  9044.  
  9045.  .item
  9046. -   call Function105106
  9047. +   call GetMysteryGiftBank
  9048.     ld a, [wc910]
  9049.     ld c, a
  9050.     callba MysteryGiftGetItem
  9051. @@ -79481,13 +78628,13 @@ UnknownText_0x104a20: ; 104a20
  9052.  ; 104a25
  9053.  
  9054.  Function104a25: ; 104a25 (41:4a25)
  9055. -   call Function105106
  9056. +   call GetMysteryGiftBank
  9057.     ld a, [s0_abe5]
  9058.     cp $5
  9059.     jp CloseSRAM
  9060.  
  9061.  Function104a30: ; 104a30 (41:4a30)
  9062. -   call Function105106
  9063. +   call GetMysteryGiftBank
  9064.     ld a, [wc901]
  9065.     ld b, a
  9066.     ld a, [wc902]
  9067. @@ -79515,11 +78662,11 @@ Function104a30: ; 104a30 (41:4a30)
  9068.     jp CloseSRAM
  9069.  
  9070.  Function104a56: ; 104a56 (41:4a56)
  9071. -   call Function105106
  9072. +   call GetMysteryGiftBank
  9073.     ld hl, s0_abe5
  9074.     ld a, [hl]
  9075.     inc [hl]
  9076. -   ld hl, s0_abe6
  9077. +   ld hl, s0_abe6 ; inc hl
  9078.     ld e, a
  9079.     ld d, $0
  9080.  rept 2
  9081. @@ -79532,7 +78679,7 @@ endr
  9082.     jp CloseSRAM
  9083.  
  9084.  Function104a71: ; 104a71 (41:4a71)
  9085. -   call Function105106
  9086. +   call GetMysteryGiftBank
  9087.     ld a, $1
  9088.     ld [sMysteryGiftTrainerHouseFlag], a
  9089.     ld hl, wc903
  9090. @@ -80399,7 +79546,7 @@ endr
  9091.     ret
  9092.  
  9093.  Function105069: ; 105069 (41:5069)
  9094. -   call Function105106
  9095. +   call GetMysteryGiftBank
  9096.     ld d, $0
  9097.     ld b, $2
  9098.     ld hl, s0_abf0
  9099. @@ -80413,7 +79560,7 @@ Function105069: ; 105069 (41:5069)
  9100.     pop bc
  9101.     pop hl
  9102.     ret nz
  9103. -   call Function105106
  9104. +   call GetMysteryGiftBank
  9105.     ld b, $1
  9106.     predef FlagPredef
  9107.     call CloseSRAM
  9108. @@ -80421,7 +79568,7 @@ Function105069: ; 105069 (41:5069)
  9109.     ret
  9110.  
  9111.  Function105091: ; 105091 (41:5091)
  9112. -   call Function105106
  9113. +   call GetMysteryGiftBank
  9114.     ld c, $0
  9115.  .asm_105096
  9116.     push bc
  9117. @@ -80444,7 +79591,7 @@ Function105091: ; 105091 (41:5091)
  9118.     jp CloseSRAM
  9119.  
  9120.  Special_UnlockMysteryGift: ; 1050b9
  9121. -   call Function105106
  9122. +   call GetMysteryGiftBank
  9123.     ld hl, s0_abe3
  9124.     ld a, [hl]
  9125.     inc a
  9126. @@ -80456,19 +79603,19 @@ Special_UnlockMysteryGift: ; 1050b9
  9127.  ; 1050c8
  9128.  
  9129.  Function1050c8: ; 1050c8
  9130. -   call Function105106
  9131. +   call GetMysteryGiftBank
  9132.     ld a, [s0_abe5]
  9133.     cp $ff
  9134. -   jr z, .asm_1050d6
  9135. +   jr z, .okay
  9136.     xor a
  9137.     ld [s0_abe5], a
  9138. -.asm_1050d6
  9139. +.okay
  9140.     jp CloseSRAM
  9141.  ; 1050d9
  9142.  
  9143.  
  9144.  Function1050d9: ; 1050d9
  9145. -   call Function105106
  9146. +   call GetMysteryGiftBank
  9147.     ld hl, sMysteryGiftItem
  9148.     ld de, s0_abe4
  9149.     ld a, [hli]
  9150. @@ -80481,7 +79628,7 @@ Function1050d9: ; 1050d9
  9151.  
  9152.  
  9153.  Function1050ea: ; 1050ea (41:50ea)
  9154. -   call Function105106
  9155. +   call GetMysteryGiftBank
  9156.     ld hl, s0_abe4
  9157.     ld de, sMysteryGiftItem
  9158.     ld a, [hli]
  9159. @@ -80502,7 +79649,7 @@ Function1050fb: ; 1050fb (41:50fb)
  9160.     ret
  9161.  
  9162.  
  9163. -Function105106: ; 105106
  9164. +GetMysteryGiftBank: ; 105106
  9165.     ld a, BANK(s0_abe4)
  9166.     jp GetSRAMBank
  9167.  ; 10510b
  9168. @@ -80559,14 +79706,14 @@ Function105153: ; 105153 (41:5153)
  9169.     ld hl, MysteryGiftGFX
  9170.     ld de, VTiles2 tile $00
  9171.     ld a, BANK(MysteryGiftGFX)
  9172. -   ld bc, $430
  9173. +   ld bc, Function105688 - MysteryGiftGFX
  9174.     call FarCopyBytes
  9175.     hlcoord 0, 0
  9176.     ld a, $42
  9177.     ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
  9178.     call ByteFill
  9179.     hlcoord 3, 7
  9180. -   ld bc, $90f
  9181. +   lb bc, 9, 15
  9182.     call ClearBox
  9183.     hlcoord 0, 0
  9184.     ld a, $0
  9185. @@ -81455,7 +80602,7 @@ MagikarpLength_Mobile: mobile ; 105f33
  9186.     ret
  9187.  ; 105f79
  9188.  
  9189. -Function105f79: mobile ; 105f79
  9190. +MobileFn_105f79: mobile ; 105f79
  9191.     ld a, $5
  9192.     call GetSRAMBank
  9193.     ld a, [hProduct]
  9194. @@ -81484,7 +80631,7 @@ Function105f79: mobile ; 105f79
  9195.     ret
  9196.  ; 105f9f
  9197.  
  9198. -Function105f9f: mobile ; 105f9f
  9199. +MobileFn_105f9f: mobile ; 105f9f
  9200.     ld a, $5
  9201.     call GetSRAMBank
  9202.     ld hl, $a070
  9203. @@ -81521,7 +80668,7 @@ Function105f9f: mobile ; 105f9f
  9204.     ret
  9205.  ; 105fd0
  9206.  
  9207. -Function105fd0: mobile ; 105fd0
  9208. +MobileFn_105fd0: mobile ; 105fd0
  9209.     ld a, $5
  9210.     call GetSRAMBank
  9211.     ld hl, $a06f
  9212. @@ -81533,7 +80680,7 @@ Function105fd0: mobile ; 105fd0
  9213.     ret
  9214.  ; 105fe3
  9215.  
  9216. -Function105fe3: mobile ; 105fe3
  9217. +MobileFn_105fe3: mobile ; 105fe3
  9218.     ld a, $5
  9219.     call GetSRAMBank
  9220.     ld hl, $a076
  9221. @@ -81561,7 +80708,7 @@ endr
  9222.     ret
  9223.  ; 106008
  9224.  
  9225. -Function106008: mobile ; 106008
  9226. +MobileFn_106008: mobile ; 106008
  9227.     ld a, $5
  9228.     call GetSRAMBank
  9229.     ld hl, $a07a
  9230. @@ -81591,11 +80738,11 @@ endr
  9231.     ret
  9232.  ; 10602e
  9233.  
  9234. -Function10602e: mobile ; 10602e (41:602e)
  9235. +MobileFn_10602e: mobile ; 10602e (41:602e)
  9236.     ld hl, $a010
  9237.     jp Function106117
  9238.  
  9239. -Function106035: mobile ; 106035
  9240. +MobileFn_106035: mobile ; 106035
  9241.     ld a, $5
  9242.     call GetSRAMBank
  9243.     ld a, [$aa8d]
  9244. @@ -81605,29 +80752,29 @@ Function106035: mobile ; 106035
  9245.     ld hl, $a014
  9246.     jp Function106123
  9247.  
  9248. -Function106049: mobile ; 106049
  9249. +MobileFn_106049: mobile ; 106049
  9250.     ld hl, $a018
  9251.     jp Function10611d
  9252.  
  9253. -Function106050: mobile ; 106050
  9254. +MobileFn_106050: mobile ; 106050
  9255.     ld a, [BattleType]
  9256.     cp BATTLETYPE_TUTORIAL
  9257.     ret z
  9258.     ld hl, $a01b
  9259.     jp Function10611d
  9260.  
  9261. -Function10605d: mobile ; 10605d
  9262. +MobileFn_10605d: mobile ; 10605d
  9263.     ld a, [BattleType]
  9264.     cp BATTLETYPE_TUTORIAL
  9265.     ret z
  9266.     ld hl, $a01e
  9267.     jp Function10611d
  9268.  
  9269. -Function10606a: mobile ; 10606a
  9270. +MobileFn_10606a: mobile ; 10606a
  9271.     ld hl, $a021
  9272.     jp Function10611d
  9273.  
  9274. -Function106071: mobile ; 106071
  9275. +MobileFn_106071: mobile ; 106071
  9276.     ld hl, $a024
  9277.     jp Function10611d
  9278.  
  9279. @@ -81635,23 +80782,23 @@ Mobile_HallOfFame:: mobile ; 0x106078
  9280.     ld hl, $a027
  9281.     jp Function10611d
  9282.  
  9283. -Function10607f: mobile ; 10607f (41:607f)
  9284. +MobileFn_10607f: mobile ; 10607f (41:607f)
  9285.     ld hl, $a02a
  9286.     jp Function10611d
  9287.  
  9288. -Function106086: mobile ; 106086
  9289. +MobileFn_106086: mobile ; 106086
  9290.     ld hl, $a02d
  9291.     jp Function10611d
  9292.  
  9293. -Function10608d: mobile ; 10608d (41:608d)
  9294. +MobileFn_10608d: mobile ; 10608d (41:608d)
  9295.     ld hl, $a030
  9296.     jp Function10611d
  9297.  
  9298. -Function106094: mobile ; 106094
  9299. +MobileFn_106094: mobile ; 106094
  9300.     ld hl, $a033
  9301.     jp Function10611d
  9302.  
  9303. -Function10609b: mobile ; 10609b
  9304. +MobileFn_10609b: mobile ; 10609b
  9305.     ld hl, $a036
  9306.     jp Function10611d
  9307.  
  9308. @@ -81659,76 +80806,76 @@ Mobile_HealParty: mobile ; 1060a2
  9309.     ld hl, $a039
  9310.     jp Function10611d
  9311.  
  9312. -Function1060a9: mobile ; 1060a9 (41:60a9)
  9313. +MobileFn_1060a9: mobile ; 1060a9 (41:60a9)
  9314.     ld hl, $a03c
  9315.     jr Function10611d
  9316.  
  9317. -Function1060af: mobile ; 1060af
  9318. +MobileFn_1060af: mobile ; 1060af
  9319.     ld hl, $a03f
  9320.     jr Function10611d
  9321.  
  9322. -Function1060b5: mobile ; 1060b5
  9323. +MobileFn_1060b5: mobile ; 1060b5
  9324.     ld hl, $a042
  9325.     jr Function10611d
  9326.  
  9327. -Function1060bb: mobile ; 1060bb
  9328. +MobileFn_1060bb: mobile ; 1060bb
  9329.     ld hl, $a045
  9330.     jr Function10611d
  9331.  
  9332. -Function1060c1: mobile ; 1060c1
  9333. +MobileFn_1060c1: mobile ; 1060c1
  9334.     ld hl, $a048
  9335.     jr Function10611d
  9336.  
  9337. -Function1060c7: mobile ; 1060c7
  9338. +MobileFn_1060c7: mobile ; 1060c7
  9339.     ld hl, $a04b
  9340.     jr Function10611d
  9341.  
  9342. -Function1060cd: mobile ; 1060cd
  9343. +MobileFn_1060cd: mobile ; 1060cd
  9344.     ld hl, $a04e
  9345.     jr Function106123
  9346.  
  9347. -Function1060d3: mobile ; 1060d3
  9348. +MobileFn_1060d3: mobile ; 1060d3
  9349.     ld hl, $a051
  9350.     jr Function10611d
  9351.  
  9352. -Function1060d9: mobile ; 1060df
  9353. +MobileFn_1060d9: mobile ; 1060df
  9354.     ld hl, $a054
  9355.     jr Function10611d
  9356.  
  9357. -Function1060df: mobile ; 1060df
  9358. +MobileFn_1060df: mobile ; 1060df
  9359.     ld hl, $a057
  9360.     jr Function10611d
  9361.  
  9362. -Function1060e5: mobile ; 1060e5
  9363. +MobileFn_1060e5: mobile ; 1060e5
  9364.     ld a, [hBattleTurn]
  9365.     and a
  9366.     ret nz
  9367.     ld hl, $a05a
  9368.     jr Function10611d
  9369.  
  9370. -Function1060ef: mobile ; 1060ef
  9371. +MobileFn_1060ef: mobile ; 1060ef
  9372.     ld hl, $a05d
  9373.     jr Function10611d
  9374.  
  9375. -Function1060f5: mobile ; 1060f5
  9376. +MobileFn_1060f5: mobile ; 1060f5
  9377.     ld hl, $a060
  9378.     jr Function10611d
  9379.  
  9380. -Function1060fb: mobile ; 1060fb
  9381. +MobileFn_1060fb: mobile ; 1060fb
  9382.     ld hl, $a063
  9383.     jr Function10611d
  9384.  
  9385. -Function106101: mobile ; 106101
  9386. +MobileFn_106101: mobile ; 106101
  9387.     ld hl, $a066
  9388.     jr Function10611d
  9389.  ; 106107
  9390.  
  9391. -Function106107: mobile ; 106107
  9392. +MobileFn_106107: mobile ; 106107
  9393.     ld hl, $a069
  9394.     jr Function10611d
  9395.  ; 10610d
  9396.  
  9397. -Function10610d: mobile ; 10610d
  9398. +MobileFn_10610d: mobile ; 10610d
  9399.     ld a, [hBattleTurn]
  9400.     and a
  9401.     ret nz
  9402. @@ -81794,7 +80941,7 @@ Function10612d: ; 10612d
  9403.     ret
  9404.  ; 106155
  9405.  
  9406. -Function106155: mobile ; 106155
  9407. +MobileFn_106155: mobile ; 106155
  9408.     ld a, $5
  9409.     call GetSRAMBank
  9410.     call Function106162
  9411. @@ -82108,7 +81255,7 @@ Function10630f: ; 10630f
  9412.     ret
  9413.  ; 106314
  9414.  
  9415. -Function106314: mobile ; 106314
  9416. +MobileFn_106314: mobile ; 106314
  9417.     ld a, $4
  9418.     call GetSRAMBank
  9419.     ld a, c
  9420. @@ -82280,7 +81427,7 @@ Function106403: ; 106403
  9421.     or c
  9422.     inc a
  9423.     ld c, a
  9424. -   call Function106314
  9425. +   call MobileFn_106314
  9426.     ld a, [wcd25]
  9427.     inc a
  9428.     ld [wcd25], a
  9429. @@ -82298,7 +81445,7 @@ Function106403: ; 106403
  9430.  
  9431.  .asm_106435
  9432.     ld c, $0
  9433. -   call Function106314
  9434. +   call MobileFn_106314
  9435.     ld a, [wcd25]
  9436.     inc a
  9437.     ld [wcd25], a
  9438. @@ -82309,7 +81456,7 @@ Function106442: ; 106442
  9439.     ld a, $36
  9440.     call Function3e32
  9441.     xor a
  9442. -   ld [$ffe9], a
  9443. +   ld [hMobile], a
  9444.     ld [$ffc9], a
  9445.     ld a, [wcd25]
  9446.     inc a
  9447. @@ -83453,3 +82600,4 @@ ELSE
  9448.  INCBIN "misc/stadium2_1.bin"
  9449.  ENDC
  9450.  
  9451. +
  9452. diff --git a/maps/AzaleaGym.asm b/maps/AzaleaGym.asm
  9453. index 165d54c..bd764e9 100644
  9454. --- a/maps/AzaleaGym.asm
  9455. +++ b/maps/AzaleaGym.asm
  9456. @@ -371,10 +371,10 @@ AzaleaGym_MapEventHeader:
  9457.  
  9458.  .PersonEvents:
  9459.     db 7
  9460. -   person_event SPRITE_BUGSY, 7 + 4, 5 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugsyScript_0x18ec1e, -1
  9461. -   person_event SPRITE_BUG_CATCHER, 3 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBug_catcherBug_catcher_benny, -1
  9462. -   person_event SPRITE_BUG_CATCHER, 8 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherAl, -1
  9463. -   person_event SPRITE_BUG_CATCHER, 2 + 4, 0 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherJosh, -1
  9464. -   person_event SPRITE_TWIN, 10 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAmyandmay1, -1
  9465. -   person_event SPRITE_TWIN, 10 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAmyandmay2, -1
  9466. -   person_event SPRITE_GYM_GUY, 13 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, AzaleaGymGuyScript, -1
  9467. +   person_event SPRITE_BUGSY, 7, 5, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugsyScript_0x18ec1e, -1
  9468. +   person_event SPRITE_BUG_CATCHER, 3, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBug_catcherBug_catcher_benny, -1
  9469. +   person_event SPRITE_BUG_CATCHER, 8, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherAl, -1
  9470. +   person_event SPRITE_BUG_CATCHER, 2, 0, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherJosh, -1
  9471. +   person_event SPRITE_TWIN, 10, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAmyandmay1, -1
  9472. +   person_event SPRITE_TWIN, 10, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAmyandmay2, -1
  9473. +   person_event SPRITE_GYM_GUY, 13, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, AzaleaGymGuyScript, -1
  9474. diff --git a/maps/AzaleaMart.asm b/maps/AzaleaMart.asm
  9475. index 8b5e715..b40acd8 100644
  9476. --- a/maps/AzaleaMart.asm
  9477. +++ b/maps/AzaleaMart.asm
  9478. @@ -57,6 +57,6 @@ AzaleaMart_MapEventHeader:
  9479.  
  9480.  .PersonEvents:
  9481.     db 3
  9482. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18e040, -1
  9483. -   person_event SPRITE_COOLTRAINER_M, 5 + 4, 2 + 4, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x18e047, -1
  9484. -   person_event SPRITE_BUG_CATCHER, 2 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x18e04a, -1
  9485. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18e040, -1
  9486. +   person_event SPRITE_COOLTRAINER_M, 5, 2, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x18e047, -1
  9487. +   person_event SPRITE_BUG_CATCHER, 2, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x18e04a, -1
  9488. diff --git a/maps/AzaleaPokeCenter1F.asm b/maps/AzaleaPokeCenter1F.asm
  9489. index 896fedc..f64d8ea 100644
  9490. --- a/maps/AzaleaPokeCenter1F.asm
  9491. +++ b/maps/AzaleaPokeCenter1F.asm
  9492. @@ -90,7 +90,7 @@ AzaleaPokeCenter1F_MapEventHeader:
  9493.  
  9494.  .PersonEvents:
  9495.     db 4
  9496. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18db28, -1
  9497. -   person_event SPRITE_GENTLEMAN, 6 + 4, 9 + 4, $4, 1, 0, -1, -1, 0, 0, 0, GentlemanScript_0x18db2b, -1
  9498. -   person_event SPRITE_FISHING_GURU, 1 + 4, 6 + 4, $6, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x18db2e, -1
  9499. -   person_event SPRITE_POKEFAN_F, 4 + 4, 1 + 4, $2, 2, 1, -1, -1, 0, 0, 0, PokefanFScript_0x18db31, -1
  9500. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18db28, -1
  9501. +   person_event SPRITE_GENTLEMAN, 6, 9, $4, 1, 0, -1, -1, 0, 0, 0, GentlemanScript_0x18db2b, -1
  9502. +   person_event SPRITE_FISHING_GURU, 1, 6, $6, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x18db2e, -1
  9503. +   person_event SPRITE_POKEFAN_F, 4, 1, $2, 2, 1, -1, -1, 0, 0, 0, PokefanFScript_0x18db31, -1
  9504. diff --git a/maps/AzaleaTown.asm b/maps/AzaleaTown.asm
  9505. index f6f295f..a2016e4 100644
  9506. --- a/maps/AzaleaTown.asm
  9507. +++ b/maps/AzaleaTown.asm
  9508. @@ -481,15 +481,15 @@ AzaleaTown_MapEventHeader:
  9509.  
  9510.  .PersonEvents:
  9511.     db 12
  9512. -   person_event SPRITE_AZALEA_ROCKET, 9 + 4, 31 + 4, $6, 0, 0, -1, -1, 0, 0, 0, AzaleaRocketScript_0x1980ab, EVENT_AZALEA_TOWN_SLOWPOKETAIL_ROCKET
  9513. -   person_event SPRITE_GRAMPS, 9 + 4, 21 + 4, $2, 2, 1, -1, -1, 0, 0, 0, GrampsScript_0x1980b1, -1
  9514. -   person_event SPRITE_TEACHER, 13 + 4, 15 + 4, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x1980c5, -1
  9515. -   person_event SPRITE_YOUNGSTER, 9 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1980c8, -1
  9516. -   person_event SPRITE_SLOWPOKE, 17 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9517. -   person_event SPRITE_SLOWPOKE, 9 + 4, 18 + 4, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9518. -   person_event SPRITE_SLOWPOKE, 9 + 4, 29 + 4, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9519. -   person_event SPRITE_SLOWPOKE, 15 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9520. -   person_event SPRITE_FRUIT_TREE, 2 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 0, 0, WhiteApricornTree, -1
  9521. -   person_event SPRITE_AZALEA_ROCKET, 10 + 4, 11 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_AZALEA_TOWN
  9522. -   person_event SPRITE_AZALEA_ROCKET, 16 + 4, 10 + 4, $6, 0, 0, -1, -1, 0, 0, 0, AzaleaRocketScript_0x1980ae, EVENT_SLOWPOKE_WELL_ROCKETS
  9523. -   person_event SPRITE_KURT_OUTSIDE, 5 + 4, 6 + 4, $8, 0, 0, -1, -1, 0, 0, 0, KurtOutsideScript_0x19810c, EVENT_AZALEA_TOWN_KURT
  9524. +   person_event SPRITE_AZALEA_ROCKET, 9, 31, $6, 0, 0, -1, -1, 0, 0, 0, AzaleaRocketScript_0x1980ab, EVENT_AZALEA_TOWN_SLOWPOKETAIL_ROCKET
  9525. +   person_event SPRITE_GRAMPS, 9, 21, $2, 2, 1, -1, -1, 0, 0, 0, GrampsScript_0x1980b1, -1
  9526. +   person_event SPRITE_TEACHER, 13, 15, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x1980c5, -1
  9527. +   person_event SPRITE_YOUNGSTER, 9, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1980c8, -1
  9528. +   person_event SPRITE_SLOWPOKE, 17, 8, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9529. +   person_event SPRITE_SLOWPOKE, 9, 18, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9530. +   person_event SPRITE_SLOWPOKE, 9, 29, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9531. +   person_event SPRITE_SLOWPOKE, 15, 15, $1, 0, 0, -1, -1, 0, 0, 0, SlowpokeScript_0x1980cb, EVENT_AZALEA_TOWN_SLOWPOKES
  9532. +   person_event SPRITE_FRUIT_TREE, 2, 8, $1, 0, 0, -1, -1, 0, 0, 0, WhiteApricornTree, -1
  9533. +   person_event SPRITE_AZALEA_ROCKET, 10, 11, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_AZALEA_TOWN
  9534. +   person_event SPRITE_AZALEA_ROCKET, 16, 10, $6, 0, 0, -1, -1, 0, 0, 0, AzaleaRocketScript_0x1980ae, EVENT_SLOWPOKE_WELL_ROCKETS
  9535. +   person_event SPRITE_KURT_OUTSIDE, 5, 6, $8, 0, 0, -1, -1, 0, 0, 0, KurtOutsideScript_0x19810c, EVENT_AZALEA_TOWN_KURT
  9536. diff --git a/maps/BattleTower1F.asm b/maps/BattleTower1F.asm
  9537. index c66b3b7..53b6b87 100644
  9538. --- a/maps/BattleTower1F.asm
  9539. +++ b/maps/BattleTower1F.asm
  9540. @@ -810,8 +810,8 @@ BattleTower1F_MapEventHeader:
  9541.  
  9542.  .PersonEvents:
  9543.     db 5
  9544. -   person_event SPRITE_RECEPTIONIST, 6 + 4, 7 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x9e3e2, -1
  9545. -   person_event SPRITE_YOUNGSTER, 9 + 4, 14 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, YoungsterScript_0x9e55d, -1
  9546. -   person_event SPRITE_COOLTRAINER_F, 9 + 4, 4 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x9e568, -1
  9547. -   person_event SPRITE_BUG_CATCHER, 3 + 4, 1 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BugCatcherScript_0x9e56b, -1
  9548. -   person_event SPRITE_GRANNY, 3 + 4, 14 + 4, $4, 1, 0, -1, -1, 0, 0, 0, GrannyScript_0x9e56e, -1
  9549. +   person_event SPRITE_RECEPTIONIST, 6, 7, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x9e3e2, -1
  9550. +   person_event SPRITE_YOUNGSTER, 9, 14, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, YoungsterScript_0x9e55d, -1
  9551. +   person_event SPRITE_COOLTRAINER_F, 9, 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x9e568, -1
  9552. +   person_event SPRITE_BUG_CATCHER, 3, 1, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BugCatcherScript_0x9e56b, -1
  9553. +   person_event SPRITE_GRANNY, 3, 14, $4, 1, 0, -1, -1, 0, 0, 0, GrannyScript_0x9e56e, -1
  9554. diff --git a/maps/BattleTowerBattleRoom.asm b/maps/BattleTowerBattleRoom.asm
  9555. index 362ad54..9bc80b1 100644
  9556. --- a/maps/BattleTowerBattleRoom.asm
  9557. +++ b/maps/BattleTowerBattleRoom.asm
  9558. @@ -155,5 +155,5 @@ BattleTowerBattleRoom_MapEventHeader:
  9559.  
  9560.  .PersonEvents:
  9561.     db 2
  9562. -   person_event SPRITE_YOUNGSTER, 0 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_BATTLE_TOWER_BATTLE_ROOM_YOUNGSTER
  9563. -   person_event SPRITE_RECEPTIONIST, 6 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, -1
  9564. +   person_event SPRITE_YOUNGSTER, 0, 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_BATTLE_TOWER_BATTLE_ROOM_YOUNGSTER
  9565. +   person_event SPRITE_RECEPTIONIST, 6, 1, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, -1
  9566. diff --git a/maps/BattleTowerElevator.asm b/maps/BattleTowerElevator.asm
  9567. index ab26a14..abfd137 100644
  9568. --- a/maps/BattleTowerElevator.asm
  9569. +++ b/maps/BattleTowerElevator.asm
  9570. @@ -60,4 +60,4 @@ BattleTowerElevator_MapEventHeader:
  9571.  
  9572.  .PersonEvents:
  9573.     db 1
  9574. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, MovementData_0x9f58f, -1
  9575. +   person_event SPRITE_RECEPTIONIST, 2, 1, $9, 0, 0, -1, -1, 0, 0, 0, MovementData_0x9f58f, -1
  9576. diff --git a/maps/BattleTowerHallway.asm b/maps/BattleTowerHallway.asm
  9577. index 20f3565..179ec15 100644
  9578. --- a/maps/BattleTowerHallway.asm
  9579. +++ b/maps/BattleTowerHallway.asm
  9580. @@ -98,4 +98,4 @@ BattleTowerHallway_MapEventHeader:
  9581.  
  9582.  .PersonEvents:
  9583.     db 1
  9584. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 11 + 4, $6, 0, 0, -1, -1, 0, 0, 0, BattleTowerHallway_MapEventHeader, -1
  9585. +   person_event SPRITE_RECEPTIONIST, 2, 11, $6, 0, 0, -1, -1, 0, 0, 0, BattleTowerHallway_MapEventHeader, -1
  9586. diff --git a/maps/BattleTowerOutside.asm b/maps/BattleTowerOutside.asm
  9587. index a94a758..43ee41e 100644
  9588. --- a/maps/BattleTowerOutside.asm
  9589. +++ b/maps/BattleTowerOutside.asm
  9590. @@ -142,7 +142,7 @@ BattleTowerOutside_MapEventHeader:
  9591.  
  9592.  .PersonEvents:
  9593.     db 4
  9594. -   person_event SPRITE_STANDING_YOUNGSTER, 12 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, StandingYoungsterScript_0x9f85f, -1
  9595. -   person_event SPRITE_BUENA, 11 + 4, 13 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BuenaScript_0x9f862, -1
  9596. -   person_event SPRITE_SAILOR, 18 + 4, 12 + 4, $5, 0, 1, -1, -1, 0, 0, 0, SailorScript_0x9f865, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  9597. -   person_event SPRITE_LASS, 24 + 4, 12 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, -1
  9598. +   person_event SPRITE_STANDING_YOUNGSTER, 12, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, StandingYoungsterScript_0x9f85f, -1
  9599. +   person_event SPRITE_BUENA, 11, 13, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BuenaScript_0x9f862, -1
  9600. +   person_event SPRITE_SAILOR, 18, 12, $5, 0, 1, -1, -1, 0, 0, 0, SailorScript_0x9f865, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  9601. +   person_event SPRITE_LASS, 24, 12, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, -1
  9602. diff --git a/maps/BillsHouse.asm b/maps/BillsHouse.asm
  9603. index 1d74648..3372d84 100644
  9604. --- a/maps/BillsHouse.asm
  9605. +++ b/maps/BillsHouse.asm
  9606. @@ -367,4 +367,4 @@ BillsHouse_MapEventHeader:
  9607.  
  9608.  .PersonEvents:
  9609.     db 1
  9610. -   person_event SPRITE_GRAMPS, 3 + 4, 2 + 4, $7, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x189538, -1
  9611. +   person_event SPRITE_GRAMPS, 3, 2, $7, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x189538, -1
  9612. diff --git a/maps/BlackthornCity.asm b/maps/BlackthornCity.asm
  9613. index 0bde513..9e2b246 100644
  9614. --- a/maps/BlackthornCity.asm
  9615. +++ b/maps/BlackthornCity.asm
  9616. @@ -333,12 +333,12 @@ BlackthornCity_MapEventHeader:
  9617.  
  9618.  .PersonEvents:
  9619.     db 9
  9620. -   person_event SPRITE_SUPER_NERD, 12 + 4, 18 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a46e8, EVENT_BLACKTHORN_CITY_SUPER_NERD_BLOCKS_GYM
  9621. -   person_event SPRITE_SUPER_NERD, 12 + 4, 19 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a46e8, EVENT_BLACKTHORN_CITY_SUPER_NERD_DOES_NOT_BLOCK_GYM
  9622. -   person_event SPRITE_GRAMPS, 2 + 4, 20 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a4708, EVENT_BLACKTHORN_CITY_GRAMPS_BLOCKS_DRAGONS_DEN
  9623. -   person_event SPRITE_GRAMPS, 2 + 4, 21 + 4, $8, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a470b, EVENT_BLACKTHORN_CITY_GRAMPS_NOT_BLOCKING_DRAGONS_DEN
  9624. -   person_event SPRITE_BLACK_BELT, 31 + 4, 24 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x1a470e, -1
  9625. -   person_event SPRITE_COOLTRAINER_F, 25 + 4, 9 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x1a4722, -1
  9626. -   person_event SPRITE_YOUNGSTER, 15 + 4, 13 + 4, $5, 0, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1a4725, -1
  9627. -   person_event SPRITE_YOUNGSTER, 20 + 4, 22 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SantosScript, EVENT_BLACKTHORN_CITY_SANTOS_OF_SATURDAY
  9628. -   person_event SPRITE_COOLTRAINER_F, 19 + 4, 35 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x1a4728, -1
  9629. +   person_event SPRITE_SUPER_NERD, 12, 18, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a46e8, EVENT_BLACKTHORN_CITY_SUPER_NERD_BLOCKS_GYM
  9630. +   person_event SPRITE_SUPER_NERD, 12, 19, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a46e8, EVENT_BLACKTHORN_CITY_SUPER_NERD_DOES_NOT_BLOCK_GYM
  9631. +   person_event SPRITE_GRAMPS, 2, 20, $6, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a4708, EVENT_BLACKTHORN_CITY_GRAMPS_BLOCKS_DRAGONS_DEN
  9632. +   person_event SPRITE_GRAMPS, 2, 21, $8, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a470b, EVENT_BLACKTHORN_CITY_GRAMPS_NOT_BLOCKING_DRAGONS_DEN
  9633. +   person_event SPRITE_BLACK_BELT, 31, 24, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x1a470e, -1
  9634. +   person_event SPRITE_COOLTRAINER_F, 25, 9, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x1a4722, -1
  9635. +   person_event SPRITE_YOUNGSTER, 15, 13, $5, 0, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1a4725, -1
  9636. +   person_event SPRITE_YOUNGSTER, 20, 22, $6, 0, 0, -1, -1, 0, 0, 0, SantosScript, EVENT_BLACKTHORN_CITY_SANTOS_OF_SATURDAY
  9637. +   person_event SPRITE_COOLTRAINER_F, 19, 35, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x1a4728, -1
  9638. diff --git a/maps/BlackthornDodrioTradeHouse.asm b/maps/BlackthornDodrioTradeHouse.asm
  9639. index 5bbefc6..2e0749c 100644
  9640. --- a/maps/BlackthornDodrioTradeHouse.asm
  9641. +++ b/maps/BlackthornDodrioTradeHouse.asm
  9642. @@ -35,4 +35,4 @@ BlackthornDodrioTradeHouse_MapEventHeader:
  9643.  
  9644.  .PersonEvents:
  9645.     db 1
  9646. -   person_event SPRITE_LASS, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Emy, -1
  9647. +   person_event SPRITE_LASS, 3, 2, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Emy, -1
  9648. diff --git a/maps/BlackthornDragonSpeechHouse.asm b/maps/BlackthornDragonSpeechHouse.asm
  9649. index 1fb728b..3a50fd9 100644
  9650. --- a/maps/BlackthornDragonSpeechHouse.asm
  9651. +++ b/maps/BlackthornDragonSpeechHouse.asm
  9652. @@ -58,5 +58,5 @@ BlackthornDragonSpeechHouse_MapEventHeader:
  9653.  
  9654.  .PersonEvents:
  9655.     db 2
  9656. -   person_event SPRITE_GRANNY, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x195949, -1
  9657. -   person_event SPRITE_EKANS, 5 + 4, 5 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, EkansScript_0x19594c, -1
  9658. +   person_event SPRITE_GRANNY, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x195949, -1
  9659. +   person_event SPRITE_EKANS, 5, 5, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, EkansScript_0x19594c, -1
  9660. diff --git a/maps/BlackthornGym1F.asm b/maps/BlackthornGym1F.asm
  9661. index c17132a..1ca6831 100644
  9662. --- a/maps/BlackthornGym1F.asm
  9663. +++ b/maps/BlackthornGym1F.asm
  9664. @@ -404,8 +404,8 @@ BlackthornGym1F_MapEventHeader:
  9665.  
  9666.  .PersonEvents:
  9667.     db 5
  9668. -   person_event SPRITE_CLAIR, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClairScript_0x194e24, -1
  9669. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermMike, -1
  9670. -   person_event SPRITE_COOLTRAINER_M, 14 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermPaul, -1
  9671. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfLola, -1
  9672. -   person_event SPRITE_GYM_GUY, 15 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BlackthornGymGuyScript, -1
  9673. +   person_event SPRITE_CLAIR, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClairScript_0x194e24, -1
  9674. +   person_event SPRITE_COOLTRAINER_M, 6, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermMike, -1
  9675. +   person_event SPRITE_COOLTRAINER_M, 14, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermPaul, -1
  9676. +   person_event SPRITE_COOLTRAINER_F, 2, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfLola, -1
  9677. +   person_event SPRITE_GYM_GUY, 15, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BlackthornGymGuyScript, -1
  9678. diff --git a/maps/BlackthornGym2F.asm b/maps/BlackthornGym2F.asm
  9679. index 7ab4ceb..50a86d5 100644
  9680. --- a/maps/BlackthornGym2F.asm
  9681. +++ b/maps/BlackthornGym2F.asm
  9682. @@ -145,11 +145,11 @@ BlackthornGym2F_MapEventHeader:
  9683.  
  9684.  .PersonEvents:
  9685.     db 8
  9686. -   person_event SPRITE_COOLTRAINER_M, 1 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermCody, -1
  9687. -   person_event SPRITE_COOLTRAINER_F, 11 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfFran, -1
  9688. -   person_event SPRITE_BOULDER, 2 + 4, 8 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_1
  9689. -   person_event SPRITE_BOULDER, 3 + 4, 2 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_2
  9690. -   person_event SPRITE_BOULDER, 16 + 4, 6 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_3
  9691. -   person_event SPRITE_BOULDER, 3 + 4, 3 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9692. -   person_event SPRITE_BOULDER, 1 + 4, 6 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9693. -   person_event SPRITE_BOULDER, 14 + 4, 8 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9694. +   person_event SPRITE_COOLTRAINER_M, 1, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermCody, -1
  9695. +   person_event SPRITE_COOLTRAINER_F, 11, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfFran, -1
  9696. +   person_event SPRITE_BOULDER, 2, 8, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_1
  9697. +   person_event SPRITE_BOULDER, 3, 2, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_2
  9698. +   person_event SPRITE_BOULDER, 16, 6, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, EVENT_BOULDER_IN_BLACKTHORN_GYM_3
  9699. +   person_event SPRITE_BOULDER, 3, 3, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9700. +   person_event SPRITE_BOULDER, 1, 6, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9701. +   person_event SPRITE_BOULDER, 14, 8, $19, 0, 0, -1, -1, 0, 0, 0, BlackthornGymBoulder, -1
  9702. diff --git a/maps/BlackthornMart.asm b/maps/BlackthornMart.asm
  9703. index 6ad8e9e..f39b1f4 100644
  9704. --- a/maps/BlackthornMart.asm
  9705. +++ b/maps/BlackthornMart.asm
  9706. @@ -58,6 +58,6 @@ BlackthornMart_MapEventHeader:
  9707.  
  9708.  .PersonEvents:
  9709.     db 3
  9710. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x195a5d, -1
  9711. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 7 + 4, $5, 0, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x195a64, -1
  9712. -   person_event SPRITE_BLACK_BELT, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BlackBeltScript_0x195a67, -1
  9713. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x195a5d, -1
  9714. +   person_event SPRITE_COOLTRAINER_M, 6, 7, $5, 0, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x195a64, -1
  9715. +   person_event SPRITE_BLACK_BELT, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BlackBeltScript_0x195a67, -1
  9716. diff --git a/maps/BlackthornPokeCenter1F.asm b/maps/BlackthornPokeCenter1F.asm
  9717. index be074da..0c441b4 100644
  9718. --- a/maps/BlackthornPokeCenter1F.asm
  9719. +++ b/maps/BlackthornPokeCenter1F.asm
  9720. @@ -61,7 +61,7 @@ BlackthornPokeCenter1F_MapEventHeader:
  9721.  
  9722.  .PersonEvents:
  9723.     db 4
  9724. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x195b79, -1
  9725. -   person_event SPRITE_GENTLEMAN, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x195b7c, -1
  9726. -   person_event SPRITE_TWIN, 4 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x195b7f, -1
  9727. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x195b82, -1
  9728. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x195b79, -1
  9729. +   person_event SPRITE_GENTLEMAN, 3, 5, $6, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x195b7c, -1
  9730. +   person_event SPRITE_TWIN, 4, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x195b7f, -1
  9731. +   person_event SPRITE_COOLTRAINER_M, 6, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x195b82, -1
  9732. diff --git a/maps/BluesHouse.asm b/maps/BluesHouse.asm
  9733. index f605b24..40ff945 100644
  9734. --- a/maps/BluesHouse.asm
  9735. +++ b/maps/BluesHouse.asm
  9736. @@ -158,4 +158,4 @@ BluesHouse_MapEventHeader:
  9737.  
  9738.  .PersonEvents:
  9739.     db 1
  9740. -   person_event SPRITE_DAISY, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, DaisyScript_0x19b0d0, -1
  9741. +   person_event SPRITE_DAISY, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, DaisyScript_0x19b0d0, -1
  9742. diff --git a/maps/BrunosRoom.asm b/maps/BrunosRoom.asm
  9743. index 3185ee9..d01c549 100644
  9744. --- a/maps/BrunosRoom.asm
  9745. +++ b/maps/BrunosRoom.asm
  9746. @@ -145,4 +145,4 @@ BrunosRoom_MapEventHeader:
  9747.  
  9748.  .PersonEvents:
  9749.     db 1
  9750. -   person_event SPRITE_BRUNO, 7 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BrunoScript_0x1809c5, -1
  9751. +   person_event SPRITE_BRUNO, 7, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BrunoScript_0x1809c5, -1
  9752. diff --git a/maps/BurnedTower1F.asm b/maps/BurnedTower1F.asm
  9753. index afeda89..7bb2a3e 100644
  9754. --- a/maps/BurnedTower1F.asm
  9755. +++ b/maps/BurnedTower1F.asm
  9756. @@ -309,8 +309,8 @@ BurnedTower1F_MapEventHeader:
  9757.  
  9758.  .PersonEvents:
  9759.     db 5
  9760. -   person_event SPRITE_ROCK, 4 + 4, 15 + 4, $18, 0, 0, -1, -1, 0, 0, 0, BurnedTower1FRock, -1
  9761. -   person_event SPRITE_SUPER_NERD, 12 + 4, 12 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x185cbc, EVENT_BURNED_TOWER_1F_EUSINE
  9762. -   person_event SPRITE_SILVER, 9 + 4, 8 + 4, $8, 0, 0, -1, -1, 0, 2, 3, ObjectEvent, EVENT_RIVAL_BURNED_TOWER
  9763. -   person_event SPRITE_MORTY, 14 + 4, 14 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MortyScript_0x185cbf, EVENT_BURNED_TOWER_MORTY
  9764. -   person_event SPRITE_POKE_BALL, 2 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185ccb, EVENT_BURNED_TOWER_1F_HP_UP
  9765. +   person_event SPRITE_ROCK, 4, 15, $18, 0, 0, -1, -1, 0, 0, 0, BurnedTower1FRock, -1
  9766. +   person_event SPRITE_SUPER_NERD, 12, 12, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x185cbc, EVENT_BURNED_TOWER_1F_EUSINE
  9767. +   person_event SPRITE_SILVER, 9, 8, $8, 0, 0, -1, -1, 0, 2, 3, ObjectEvent, EVENT_RIVAL_BURNED_TOWER
  9768. +   person_event SPRITE_MORTY, 14, 14, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MortyScript_0x185cbf, EVENT_BURNED_TOWER_MORTY
  9769. +   person_event SPRITE_POKE_BALL, 2, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185ccb, EVENT_BURNED_TOWER_1F_HP_UP
  9770. diff --git a/maps/BurnedTowerB1F.asm b/maps/BurnedTowerB1F.asm
  9771. index be95ae2..fe4adc5 100644
  9772. --- a/maps/BurnedTowerB1F.asm
  9773. +++ b/maps/BurnedTowerB1F.asm
  9774. @@ -251,12 +251,12 @@ BurnedTowerB1F_MapEventHeader:
  9775.  
  9776.  .PersonEvents:
  9777.     db 9
  9778. -   person_event SPRITE_BOULDER, 8 + 4, 17 + 4, $19, 0, 0, -1, -1, 0, 0, 0, BurnedTowerB1FBoulder, -1
  9779. -   person_event SPRITE_RAIKOU, 3 + 4, 7 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9780. -   person_event SPRITE_ENTEI, 3 + 4, 12 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9781. -   person_event SPRITE_SUICUNE, 4 + 4, 10 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9782. -   person_event SPRITE_RAIKOU, 3 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9783. -   person_event SPRITE_ENTEI, 3 + 4, 12 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9784. -   person_event SPRITE_SUICUNE, 4 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9785. -   person_event SPRITE_POKE_BALL, 4 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x186231, EVENT_BURNED_TOWER_B1F_TM_ENDURE
  9786. -   person_event SPRITE_SUPER_NERD, 12 + 4, 10 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x186212, EVENT_EUSINE_IN_BURNED_TOWER
  9787. +   person_event SPRITE_BOULDER, 8, 17, $19, 0, 0, -1, -1, 0, 0, 0, BurnedTowerB1FBoulder, -1
  9788. +   person_event SPRITE_RAIKOU, 3, 7, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9789. +   person_event SPRITE_ENTEI, 3, 12, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9790. +   person_event SPRITE_SUICUNE, 4, 10, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_1
  9791. +   person_event SPRITE_RAIKOU, 3, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9792. +   person_event SPRITE_ENTEI, 3, 12, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9793. +   person_event SPRITE_SUICUNE, 4, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_SILVER, 0, 0, ObjectEvent, EVENT_BURNED_TOWER_B1F_BEASTS_2
  9794. +   person_event SPRITE_POKE_BALL, 4, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x186231, EVENT_BURNED_TOWER_B1F_TM_ENDURE
  9795. +   person_event SPRITE_SUPER_NERD, 12, 10, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x186212, EVENT_EUSINE_IN_BURNED_TOWER
  9796. diff --git a/maps/CeladonCafe.asm b/maps/CeladonCafe.asm
  9797. index f7b1235..22ca25f 100644
  9798. --- a/maps/CeladonCafe.asm
  9799. +++ b/maps/CeladonCafe.asm
  9800. @@ -219,8 +219,8 @@ CeladonCafe_MapEventHeader:
  9801.  
  9802.  .PersonEvents:
  9803.     db 5
  9804. -   person_event SPRITE_SUPER_NERD, 3 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, SuperNerdScript_0x73049, -1
  9805. -   person_event SPRITE_FISHER, 6 + 4, 4 + 4, $8, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x73051, -1
  9806. -   person_event SPRITE_FISHER, 7 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x73062, -1
  9807. -   person_event SPRITE_FISHER, 2 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x73073, -1
  9808. -   person_event SPRITE_TEACHER, 3 + 4, 4 + 4, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x73084, -1
  9809. +   person_event SPRITE_SUPER_NERD, 3, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, SuperNerdScript_0x73049, -1
  9810. +   person_event SPRITE_FISHER, 6, 4, $8, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x73051, -1
  9811. +   person_event SPRITE_FISHER, 7, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x73062, -1
  9812. +   person_event SPRITE_FISHER, 2, 1, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x73073, -1
  9813. +   person_event SPRITE_TEACHER, 3, 4, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x73084, -1
  9814. diff --git a/maps/CeladonCity.asm b/maps/CeladonCity.asm
  9815. index be008d7..1298c58 100644
  9816. --- a/maps/CeladonCity.asm
  9817. +++ b/maps/CeladonCity.asm
  9818. @@ -257,12 +257,12 @@ CeladonCity_MapEventHeader:
  9819.  
  9820.  .PersonEvents:
  9821.     db 9
  9822. -   person_event SPRITE_FISHER, 11 + 4, 26 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a9f43, -1
  9823. -   person_event SPRITE_POLIWAG, 11 + 4, 27 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeladonCityPoliwrath, -1
  9824. -   person_event SPRITE_TEACHER, 24 + 4, 20 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x1a9f50, -1
  9825. -   person_event SPRITE_GRAMPS, 16 + 4, 14 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x1a9f53, -1
  9826. -   person_event SPRITE_GRAMPS, 31 + 4, 8 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrampsScript_0x1a9f56, -1
  9827. -   person_event SPRITE_YOUNGSTER, 13 + 4, 18 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x1a9f59, -1
  9828. -   person_event SPRITE_YOUNGSTER, 33 + 4, 24 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a9f5c, -1
  9829. -   person_event SPRITE_TEACHER, 14 + 4, 6 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a9f5f, -1
  9830. -   person_event SPRITE_LASS, 22 + 4, 7 + 4, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x1a9f62, -1
  9831. +   person_event SPRITE_FISHER, 11, 26, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a9f43, -1
  9832. +   person_event SPRITE_POLIWAG, 11, 27, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeladonCityPoliwrath, -1
  9833. +   person_event SPRITE_TEACHER, 24, 20, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x1a9f50, -1
  9834. +   person_event SPRITE_GRAMPS, 16, 14, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x1a9f53, -1
  9835. +   person_event SPRITE_GRAMPS, 31, 8, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrampsScript_0x1a9f56, -1
  9836. +   person_event SPRITE_YOUNGSTER, 13, 18, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x1a9f59, -1
  9837. +   person_event SPRITE_YOUNGSTER, 33, 24, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a9f5c, -1
  9838. +   person_event SPRITE_TEACHER, 14, 6, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a9f5f, -1
  9839. +   person_event SPRITE_LASS, 22, 7, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x1a9f62, -1
  9840. diff --git a/maps/CeladonDeptStore1F.asm b/maps/CeladonDeptStore1F.asm
  9841. index 527a5bf..3f8250c 100644
  9842. --- a/maps/CeladonDeptStore1F.asm
  9843. +++ b/maps/CeladonDeptStore1F.asm
  9844. @@ -89,6 +89,6 @@ CeladonDeptStore1F_MapEventHeader:
  9845.  
  9846.  .PersonEvents:
  9847.     db 3
  9848. -   person_event SPRITE_RECEPTIONIST, 1 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x709e0, -1
  9849. -   person_event SPRITE_GENTLEMAN, 4 + 4, 11 + 4, $2, 1, 1, -1, -1, 0, 0, 0, GentlemanScript_0x709e3, -1
  9850. -   person_event SPRITE_TEACHER, 3 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x709e6, -1
  9851. +   person_event SPRITE_RECEPTIONIST, 1, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x709e0, -1
  9852. +   person_event SPRITE_GENTLEMAN, 4, 11, $2, 1, 1, -1, -1, 0, 0, 0, GentlemanScript_0x709e3, -1
  9853. +   person_event SPRITE_TEACHER, 3, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x709e6, -1
  9854. diff --git a/maps/CeladonDeptStore2F.asm b/maps/CeladonDeptStore2F.asm
  9855. index b30e008..5124f6f 100644
  9856. --- a/maps/CeladonDeptStore2F.asm
  9857. +++ b/maps/CeladonDeptStore2F.asm
  9858. @@ -82,7 +82,7 @@ CeladonDeptStore2F_MapEventHeader:
  9859.  
  9860.  .PersonEvents:
  9861.     db 4
  9862. -   person_event SPRITE_CLERK, 5 + 4, 13 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70bad, -1
  9863. -   person_event SPRITE_CLERK, 5 + 4, 14 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70bb5, -1
  9864. -   person_event SPRITE_POKEFAN_M, 2 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x70bbd, -1
  9865. -   person_event SPRITE_YOUNGSTER, 2 + 4, 6 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x70bc0, -1
  9866. +   person_event SPRITE_CLERK, 5, 13, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70bad, -1
  9867. +   person_event SPRITE_CLERK, 5, 14, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70bb5, -1
  9868. +   person_event SPRITE_POKEFAN_M, 2, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x70bbd, -1
  9869. +   person_event SPRITE_YOUNGSTER, 2, 6, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x70bc0, -1
  9870. diff --git a/maps/CeladonDeptStore3F.asm b/maps/CeladonDeptStore3F.asm
  9871. index e751a9b..c36b713 100644
  9872. --- a/maps/CeladonDeptStore3F.asm
  9873. +++ b/maps/CeladonDeptStore3F.asm
  9874. @@ -107,8 +107,8 @@ CeladonDeptStore3F_MapEventHeader:
  9875.  
  9876.  .PersonEvents:
  9877.     db 5
  9878. -   person_event SPRITE_CLERK, 1 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70d29, -1
  9879. -   person_event SPRITE_YOUNGSTER, 4 + 4, 6 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x70d31, -1
  9880. -   person_event SPRITE_GAMEBOY_KID, 1 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GameboyKidScript_0x70d34, -1
  9881. -   person_event SPRITE_GAMEBOY_KID, 1 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GameboyKidScript_0x70d3f, -1
  9882. -   person_event SPRITE_SUPER_NERD, 4 + 4, 13 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x70d4a, -1
  9883. +   person_event SPRITE_CLERK, 1, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70d29, -1
  9884. +   person_event SPRITE_YOUNGSTER, 4, 6, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x70d31, -1
  9885. +   person_event SPRITE_GAMEBOY_KID, 1, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GameboyKidScript_0x70d34, -1
  9886. +   person_event SPRITE_GAMEBOY_KID, 1, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GameboyKidScript_0x70d3f, -1
  9887. +   person_event SPRITE_SUPER_NERD, 4, 13, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x70d4a, -1
  9888. diff --git a/maps/CeladonDeptStore4F.asm b/maps/CeladonDeptStore4F.asm
  9889. index 8940957..99741b4 100644
  9890. --- a/maps/CeladonDeptStore4F.asm
  9891. +++ b/maps/CeladonDeptStore4F.asm
  9892. @@ -65,6 +65,6 @@ CeladonDeptStore4F_MapEventHeader:
  9893.  
  9894.  .PersonEvents:
  9895.     db 3
  9896. -   person_event SPRITE_CLERK, 5 + 4, 13 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70f0d, -1
  9897. -   person_event SPRITE_SUPER_NERD, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x70f15, -1
  9898. -   person_event SPRITE_YOUNGSTER, 2 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x70f18, -1
  9899. +   person_event SPRITE_CLERK, 5, 13, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x70f0d, -1
  9900. +   person_event SPRITE_SUPER_NERD, 6, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x70f15, -1
  9901. +   person_event SPRITE_YOUNGSTER, 2, 8, $7, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x70f18, -1
  9902. diff --git a/maps/CeladonDeptStore5F.asm b/maps/CeladonDeptStore5F.asm
  9903. index 313ffb8..94af06d 100644
  9904. --- a/maps/CeladonDeptStore5F.asm
  9905. +++ b/maps/CeladonDeptStore5F.asm
  9906. @@ -84,8 +84,8 @@ CeladonDeptStore5F_MapEventHeader:
  9907.  
  9908.  .PersonEvents:
  9909.     db 5
  9910. -   person_event SPRITE_CLERK, 5 + 4, 7 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x71004, -1
  9911. -   person_event SPRITE_CLERK, 5 + 4, 8 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x7100c, -1
  9912. -   person_event SPRITE_GENTLEMAN, 5 + 4, 13 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x71014, -1
  9913. -   person_event SPRITE_SAILOR, 4 + 4, 3 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x71017, -1
  9914. -   person_event SPRITE_TEACHER, 7 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x7101a, -1
  9915. +   person_event SPRITE_CLERK, 5, 7, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x71004, -1
  9916. +   person_event SPRITE_CLERK, 5, 8, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ClerkScript_0x7100c, -1
  9917. +   person_event SPRITE_GENTLEMAN, 5, 13, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x71014, -1
  9918. +   person_event SPRITE_SAILOR, 4, 3, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x71017, -1
  9919. +   person_event SPRITE_TEACHER, 7, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x7101a, -1
  9920. diff --git a/maps/CeladonDeptStore6F.asm b/maps/CeladonDeptStore6F.asm
  9921. index 97c73b1..2eff882 100644
  9922. --- a/maps/CeladonDeptStore6F.asm
  9923. +++ b/maps/CeladonDeptStore6F.asm
  9924. @@ -168,5 +168,5 @@ CeladonDeptStore6F_MapEventHeader:
  9925.  
  9926.  .PersonEvents:
  9927.     db 2
  9928. -   person_event SPRITE_SUPER_NERD, 2 + 4, 9 + 4, $7, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7117a, -1
  9929. -   person_event SPRITE_YOUNGSTER, 5 + 4, 12 + 4, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x7117d, -1
  9930. +   person_event SPRITE_SUPER_NERD, 2, 9, $7, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7117a, -1
  9931. +   person_event SPRITE_YOUNGSTER, 5, 12, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x7117d, -1
  9932. diff --git a/maps/CeladonGameCorner.asm b/maps/CeladonGameCorner.asm
  9933. index ae6387b..4f4746f 100644
  9934. --- a/maps/CeladonGameCorner.asm
  9935. +++ b/maps/CeladonGameCorner.asm
  9936. @@ -325,12 +325,12 @@ CeladonGameCorner_MapEventHeader:
  9937.  
  9938.  .PersonEvents:
  9939.     db 9
  9940. -   person_event SPRITE_CLERK, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ClerkScript_0x7211d, -1
  9941. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x72120, -1
  9942. -   person_event SPRITE_POKEFAN_M, 10 + 4, 14 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x72123, -1
  9943. -   person_event SPRITE_TEACHER, 7 + 4, 17 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7212e, -1
  9944. -   person_event SPRITE_FISHING_GURU, 7 + 4, 11 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x72139, -1
  9945. -   person_event SPRITE_FISHER, 10 + 4, 8 + 4, $8, 0, 0, -1, 2, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x72144, -1
  9946. -   person_event SPRITE_FISHER, 10 + 4, 8 + 4, $8, 0, 0, -1, 4, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x72144, -1
  9947. -   person_event SPRITE_GYM_GUY, 3 + 4, 11 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CeladonGymGuyScript, -1
  9948. -   person_event SPRITE_GRAMPS, 8 + 4, 2 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x72190, -1
  9949. +   person_event SPRITE_CLERK, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ClerkScript_0x7211d, -1
  9950. +   person_event SPRITE_RECEPTIONIST, 2, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x72120, -1
  9951. +   person_event SPRITE_POKEFAN_M, 10, 14, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x72123, -1
  9952. +   person_event SPRITE_TEACHER, 7, 17, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7212e, -1
  9953. +   person_event SPRITE_FISHING_GURU, 7, 11, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x72139, -1
  9954. +   person_event SPRITE_FISHER, 10, 8, $8, 0, 0, -1, 2, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x72144, -1
  9955. +   person_event SPRITE_FISHER, 10, 8, $8, 0, 0, -1, 4, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x72144, -1
  9956. +   person_event SPRITE_GYM_GUY, 3, 11, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CeladonGymGuyScript, -1
  9957. +   person_event SPRITE_GRAMPS, 8, 2, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x72190, -1
  9958. diff --git a/maps/CeladonGameCornerPrizeRoom.asm b/maps/CeladonGameCornerPrizeRoom.asm
  9959. index 2be0d6a..83f92f2 100644
  9960. --- a/maps/CeladonGameCornerPrizeRoom.asm
  9961. +++ b/maps/CeladonGameCornerPrizeRoom.asm
  9962. @@ -284,5 +284,5 @@ CeladonGameCornerPrizeRoom_MapEventHeader:
  9963.  
  9964.  .PersonEvents:
  9965.     db 2
  9966. -   person_event SPRITE_GENTLEMAN, 2 + 4, 0 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x726e9, -1
  9967. -   person_event SPRITE_PHARMACIST, 4 + 4, 4 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PharmacistScript_0x726ec, -1
  9968. +   person_event SPRITE_GENTLEMAN, 2, 0, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x726e9, -1
  9969. +   person_event SPRITE_PHARMACIST, 4, 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PharmacistScript_0x726ec, -1
  9970. diff --git a/maps/CeladonGym.asm b/maps/CeladonGym.asm
  9971. index 63eb94a..d9128f8 100644
  9972. --- a/maps/CeladonGym.asm
  9973. +++ b/maps/CeladonGym.asm
  9974. @@ -278,9 +278,9 @@ CeladonGym_MapEventHeader:
  9975.  
  9976.  .PersonEvents:
  9977.     db 6
  9978. -   person_event SPRITE_ERIKA, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ErikaScript_0x72a6a, -1
  9979. -   person_event SPRITE_LASS, 8 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerLassMichelle, -1
  9980. -   person_event SPRITE_LASS, 8 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerTanya, -1
  9981. -   person_event SPRITE_BUENA, 5 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBeautyJulia, -1
  9982. -   person_event SPRITE_TWIN, 10 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsJoandzoe1, -1
  9983. -   person_event SPRITE_TWIN, 10 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsJoandzoe2, -1
  9984. +   person_event SPRITE_ERIKA, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ErikaScript_0x72a6a, -1
  9985. +   person_event SPRITE_LASS, 8, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerLassMichelle, -1
  9986. +   person_event SPRITE_LASS, 8, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerTanya, -1
  9987. +   person_event SPRITE_BUENA, 5, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBeautyJulia, -1
  9988. +   person_event SPRITE_TWIN, 10, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsJoandzoe1, -1
  9989. +   person_event SPRITE_TWIN, 10, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsJoandzoe2, -1
  9990. diff --git a/maps/CeladonMansion1F.asm b/maps/CeladonMansion1F.asm
  9991. index 40a963a..26a9a43 100644
  9992. --- a/maps/CeladonMansion1F.asm
  9993. +++ b/maps/CeladonMansion1F.asm
  9994. @@ -91,7 +91,7 @@ CeladonMansion1F_MapEventHeader:
  9995.  
  9996.  .PersonEvents:
  9997.     db 4
  9998. -   person_event SPRITE_GRANNY, 5 + 4, 1 + 4, $3, 0, 0, -1, -1, 0, 0, 0, CeladonMansionManager, -1
  9999. -   person_event SPRITE_GROWLITHE, 6 + 4, 2 + 4, $16, 0, 0, -1, -1, 0, 0, 0, CeladonMansion1FMeowth, -1
  10000. -   person_event SPRITE_CLEFAIRY, 4 + 4, 3 + 4, $16, 0, 0, -1, -1, 0, 0, 0, CeladonMansion1FClefairy, -1
  10001. -   person_event SPRITE_GROWLITHE, 4 + 4, 4 + 4, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeladonMansion1FNidoranF, -1
  10002. +   person_event SPRITE_GRANNY, 5, 1, $3, 0, 0, -1, -1, 0, 0, 0, CeladonMansionManager, -1
  10003. +   person_event SPRITE_GROWLITHE, 6, 2, $16, 0, 0, -1, -1, 0, 0, 0, CeladonMansion1FMeowth, -1
  10004. +   person_event SPRITE_CLEFAIRY, 4, 3, $16, 0, 0, -1, -1, 0, 0, 0, CeladonMansion1FClefairy, -1
  10005. +   person_event SPRITE_GROWLITHE, 4, 4, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeladonMansion1FNidoranF, -1
  10006. diff --git a/maps/CeladonMansion3F.asm b/maps/CeladonMansion3F.asm
  10007. index abe7c7b..5e12a63 100644
  10008. --- a/maps/CeladonMansion3F.asm
  10009. +++ b/maps/CeladonMansion3F.asm
  10010. @@ -206,7 +206,7 @@ CeladonMansion3F_MapEventHeader:
  10011.  
  10012.  .PersonEvents:
  10013.     db 4
  10014. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 3 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x71670, -1
  10015. -   person_event SPRITE_GYM_GUY, 4 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x71696, -1
  10016. -   person_event SPRITE_SUPER_NERD, 7 + 4, 0 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x716bc, -1
  10017. -   person_event SPRITE_FISHER, 4 + 4, 0 + 4, $7, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x716bf, -1
  10018. +   person_event SPRITE_COOLTRAINER_M, 6, 3, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x71670, -1
  10019. +   person_event SPRITE_GYM_GUY, 4, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x71696, -1
  10020. +   person_event SPRITE_SUPER_NERD, 7, 0, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x716bc, -1
  10021. +   person_event SPRITE_FISHER, 4, 0, $7, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x716bf, -1
  10022. diff --git a/maps/CeladonMansionRoof.asm b/maps/CeladonMansionRoof.asm
  10023. index f2a39e9..b2b4f2b 100644
  10024. --- a/maps/CeladonMansionRoof.asm
  10025. +++ b/maps/CeladonMansionRoof.asm
  10026. @@ -49,4 +49,4 @@ CeladonMansionRoof_MapEventHeader:
  10027.  
  10028.  .PersonEvents:
  10029.     db 1
  10030. -   person_event SPRITE_FISHER, 5 + 4, 7 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x71a39, -1
  10031. +   person_event SPRITE_FISHER, 5, 7, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x71a39, -1
  10032. diff --git a/maps/CeladonMansionRoofHouse.asm b/maps/CeladonMansionRoofHouse.asm
  10033. index 62b2bef..cc89ba5 100644
  10034. --- a/maps/CeladonMansionRoofHouse.asm
  10035. +++ b/maps/CeladonMansionRoofHouse.asm
  10036. @@ -130,4 +130,4 @@ CeladonMansionRoofHouse_MapEventHeader:
  10037.  
  10038.  .PersonEvents:
  10039.     db 1
  10040. -   person_event SPRITE_PHARMACIST, 2 + 4, 3 + 4, $6, 2, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PharmacistScript_0x71afd, -1
  10041. +   person_event SPRITE_PHARMACIST, 2, 3, $6, 2, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PharmacistScript_0x71afd, -1
  10042. diff --git a/maps/CeladonPokeCenter1F.asm b/maps/CeladonPokeCenter1F.asm
  10043. index 3f83b40..8142d0d 100644
  10044. --- a/maps/CeladonPokeCenter1F.asm
  10045. +++ b/maps/CeladonPokeCenter1F.asm
  10046. @@ -156,8 +156,8 @@ CeladonPokeCenter1F_MapEventHeader:
  10047.  
  10048.  .PersonEvents:
  10049.     db 5
  10050. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x71e22, -1
  10051. -   person_event SPRITE_GENTLEMAN, 5 + 4, 1 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GentlemanScript_0x71e25, -1
  10052. -   person_event SPRITE_PHARMACIST, 3 + 4, 0 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PharmacistScript_0x71e2b, -1
  10053. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 8 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x71e28, -1
  10054. -   person_event SPRITE_SUPER_NERD, 3 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x71e2e, EVENT_SET_WHEN_FOUGHT_HO_OH
  10055. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x71e22, -1
  10056. +   person_event SPRITE_GENTLEMAN, 5, 1, $5, 0, 1, -1, -1, 0, 0, 0, GentlemanScript_0x71e25, -1
  10057. +   person_event SPRITE_PHARMACIST, 3, 0, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PharmacistScript_0x71e2b, -1
  10058. +   person_event SPRITE_COOLTRAINER_F, 6, 8, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x71e28, -1
  10059. +   person_event SPRITE_SUPER_NERD, 3, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x71e2e, EVENT_SET_WHEN_FOUGHT_HO_OH
  10060. diff --git a/maps/CeruleanCity.asm b/maps/CeruleanCity.asm
  10061. index 20e6adf..ce2c1eb 100644
  10062. --- a/maps/CeruleanCity.asm
  10063. +++ b/maps/CeruleanCity.asm
  10064. @@ -299,9 +299,9 @@ CeruleanCity_MapEventHeader:
  10065.  
  10066.  .PersonEvents:
  10067.     db 6
  10068. -   person_event SPRITE_COOLTRAINER_M, 23 + 4, 15 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerMScript_0x184009, -1
  10069. -   person_event SPRITE_SUPER_NERD, 15 + 4, 23 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x18401d, -1
  10070. -   person_event SPRITE_SLOWPOKE, 24 + 4, 20 + 4, $1, 0, 0, -1, -1, 0, 0, 0, CeruleanCitySlowbro, -1
  10071. -   person_event SPRITE_COOLTRAINER_F, 24 + 4, 21 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18402a, -1
  10072. -   person_event SPRITE_FISHER, 26 + 4, 30 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x18404a, -1
  10073. -   person_event SPRITE_YOUNGSTER, 12 + 4, 6 + 4, $3, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x184064, -1
  10074. +   person_event SPRITE_COOLTRAINER_M, 23, 15, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerMScript_0x184009, -1
  10075. +   person_event SPRITE_SUPER_NERD, 15, 23, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x18401d, -1
  10076. +   person_event SPRITE_SLOWPOKE, 24, 20, $1, 0, 0, -1, -1, 0, 0, 0, CeruleanCitySlowbro, -1
  10077. +   person_event SPRITE_COOLTRAINER_F, 24, 21, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18402a, -1
  10078. +   person_event SPRITE_FISHER, 26, 30, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x18404a, -1
  10079. +   person_event SPRITE_YOUNGSTER, 12, 6, $3, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x184064, -1
  10080. diff --git a/maps/CeruleanGym.asm b/maps/CeruleanGym.asm
  10081. index 560e9ab..6907f58 100644
  10082. --- a/maps/CeruleanGym.asm
  10083. +++ b/maps/CeruleanGym.asm
  10084. @@ -377,9 +377,9 @@ CeruleanGym_MapEventHeader:
  10085.  
  10086.  .PersonEvents:
  10087.     db 6
  10088. -   person_event SPRITE_ROCKET, 10 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_CERULEAN_GYM_ROCKET
  10089. -   person_event SPRITE_MISTY, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MistyScript_0x188432, EVENT_TRAINERS_IN_CERULEAN_GYM
  10090. -   person_event SPRITE_SWIMMER_GIRL, 6 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfDiana, EVENT_TRAINERS_IN_CERULEAN_GYM
  10091. -   person_event SPRITE_SWIMMER_GIRL, 9 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerSwimmerfBriana, EVENT_TRAINERS_IN_CERULEAN_GYM
  10092. -   person_event SPRITE_SWIMMER_GUY, 9 + 4, 8 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermParker, EVENT_TRAINERS_IN_CERULEAN_GYM
  10093. -   person_event SPRITE_GYM_GUY, 13 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeruleanGymGuyScript, EVENT_TRAINERS_IN_CERULEAN_GYM
  10094. +   person_event SPRITE_ROCKET, 10, 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_CERULEAN_GYM_ROCKET
  10095. +   person_event SPRITE_MISTY, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MistyScript_0x188432, EVENT_TRAINERS_IN_CERULEAN_GYM
  10096. +   person_event SPRITE_SWIMMER_GIRL, 6, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfDiana, EVENT_TRAINERS_IN_CERULEAN_GYM
  10097. +   person_event SPRITE_SWIMMER_GIRL, 9, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerSwimmerfBriana, EVENT_TRAINERS_IN_CERULEAN_GYM
  10098. +   person_event SPRITE_SWIMMER_GUY, 9, 8, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermParker, EVENT_TRAINERS_IN_CERULEAN_GYM
  10099. +   person_event SPRITE_GYM_GUY, 13, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CeruleanGymGuyScript, EVENT_TRAINERS_IN_CERULEAN_GYM
  10100. diff --git a/maps/CeruleanGymBadgeSpeechHouse.asm b/maps/CeruleanGymBadgeSpeechHouse.asm
  10101. index c7675f7..6697c42 100644
  10102. --- a/maps/CeruleanGymBadgeSpeechHouse.asm
  10103. +++ b/maps/CeruleanGymBadgeSpeechHouse.asm
  10104. @@ -30,4 +30,4 @@ CeruleanGymBadgeSpeechHouse_MapEventHeader:
  10105.  
  10106.  .PersonEvents:
  10107.     db 1
  10108. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x188002, -1
  10109. +   person_event SPRITE_POKEFAN_M, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x188002, -1
  10110. diff --git a/maps/CeruleanMart.asm b/maps/CeruleanMart.asm
  10111. index 6116afd..e1824e5 100644
  10112. --- a/maps/CeruleanMart.asm
  10113. +++ b/maps/CeruleanMart.asm
  10114. @@ -57,6 +57,6 @@ CeruleanMart_MapEventHeader:
  10115.  
  10116.  .PersonEvents:
  10117.     db 3
  10118. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x188ac0, -1
  10119. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerMScript_0x188ac7, -1
  10120. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x188aca, -1
  10121. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x188ac0, -1
  10122. +   person_event SPRITE_COOLTRAINER_M, 6, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerMScript_0x188ac7, -1
  10123. +   person_event SPRITE_COOLTRAINER_F, 2, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x188aca, -1
  10124. diff --git a/maps/CeruleanPokeCenter1F.asm b/maps/CeruleanPokeCenter1F.asm
  10125. index d47a458..ea636a3 100644
  10126. --- a/maps/CeruleanPokeCenter1F.asm
  10127. +++ b/maps/CeruleanPokeCenter1F.asm
  10128. @@ -75,6 +75,6 @@ CeruleanPokeCenter1F_MapEventHeader:
  10129.  
  10130.  .PersonEvents:
  10131.     db 3
  10132. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18820f, -1
  10133. -   person_event SPRITE_SUPER_NERD, 4 + 4, 8 + 4, $5, 0, 1, -1, -1, 0, 0, 0, SuperNerdScript_0x188212, -1
  10134. -   person_event SPRITE_GYM_GUY, 5 + 4, 1 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x18821e, -1
  10135. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18820f, -1
  10136. +   person_event SPRITE_SUPER_NERD, 4, 8, $5, 0, 1, -1, -1, 0, 0, 0, SuperNerdScript_0x188212, -1
  10137. +   person_event SPRITE_GYM_GUY, 5, 1, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x18821e, -1
  10138. diff --git a/maps/CeruleanPoliceStation.asm b/maps/CeruleanPoliceStation.asm
  10139. index 77274d3..a79a679 100644
  10140. --- a/maps/CeruleanPoliceStation.asm
  10141. +++ b/maps/CeruleanPoliceStation.asm
  10142. @@ -55,6 +55,6 @@ CeruleanPoliceStation_MapEventHeader:
  10143.  
  10144.  .PersonEvents:
  10145.     db 3
  10146. -   person_event SPRITE_FISHING_GURU, 1 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x18804a, -1
  10147. -   person_event SPRITE_POKEFAN_F, 4 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x18804d, -1
  10148. -   person_event SPRITE_DIGLETT, 5 + 4, 3 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, DiglettScript_0x188050, -1
  10149. +   person_event SPRITE_FISHING_GURU, 1, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x18804a, -1
  10150. +   person_event SPRITE_POKEFAN_F, 4, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x18804d, -1
  10151. +   person_event SPRITE_DIGLETT, 5, 3, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, DiglettScript_0x188050, -1
  10152. diff --git a/maps/CeruleanTradeSpeechHouse.asm b/maps/CeruleanTradeSpeechHouse.asm
  10153. index 0b0a775..aa063b1 100644
  10154. --- a/maps/CeruleanTradeSpeechHouse.asm
  10155. +++ b/maps/CeruleanTradeSpeechHouse.asm
  10156. @@ -64,7 +64,7 @@ CeruleanTradeSpeechHouse_MapEventHeader:
  10157.  
  10158.  .PersonEvents:
  10159.     db 4
  10160. -   person_event SPRITE_GRANNY, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrannyScript_0x188133, -1
  10161. -   person_event SPRITE_GRAMPS, 2 + 4, 1 + 4, $2, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x188136, -1
  10162. -   person_event SPRITE_RHYDON, 2 + 4, 5 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, RhydonScript_0x188139, -1
  10163. -   person_event SPRITE_ZUBAT, 6 + 4, 5 + 4, $16, 0, 0, -1, -1, 0, 0, 0, ZubatScript_0x188143, -1
  10164. +   person_event SPRITE_GRANNY, 4, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrannyScript_0x188133, -1
  10165. +   person_event SPRITE_GRAMPS, 2, 1, $2, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x188136, -1
  10166. +   person_event SPRITE_RHYDON, 2, 5, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, RhydonScript_0x188139, -1
  10167. +   person_event SPRITE_ZUBAT, 6, 5, $16, 0, 0, -1, -1, 0, 0, 0, ZubatScript_0x188143, -1
  10168. diff --git a/maps/CharcoalKiln.asm b/maps/CharcoalKiln.asm
  10169. index 46b96c8..7cd0bbc 100644
  10170. --- a/maps/CharcoalKiln.asm
  10171. +++ b/maps/CharcoalKiln.asm
  10172. @@ -163,6 +163,6 @@ CharcoalKiln_MapEventHeader:
  10173.  
  10174.  .PersonEvents:
  10175.     db 3
  10176. -   person_event SPRITE_BLACK_BELT, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, CharcoalKilnBoss, EVENT_CHARCOAL_KILN_BOSS
  10177. -   person_event SPRITE_YOUNGSTER, 3 + 4, 5 + 4, $2, 1, 1, -1, -1, 0, 0, 0, CharcoalKilnApprentice, EVENT_CHARCOAL_KILN_APPRENTICE
  10178. -   person_event SPRITE_MOLTRES, 6 + 4, 5 + 4, $16, 2, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CharcoalKilnFarfetchd, EVENT_CHARCOAL_KILN_FARFETCH_D
  10179. +   person_event SPRITE_BLACK_BELT, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, CharcoalKilnBoss, EVENT_CHARCOAL_KILN_BOSS
  10180. +   person_event SPRITE_YOUNGSTER, 3, 5, $2, 1, 1, -1, -1, 0, 0, 0, CharcoalKilnApprentice, EVENT_CHARCOAL_KILN_APPRENTICE
  10181. +   person_event SPRITE_MOLTRES, 6, 5, $16, 2, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CharcoalKilnFarfetchd, EVENT_CHARCOAL_KILN_FARFETCH_D
  10182. diff --git a/maps/CherrygroveCity.asm b/maps/CherrygroveCity.asm
  10183. index 7e80252..f90c6f4 100644
  10184. --- a/maps/CherrygroveCity.asm
  10185. +++ b/maps/CherrygroveCity.asm
  10186. @@ -570,8 +570,8 @@ CherrygroveCity_MapEventHeader:
  10187.  
  10188.  .PersonEvents:
  10189.     db 5
  10190. -   person_event SPRITE_GRAMPS, 6 + 4, 32 + 4, $6, 0, 0, -1, -1, 0, 0, 0, CherrygroveCityGuideGent, EVENT_GUIDE_GENT_IN_HIS_HOUSE
  10191. -   person_event SPRITE_SILVER, 6 + 4, 39 + 4, $3, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_CHERRYGROVE_CITY
  10192. -   person_event SPRITE_TEACHER, 12 + 4, 27 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x19c146, -1
  10193. -   person_event SPRITE_YOUNGSTER, 7 + 4, 23 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x19c15a, -1
  10194. -   person_event SPRITE_FISHER, 12 + 4, 7 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, MysticWaterGuy, -1
  10195. +   person_event SPRITE_GRAMPS, 6, 32, $6, 0, 0, -1, -1, 0, 0, 0, CherrygroveCityGuideGent, EVENT_GUIDE_GENT_IN_HIS_HOUSE
  10196. +   person_event SPRITE_SILVER, 6, 39, $3, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_CHERRYGROVE_CITY
  10197. +   person_event SPRITE_TEACHER, 12, 27, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x19c146, -1
  10198. +   person_event SPRITE_YOUNGSTER, 7, 23, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x19c15a, -1
  10199. +   person_event SPRITE_FISHER, 12, 7, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, MysticWaterGuy, -1
  10200. diff --git a/maps/CherrygroveEvolutionSpeechHouse.asm b/maps/CherrygroveEvolutionSpeechHouse.asm
  10201. index a69be8b..028842e 100644
  10202. --- a/maps/CherrygroveEvolutionSpeechHouse.asm
  10203. +++ b/maps/CherrygroveEvolutionSpeechHouse.asm
  10204. @@ -56,5 +56,5 @@ CherrygroveEvolutionSpeechHouse_MapEventHeader:
  10205.  
  10206.  .PersonEvents:
  10207.     db 2
  10208. -   person_event SPRITE_LASS, 5 + 4, 3 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x196cb9, -1
  10209. -   person_event SPRITE_YOUNGSTER, 5 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x196cb2, -1
  10210. +   person_event SPRITE_LASS, 5, 3, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x196cb9, -1
  10211. +   person_event SPRITE_YOUNGSTER, 5, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x196cb2, -1
  10212. diff --git a/maps/CherrygroveGymSpeechHouse.asm b/maps/CherrygroveGymSpeechHouse.asm
  10213. index e550c7f..852d2c3 100644
  10214. --- a/maps/CherrygroveGymSpeechHouse.asm
  10215. +++ b/maps/CherrygroveGymSpeechHouse.asm
  10216. @@ -59,5 +59,5 @@ CherrygroveGymSpeechHouse_MapEventHeader:
  10217.  
  10218.  .PersonEvents:
  10219.     db 2
  10220. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x196ae1, -1
  10221. -   person_event SPRITE_BUG_CATCHER, 5 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x196ae4, -1
  10222. +   person_event SPRITE_POKEFAN_M, 3, 2, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x196ae1, -1
  10223. +   person_event SPRITE_BUG_CATCHER, 5, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x196ae4, -1
  10224. diff --git a/maps/CherrygroveMart.asm b/maps/CherrygroveMart.asm
  10225. index 477668a..7c35c3b 100644
  10226. --- a/maps/CherrygroveMart.asm
  10227. +++ b/maps/CherrygroveMart.asm
  10228. @@ -83,6 +83,6 @@ CherrygroveMart_MapEventHeader:
  10229.  
  10230.  .PersonEvents:
  10231.     db 3
  10232. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x19680a, -1
  10233. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 7 + 4, $5, 0, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x19681d, -1
  10234. -   person_event SPRITE_YOUNGSTER, 5 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x196831, -1
  10235. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x19680a, -1
  10236. +   person_event SPRITE_COOLTRAINER_M, 6, 7, $5, 0, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x19681d, -1
  10237. +   person_event SPRITE_YOUNGSTER, 5, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x196831, -1
  10238. diff --git a/maps/CherrygrovePokeCenter1F.asm b/maps/CherrygrovePokeCenter1F.asm
  10239. index dde5aba..4b250f2 100644
  10240. --- a/maps/CherrygrovePokeCenter1F.asm
  10241. +++ b/maps/CherrygrovePokeCenter1F.asm
  10242. @@ -80,7 +80,7 @@ CherrygrovePokeCenter1F_MapEventHeader:
  10243.  
  10244.  .PersonEvents:
  10245.     db 4
  10246. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x19696d, -1
  10247. -   person_event SPRITE_FISHER, 3 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x196970, -1
  10248. -   person_event SPRITE_GENTLEMAN, 6 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x196973, -1
  10249. -   person_event SPRITE_TEACHER, 6 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x196976, -1
  10250. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x19696d, -1
  10251. +   person_event SPRITE_FISHER, 3, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x196970, -1
  10252. +   person_event SPRITE_GENTLEMAN, 6, 8, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x196973, -1
  10253. +   person_event SPRITE_TEACHER, 6, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x196976, -1
  10254. diff --git a/maps/CianwoodCity.asm b/maps/CianwoodCity.asm
  10255. index 29daf53..1efd4ff 100644
  10256. --- a/maps/CianwoodCity.asm
  10257. +++ b/maps/CianwoodCity.asm
  10258. @@ -401,15 +401,15 @@ CianwoodCity_MapEventHeader:
  10259.  
  10260.  .PersonEvents:
  10261.     db 12
  10262. -   person_event SPRITE_STANDING_YOUNGSTER, 37 + 4, 21 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, StandingYoungsterScript_0x1a00b3, -1
  10263. -   person_event SPRITE_POKEFAN_M, 33 + 4, 17 + 4, $5, 0, 1, -1, -1, 0, 0, 0, PokefanMScript_0x1a00b6, -1
  10264. -   person_event SPRITE_LASS, 42 + 4, 14 + 4, $4, 2, 0, -1, -1, 0, 0, 0, LassScript_0x1a00b9, -1
  10265. -   person_event SPRITE_ROCK, 16 + 4, 8 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10266. -   person_event SPRITE_ROCK, 17 + 4, 9 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10267. -   person_event SPRITE_ROCK, 25 + 4, 4 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10268. -   person_event SPRITE_ROCK, 29 + 4, 5 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10269. -   person_event SPRITE_ROCK, 27 + 4, 10 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10270. -   person_event SPRITE_ROCK, 19 + 4, 4 + 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10271. -   person_event SPRITE_POKEFAN_F, 46 + 4, 10 + 4, $5, 0, 1, -1, -1, 0, 0, 0, PokefanFScript_0x1a0084, -1
  10272. -   person_event SPRITE_SUPER_NERD, 21 + 4, 11 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_CIANWOOD_CITY_EUSINE
  10273. -   person_event SPRITE_SUICUNE, 14 + 4, 10 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
  10274. +   person_event SPRITE_STANDING_YOUNGSTER, 37, 21, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, StandingYoungsterScript_0x1a00b3, -1
  10275. +   person_event SPRITE_POKEFAN_M, 33, 17, $5, 0, 1, -1, -1, 0, 0, 0, PokefanMScript_0x1a00b6, -1
  10276. +   person_event SPRITE_LASS, 42, 14, $4, 2, 0, -1, -1, 0, 0, 0, LassScript_0x1a00b9, -1
  10277. +   person_event SPRITE_ROCK, 16, 8, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10278. +   person_event SPRITE_ROCK, 17, 9, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10279. +   person_event SPRITE_ROCK, 25, 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10280. +   person_event SPRITE_ROCK, 29, 5, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10281. +   person_event SPRITE_ROCK, 27, 10, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10282. +   person_event SPRITE_ROCK, 19, 4, $18, 0, 0, -1, -1, 0, 0, 0, CianwoodCityRock, -1
  10283. +   person_event SPRITE_POKEFAN_F, 46, 10, $5, 0, 1, -1, -1, 0, 0, 0, PokefanFScript_0x1a0084, -1
  10284. +   person_event SPRITE_SUPER_NERD, 21, 11, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_CIANWOOD_CITY_EUSINE
  10285. +   person_event SPRITE_SUICUNE, 14, 10, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
  10286. diff --git a/maps/CianwoodCityPhotoStudio.asm b/maps/CianwoodCityPhotoStudio.asm
  10287. index 6e934e5..773c823 100644
  10288. --- a/maps/CianwoodCityPhotoStudio.asm
  10289. +++ b/maps/CianwoodCityPhotoStudio.asm
  10290. @@ -62,4 +62,4 @@ CianwoodCityPhotoStudio_MapEventHeader:
  10291.  
  10292.  .PersonEvents:
  10293.     db 1
  10294. -   person_event SPRITE_FISHING_GURU, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x9e0e0, -1
  10295. +   person_event SPRITE_FISHING_GURU, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x9e0e0, -1
  10296. diff --git a/maps/CianwoodGym.asm b/maps/CianwoodGym.asm
  10297. index 1e6044d..4f66a26 100644
  10298. --- a/maps/CianwoodGym.asm
  10299. +++ b/maps/CianwoodGym.asm
  10300. @@ -313,12 +313,12 @@ CianwoodGym_MapEventHeader:
  10301.  
  10302.  .PersonEvents:
  10303.     db 9
  10304. -   person_event SPRITE_CHUCK, 1 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ChuckScript_0x9d60f, -1
  10305. -   person_event SPRITE_BLACK_BELT, 12 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltYoshi, -1
  10306. -   person_event SPRITE_BLACK_BELT, 12 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltLao, -1
  10307. -   person_event SPRITE_BLACK_BELT, 9 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBlackbeltNob, -1
  10308. -   person_event SPRITE_BLACK_BELT, 5 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerBlackbeltLung, -1
  10309. -   person_event SPRITE_BOULDER, 1 + 4, 5 + 4, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10310. -   person_event SPRITE_BOULDER, 7 + 4, 3 + 4, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10311. -   person_event SPRITE_BOULDER, 7 + 4, 4 + 4, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10312. -   person_event SPRITE_BOULDER, 7 + 4, 5 + 4, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10313. +   person_event SPRITE_CHUCK, 1, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ChuckScript_0x9d60f, -1
  10314. +   person_event SPRITE_BLACK_BELT, 12, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltYoshi, -1
  10315. +   person_event SPRITE_BLACK_BELT, 12, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltLao, -1
  10316. +   person_event SPRITE_BLACK_BELT, 9, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBlackbeltNob, -1
  10317. +   person_event SPRITE_BLACK_BELT, 5, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerBlackbeltLung, -1
  10318. +   person_event SPRITE_BOULDER, 1, 5, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10319. +   person_event SPRITE_BOULDER, 7, 3, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10320. +   person_event SPRITE_BOULDER, 7, 4, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10321. +   person_event SPRITE_BOULDER, 7, 5, $19, 0, 0, -1, -1, 0, 0, 0, CianwoodGymBoulder, -1
  10322. diff --git a/maps/CianwoodLugiaSpeechHouse.asm b/maps/CianwoodLugiaSpeechHouse.asm
  10323. index 052eaf9..ee69203 100644
  10324. --- a/maps/CianwoodLugiaSpeechHouse.asm
  10325. +++ b/maps/CianwoodLugiaSpeechHouse.asm
  10326. @@ -75,6 +75,6 @@ CianwoodLugiaSpeechHouse_MapEventHeader:
  10327.  
  10328.  .PersonEvents:
  10329.     db 3
  10330. -   person_event SPRITE_TEACHER, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9e1b0, -1
  10331. -   person_event SPRITE_LASS, 5 + 4, 6 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9e1b3, -1
  10332. -   person_event SPRITE_TWIN, 2 + 4, 0 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TwinScript_0x9e1b6, -1
  10333. +   person_event SPRITE_TEACHER, 4, 2, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9e1b0, -1
  10334. +   person_event SPRITE_LASS, 5, 6, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9e1b3, -1
  10335. +   person_event SPRITE_TWIN, 2, 0, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TwinScript_0x9e1b6, -1
  10336. diff --git a/maps/CianwoodPharmacy.asm b/maps/CianwoodPharmacy.asm
  10337. index f3d68c9..8d09c50 100644
  10338. --- a/maps/CianwoodPharmacy.asm
  10339. +++ b/maps/CianwoodPharmacy.asm
  10340. @@ -90,4 +90,4 @@ CianwoodPharmacy_MapEventHeader:
  10341.  
  10342.  .PersonEvents:
  10343.     db 1
  10344. -   person_event SPRITE_PHARMACIST, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CianwoodPharmacist, -1
  10345. +   person_event SPRITE_PHARMACIST, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CianwoodPharmacist, -1
  10346. diff --git a/maps/CianwoodPokeCenter1F.asm b/maps/CianwoodPokeCenter1F.asm
  10347. index 06224d6..e2c4dce 100644
  10348. --- a/maps/CianwoodPokeCenter1F.asm
  10349. +++ b/maps/CianwoodPokeCenter1F.asm
  10350. @@ -143,7 +143,7 @@ CianwoodPokeCenter1F_MapEventHeader:
  10351.  
  10352.  .PersonEvents:
  10353.     db 4
  10354. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9dbcf, -1
  10355. -   person_event SPRITE_LASS, 5 + 4, 1 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9dbd2, -1
  10356. -   person_event SPRITE_GYM_GUY, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CianwoodGymGuyScript, -1
  10357. -   person_event SPRITE_SUPER_NERD, 6 + 4, 8 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x9dbea, -1
  10358. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9dbcf, -1
  10359. +   person_event SPRITE_LASS, 5, 1, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9dbd2, -1
  10360. +   person_event SPRITE_GYM_GUY, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CianwoodGymGuyScript, -1
  10361. +   person_event SPRITE_SUPER_NERD, 6, 8, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x9dbea, -1
  10362. diff --git a/maps/CinnabarIsland.asm b/maps/CinnabarIsland.asm
  10363. index 8e81489..871be40 100644
  10364. --- a/maps/CinnabarIsland.asm
  10365. +++ b/maps/CinnabarIsland.asm
  10366. @@ -146,4 +146,4 @@ CinnabarIsland_MapEventHeader:
  10367.  
  10368.  .PersonEvents:
  10369.     db 1
  10370. -   person_event SPRITE_BLUE, 6 + 4, 9 + 4, $3, 0, 0, -1, -1, 0, 0, 0, CinnabarIslandBlue, EVENT_BLUE_IN_CINNABAR
  10371. +   person_event SPRITE_BLUE, 6, 9, $3, 0, 0, -1, -1, 0, 0, 0, CinnabarIslandBlue, EVENT_BLUE_IN_CINNABAR
  10372. diff --git a/maps/CinnabarPokeCenter1F.asm b/maps/CinnabarPokeCenter1F.asm
  10373. index b036fbe..14f300c 100644
  10374. --- a/maps/CinnabarPokeCenter1F.asm
  10375. +++ b/maps/CinnabarPokeCenter1F.asm
  10376. @@ -47,6 +47,6 @@ CinnabarPokeCenter1F_MapEventHeader:
  10377.  
  10378.  .PersonEvents:
  10379.     db 3
  10380. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1ab32c, -1
  10381. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x1ab32f, -1
  10382. -   person_event SPRITE_FISHER, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1ab332, -1
  10383. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1ab32c, -1
  10384. +   person_event SPRITE_COOLTRAINER_F, 6, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x1ab32f, -1
  10385. +   person_event SPRITE_FISHER, 4, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1ab332, -1
  10386. diff --git a/maps/Colosseum.asm b/maps/Colosseum.asm
  10387. index e08aa2e..c77512f 100644
  10388. --- a/maps/Colosseum.asm
  10389. +++ b/maps/Colosseum.asm
  10390. @@ -83,5 +83,5 @@ Colosseum_MapEventHeader:
  10391.  
  10392.  .PersonEvents:
  10393.     db 2
  10394. -   person_event SPRITE_CHRIS, 4 + 4, 3 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_GAVE_KURT_APRICORNS
  10395. -   person_event SPRITE_CHRIS, 4 + 4, 6 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_RECEIVED_BALLS_FROM_KURT
  10396. +   person_event SPRITE_CHRIS, 4, 3, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_GAVE_KURT_APRICORNS
  10397. +   person_event SPRITE_CHRIS, 4, 6, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_RECEIVED_BALLS_FROM_KURT
  10398. diff --git a/maps/CopycatsHouse1F.asm b/maps/CopycatsHouse1F.asm
  10399. index 68e8029..4eb7919 100644
  10400. --- a/maps/CopycatsHouse1F.asm
  10401. +++ b/maps/CopycatsHouse1F.asm
  10402. @@ -85,6 +85,6 @@ CopycatsHouse1F_MapEventHeader:
  10403.  
  10404.  .PersonEvents:
  10405.     db 3
  10406. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x18ad13, -1
  10407. -   person_event SPRITE_POKEFAN_F, 4 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PokefanFScript_0x18ad16, -1
  10408. -   person_event SPRITE_CLEFAIRY, 6 + 4, 6 + 4, $16, 0, 0, -1, -1, 0, 0, 0, ClefairyScript_0x18ad2a, -1
  10409. +   person_event SPRITE_POKEFAN_M, 3, 2, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x18ad13, -1
  10410. +   person_event SPRITE_POKEFAN_F, 4, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, PokefanFScript_0x18ad16, -1
  10411. +   person_event SPRITE_CLEFAIRY, 6, 6, $16, 0, 0, -1, -1, 0, 0, 0, ClefairyScript_0x18ad2a, -1
  10412. diff --git a/maps/CopycatsHouse2F.asm b/maps/CopycatsHouse2F.asm
  10413. index 0f9e16f..b4e608c 100644
  10414. --- a/maps/CopycatsHouse2F.asm
  10415. +++ b/maps/CopycatsHouse2F.asm
  10416. @@ -373,9 +373,9 @@ CopycatsHouse2F_MapEventHeader:
  10417.  
  10418.  .PersonEvents:
  10419.     db 6
  10420. -   person_event SPRITE_COPYCAT, 3 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Copycat, EVENT_COPYCAT_1
  10421. -   person_event SPRITE_MOLTRES, 4 + 4, 6 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CopycatsDodrio, -1
  10422. -   person_event SPRITE_FAIRY, 1 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CopycatsHouse2FDoll, EVENT_COPYCATS_HOUSE_2F_DOLL
  10423. -   person_event SPRITE_MONSTER, 1 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CopycatsHouse2FDoll, -1
  10424. -   person_event SPRITE_BIRD, 1 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CopycatsHouse2FDoll, -1
  10425. -   person_event SPRITE_COPYCAT, 3 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, Copycat, EVENT_COPYCAT_2
  10426. +   person_event SPRITE_COPYCAT, 3, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Copycat, EVENT_COPYCAT_1
  10427. +   person_event SPRITE_MOLTRES, 4, 6, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CopycatsDodrio, -1
  10428. +   person_event SPRITE_FAIRY, 1, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CopycatsHouse2FDoll, EVENT_COPYCATS_HOUSE_2F_DOLL
  10429. +   person_event SPRITE_MONSTER, 1, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CopycatsHouse2FDoll, -1
  10430. +   person_event SPRITE_BIRD, 1, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CopycatsHouse2FDoll, -1
  10431. +   person_event SPRITE_COPYCAT, 3, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, Copycat, EVENT_COPYCAT_2
  10432. diff --git a/maps/DanceTheatre.asm b/maps/DanceTheatre.asm
  10433. index d206bd2..4824e67 100644
  10434. --- a/maps/DanceTheatre.asm
  10435. +++ b/maps/DanceTheatre.asm
  10436. @@ -345,12 +345,12 @@ DanceTheatre_MapEventHeader:
  10437.  
  10438.  .PersonEvents:
  10439.     db 9
  10440. -   person_event SPRITE_KIMONO_GIRL, 2 + 4, 0 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerKimono_girlNaoko2, -1
  10441. -   person_event SPRITE_KIMONO_GIRL, 1 + 4, 2 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerKimono_girlSayo, -1
  10442. -   person_event SPRITE_KIMONO_GIRL, 2 + 4, 6 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerKimono_girlZuki, -1
  10443. -   person_event SPRITE_KIMONO_GIRL, 1 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerKimono_girlKuni, -1
  10444. -   person_event SPRITE_KIMONO_GIRL, 2 + 4, 11 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerKimono_girlMiki, -1
  10445. -   person_event SPRITE_GENTLEMAN, 10 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x994c6, -1
  10446. -   person_event SPRITE_RHYDON, 8 + 4, 6 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RhydonScript_0x9951b, -1
  10447. -   person_event SPRITE_COOLTRAINER_M, 10 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x99525, -1
  10448. -   person_event SPRITE_GRANNY, 6 + 4, 3 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x99528, -1
  10449. +   person_event SPRITE_KIMONO_GIRL, 2, 0, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerKimono_girlNaoko2, -1
  10450. +   person_event SPRITE_KIMONO_GIRL, 1, 2, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerKimono_girlSayo, -1
  10451. +   person_event SPRITE_KIMONO_GIRL, 2, 6, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerKimono_girlZuki, -1
  10452. +   person_event SPRITE_KIMONO_GIRL, 1, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerKimono_girlKuni, -1
  10453. +   person_event SPRITE_KIMONO_GIRL, 2, 11, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerKimono_girlMiki, -1
  10454. +   person_event SPRITE_GENTLEMAN, 10, 7, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x994c6, -1
  10455. +   person_event SPRITE_RHYDON, 8, 6, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RhydonScript_0x9951b, -1
  10456. +   person_event SPRITE_COOLTRAINER_M, 10, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x99525, -1
  10457. +   person_event SPRITE_GRANNY, 6, 3, $7, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x99528, -1
  10458. diff --git a/maps/DarkCaveBlackthornEntrance.asm b/maps/DarkCaveBlackthornEntrance.asm
  10459. index 218ca0a..0fdc70f 100644
  10460. --- a/maps/DarkCaveBlackthornEntrance.asm
  10461. +++ b/maps/DarkCaveBlackthornEntrance.asm
  10462. @@ -73,6 +73,6 @@ DarkCaveBlackthornEntrance_MapEventHeader:
  10463.  
  10464.  .PersonEvents:
  10465.     db 3
  10466. -   person_event SPRITE_PHARMACIST, 3 + 4, 7 + 4, $3, 0, 0, -1, -1, 0, 0, 0, PharmacistScript_0x18c720, -1
  10467. -   person_event SPRITE_POKE_BALL, 24 + 4, 21 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c73b, EVENT_DARK_CAVE_BLACKTHORN_ENTRANCE_REVIVE
  10468. -   person_event SPRITE_POKE_BALL, 22 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c73d, EVENT_DARK_CAVE_BLACKTHORN_ENTRANCE_TM_SNORE
  10469. +   person_event SPRITE_PHARMACIST, 3, 7, $3, 0, 0, -1, -1, 0, 0, 0, PharmacistScript_0x18c720, -1
  10470. +   person_event SPRITE_POKE_BALL, 24, 21, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c73b, EVENT_DARK_CAVE_BLACKTHORN_ENTRANCE_REVIVE
  10471. +   person_event SPRITE_POKE_BALL, 22, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c73d, EVENT_DARK_CAVE_BLACKTHORN_ENTRANCE_TM_SNORE
  10472. diff --git a/maps/DarkCaveVioletEntrance.asm b/maps/DarkCaveVioletEntrance.asm
  10473. index 896faac..9807cce 100644
  10474. --- a/maps/DarkCaveVioletEntrance.asm
  10475. +++ b/maps/DarkCaveVioletEntrance.asm
  10476. @@ -43,11 +43,11 @@ DarkCaveVioletEntrance_MapEventHeader:
  10477.  
  10478.  .PersonEvents:
  10479.     db 8
  10480. -   person_event SPRITE_POKE_BALL, 8 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c68e, EVENT_DARK_CAVE_VIOLET_ENTRANCE_POTION
  10481. -   person_event SPRITE_ROCK, 14 + 4, 16 + 4, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10482. -   person_event SPRITE_ROCK, 6 + 4, 27 + 4, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10483. -   person_event SPRITE_ROCK, 14 + 4, 7 + 4, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10484. -   person_event SPRITE_ROCK, 31 + 4, 36 + 4, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10485. -   person_event SPRITE_POKE_BALL, 22 + 4, 36 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c690, EVENT_DARK_CAVE_VIOLET_ENTRANCE_FULL_HEAL
  10486. -   person_event SPRITE_POKE_BALL, 9 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c692, EVENT_DARK_CAVE_VIOLET_ENTRANCE_HYPER_POTION
  10487. -   person_event SPRITE_POKE_BALL, 28 + 4, 30 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c694, EVENT_DARK_CAVE_VIOLET_ENTRANCE_DIRE_HIT
  10488. +   person_event SPRITE_POKE_BALL, 8, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c68e, EVENT_DARK_CAVE_VIOLET_ENTRANCE_POTION
  10489. +   person_event SPRITE_ROCK, 14, 16, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10490. +   person_event SPRITE_ROCK, 6, 27, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10491. +   person_event SPRITE_ROCK, 14, 7, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10492. +   person_event SPRITE_ROCK, 31, 36, $18, 0, 0, -1, -1, 0, 0, 0, DarkCaveVioletEntranceRock, -1
  10493. +   person_event SPRITE_POKE_BALL, 22, 36, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c690, EVENT_DARK_CAVE_VIOLET_ENTRANCE_FULL_HEAL
  10494. +   person_event SPRITE_POKE_BALL, 9, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c692, EVENT_DARK_CAVE_VIOLET_ENTRANCE_HYPER_POTION
  10495. +   person_event SPRITE_POKE_BALL, 28, 30, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c694, EVENT_DARK_CAVE_VIOLET_ENTRANCE_DIRE_HIT
  10496. diff --git a/maps/DayCare.asm b/maps/DayCare.asm
  10497. index 2310c52..1415c73 100644
  10498. --- a/maps/DayCare.asm
  10499. +++ b/maps/DayCare.asm
  10500. @@ -175,5 +175,5 @@ DayCare_MapEventHeader:
  10501.  
  10502.  .PersonEvents:
  10503.     db 2
  10504. -   person_event SPRITE_GRAMPS, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x62f8f, EVENT_DAYCARE_MAN_IN_DAYCARE
  10505. -   person_event SPRITE_GRANNY, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrannyScript_0x62fc3, -1
  10506. +   person_event SPRITE_GRAMPS, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x62f8f, EVENT_DAYCARE_MAN_IN_DAYCARE
  10507. +   person_event SPRITE_GRANNY, 3, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrannyScript_0x62fc3, -1
  10508. diff --git a/maps/DiglettsCave.asm b/maps/DiglettsCave.asm
  10509. index eb9d894..67d6646 100644
  10510. --- a/maps/DiglettsCave.asm
  10511. +++ b/maps/DiglettsCave.asm
  10512. @@ -42,4 +42,4 @@ DiglettsCave_MapEventHeader:
  10513.  
  10514.  .PersonEvents:
  10515.     db 1
  10516. -   person_event SPRITE_POKEFAN_M, 31 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x74002, -1
  10517. +   person_event SPRITE_POKEFAN_M, 31, 3, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x74002, -1
  10518. diff --git a/maps/DragonShrine.asm b/maps/DragonShrine.asm
  10519. index b95524f..199b43c 100644
  10520. --- a/maps/DragonShrine.asm
  10521. +++ b/maps/DragonShrine.asm
  10522. @@ -160,7 +160,7 @@ DragonShrineTestScript:
  10523.     playsound SFX_GET_BADGE
  10524.     waitbutton
  10525.     special RestartMapMusic
  10526. -   specialphonecall ELMCALL_MASTERBALL
  10527. +   specialphonecall SPECIALCALL_MASTERBALL
  10528.     dotrigger $1
  10529.     domaptrigger DRAGONS_DEN_B1F, $1
  10530.     writetext UnknownText_0x18d9f2
  10531. @@ -681,7 +681,7 @@ DragonShrine_MapEventHeader:
  10532.  
  10533.  .PersonEvents:
  10534.     db 4
  10535. -   person_event SPRITE_ELDER, 1 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d1a5, EVENT_GAVE_KURT_APRICORNS
  10536. -   person_event SPRITE_ELDER, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d205, EVENT_GAVE_KURT_APRICORNS
  10537. -   person_event SPRITE_ELDER, 4 + 4, 7 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d20d, EVENT_GAVE_KURT_APRICORNS
  10538. -   person_event SPRITE_CLAIR, 8 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_DRAGON_SHRINE_CLAIR
  10539. +   person_event SPRITE_ELDER, 1, 5, $6, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d1a5, EVENT_GAVE_KURT_APRICORNS
  10540. +   person_event SPRITE_ELDER, 4, 2, $9, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d205, EVENT_GAVE_KURT_APRICORNS
  10541. +   person_event SPRITE_ELDER, 4, 7, $8, 0, 0, -1, -1, 0, 0, 0, ElderScript_0x18d20d, EVENT_GAVE_KURT_APRICORNS
  10542. +   person_event SPRITE_CLAIR, 8, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_DRAGON_SHRINE_CLAIR
  10543. diff --git a/maps/DragonsDenB1F.asm b/maps/DragonsDenB1F.asm
  10544. index c69dad1..baaa078 100644
  10545. --- a/maps/DragonsDenB1F.asm
  10546. +++ b/maps/DragonsDenB1F.asm
  10547. @@ -419,12 +419,12 @@ DragonsDenB1F_MapEventHeader:
  10548.  
  10549.  .PersonEvents:
  10550.     db 9
  10551. -   person_event SPRITE_POKE_BALL, 16 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 0, 0, PokeBallScript_0x18c95a, EVENT_DRAGONS_DEN_B1F_DRAGON_FANG
  10552. -   person_event SPRITE_CLAIR, 30 + 4, 14 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_DRAGONS_DEN_CLAIR
  10553. -   person_event SPRITE_SILVER, 23 + 4, 20 + 4, $2, 2, 2, -1, -1, 0, 0, 0, SilverScript_0x18c97e, EVENT_RIVAL_DRAGONS_DEN
  10554. -   person_event SPRITE_COOLTRAINER_M, 8 + 4, 20 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainermDarin, -1
  10555. -   person_event SPRITE_COOLTRAINER_F, 8 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfCara, -1
  10556. -   person_event SPRITE_TWIN, 17 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsLeaandpia1, -1
  10557. -   person_event SPRITE_TWIN, 18 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsLeaandpia2, -1
  10558. -   person_event SPRITE_POKE_BALL, 4 + 4, 30 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c9a1, EVENT_DRAGONS_DEN_B1F_CALCIUM
  10559. -   person_event SPRITE_POKE_BALL, 20 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c9a3, EVENT_DRAGONS_DEN_B1F_MAX_ELIXER
  10560. +   person_event SPRITE_POKE_BALL, 16, 35, $1, 0, 0, -1, -1, 0, 0, 0, PokeBallScript_0x18c95a, EVENT_DRAGONS_DEN_B1F_DRAGON_FANG
  10561. +   person_event SPRITE_CLAIR, 30, 14, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_DRAGONS_DEN_CLAIR
  10562. +   person_event SPRITE_SILVER, 23, 20, $2, 2, 2, -1, -1, 0, 0, 0, SilverScript_0x18c97e, EVENT_RIVAL_DRAGONS_DEN
  10563. +   person_event SPRITE_COOLTRAINER_M, 8, 20, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainermDarin, -1
  10564. +   person_event SPRITE_COOLTRAINER_F, 8, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfCara, -1
  10565. +   person_event SPRITE_TWIN, 17, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsLeaandpia1, -1
  10566. +   person_event SPRITE_TWIN, 18, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsLeaandpia2, -1
  10567. +   person_event SPRITE_POKE_BALL, 4, 30, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c9a1, EVENT_DRAGONS_DEN_B1F_CALCIUM
  10568. +   person_event SPRITE_POKE_BALL, 20, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c9a3, EVENT_DRAGONS_DEN_B1F_MAX_ELIXER
  10569. diff --git a/maps/EarlsPokemonAcademy.asm b/maps/EarlsPokemonAcademy.asm
  10570. index 89b562a..4c5aeef 100644
  10571. --- a/maps/EarlsPokemonAcademy.asm
  10572. +++ b/maps/EarlsPokemonAcademy.asm
  10573. @@ -425,9 +425,9 @@ EarlsPokemonAcademy_MapEventHeader:
  10574.  
  10575.  .PersonEvents:
  10576.     db 6
  10577. -   person_event SPRITE_FISHER, 2 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, AcademyEarl, EVENT_EARLS_ACADEMY_EARL
  10578. -   person_event SPRITE_YOUNGSTER, 5 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x68a83, -1
  10579. -   person_event SPRITE_GAMEBOY_KID, 11 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x68a86, -1
  10580. -   person_event SPRITE_GAMEBOY_KID, 11 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GameboyKidScript_0x68a91, -1
  10581. -   person_event SPRITE_YOUNGSTER, 7 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x68a9c, -1
  10582. -   person_event SPRITE_POKEDEX, 4 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 0, 0, AcademyNotebook, -1
  10583. +   person_event SPRITE_FISHER, 2, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, AcademyEarl, EVENT_EARLS_ACADEMY_EARL
  10584. +   person_event SPRITE_YOUNGSTER, 5, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x68a83, -1
  10585. +   person_event SPRITE_GAMEBOY_KID, 11, 3, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x68a86, -1
  10586. +   person_event SPRITE_GAMEBOY_KID, 11, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GameboyKidScript_0x68a91, -1
  10587. +   person_event SPRITE_YOUNGSTER, 7, 4, $7, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x68a9c, -1
  10588. +   person_event SPRITE_POKEDEX, 4, 2, $1, 0, 0, -1, -1, 0, 0, 0, AcademyNotebook, -1
  10589. diff --git a/maps/EcruteakCity.asm b/maps/EcruteakCity.asm
  10590. index c695048..6b072e6 100644
  10591. --- a/maps/EcruteakCity.asm
  10592. +++ b/maps/EcruteakCity.asm
  10593. @@ -290,10 +290,10 @@ EcruteakCity_MapEventHeader:
  10594.  
  10595.  .PersonEvents:
  10596.     db 7
  10597. -   person_event SPRITE_GRAMPS, 15 + 4, 18 + 4, $2, 1, 1, -1, -1, 0, 0, 0, GrampsScript_0x1a4009, -1
  10598. -   person_event SPRITE_GRAMPS, 21 + 4, 20 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a400c, -1
  10599. -   person_event SPRITE_LASS, 29 + 4, 21 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x1a4012, -1
  10600. -   person_event SPRITE_LASS, 9 + 4, 3 + 4, $7, 0, 0, -1, -1, 0, 0, 0, LassScript_0x1a4015, -1
  10601. -   person_event SPRITE_FISHER, 22 + 4, 9 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a4029, -1
  10602. -   person_event SPRITE_YOUNGSTER, 14 + 4, 10 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x1a403d, -1
  10603. -   person_event SPRITE_GRAMPS, 7 + 4, 3 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x1a400f, EVENT_ECRUTEAK_CITY_GRAMPS
  10604. +   person_event SPRITE_GRAMPS, 15, 18, $2, 1, 1, -1, -1, 0, 0, 0, GrampsScript_0x1a4009, -1
  10605. +   person_event SPRITE_GRAMPS, 21, 20, $3, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1a400c, -1
  10606. +   person_event SPRITE_LASS, 29, 21, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x1a4012, -1
  10607. +   person_event SPRITE_LASS, 9, 3, $7, 0, 0, -1, -1, 0, 0, 0, LassScript_0x1a4015, -1
  10608. +   person_event SPRITE_FISHER, 22, 9, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a4029, -1
  10609. +   person_event SPRITE_YOUNGSTER, 14, 10, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x1a403d, -1
  10610. +   person_event SPRITE_GRAMPS, 7, 3, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GrampsScript_0x1a400f, EVENT_ECRUTEAK_CITY_GRAMPS
  10611. diff --git a/maps/EcruteakGym.asm b/maps/EcruteakGym.asm
  10612. index 2998ef7..9c012fe 100644
  10613. --- a/maps/EcruteakGym.asm
  10614. +++ b/maps/EcruteakGym.asm
  10615. @@ -429,10 +429,10 @@ EcruteakGym_MapEventHeader:
  10616.  
  10617.  .PersonEvents:
  10618.     db 7
  10619. -   person_event SPRITE_MORTY, 1 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MortyScript_0x99d58, -1
  10620. -   person_event SPRITE_SAGE, 7 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSageJeffrey, -1
  10621. -   person_event SPRITE_SAGE, 13 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSagePing, -1
  10622. -   person_event SPRITE_GRANNY, 5 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerMediumMartha, -1
  10623. -   person_event SPRITE_GRANNY, 9 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerMediumGrace, -1
  10624. -   person_event SPRITE_GYM_GUY, 15 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, EcruteakGymGuyScript, -1
  10625. -   person_event SPRITE_GRAMPS, 14 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_ECRUTEAK_GYM_GRAMPS
  10626. +   person_event SPRITE_MORTY, 1, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MortyScript_0x99d58, -1
  10627. +   person_event SPRITE_SAGE, 7, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSageJeffrey, -1
  10628. +   person_event SPRITE_SAGE, 13, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSagePing, -1
  10629. +   person_event SPRITE_GRANNY, 5, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerMediumMartha, -1
  10630. +   person_event SPRITE_GRANNY, 9, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerMediumGrace, -1
  10631. +   person_event SPRITE_GYM_GUY, 15, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, EcruteakGymGuyScript, -1
  10632. +   person_event SPRITE_GRAMPS, 14, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_ECRUTEAK_GYM_GRAMPS
  10633. diff --git a/maps/EcruteakHouse.asm b/maps/EcruteakHouse.asm
  10634. index c0a08d4..b410f7d 100644
  10635. --- a/maps/EcruteakHouse.asm
  10636. +++ b/maps/EcruteakHouse.asm
  10637. @@ -298,7 +298,7 @@ EcruteakHouse_MapEventHeader:
  10638.  
  10639.  .PersonEvents:
  10640.     db 4
  10641. -   person_event SPRITE_SAGE, 6 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x98062, EVENT_RANG_CLEAR_BELL_1
  10642. -   person_event SPRITE_SAGE, 6 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x98062, EVENT_RANG_CLEAR_BELL_2
  10643. -   person_event SPRITE_SAGE, 9 + 4, 6 + 4, $2, 1, 1, -1, -1, 0, 0, 0, SageScript_0x980b0, EVENT_ECRUTEAK_HOUSE_WANDERING_SAGE
  10644. -   person_event SPRITE_GRAMPS, 11 + 4, 3 + 4, $2, 1, 1, -1, -1, 0, 0, 0, GrampsScript_0x980c4, EVENT_ECRUTEAK_HOUSE_WANDERING_SAGE
  10645. +   person_event SPRITE_SAGE, 6, 4, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x98062, EVENT_RANG_CLEAR_BELL_1
  10646. +   person_event SPRITE_SAGE, 6, 5, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x98062, EVENT_RANG_CLEAR_BELL_2
  10647. +   person_event SPRITE_SAGE, 9, 6, $2, 1, 1, -1, -1, 0, 0, 0, SageScript_0x980b0, EVENT_ECRUTEAK_HOUSE_WANDERING_SAGE
  10648. +   person_event SPRITE_GRAMPS, 11, 3, $2, 1, 1, -1, -1, 0, 0, 0, GrampsScript_0x980c4, EVENT_ECRUTEAK_HOUSE_WANDERING_SAGE
  10649. diff --git a/maps/EcruteakItemfinderHouse.asm b/maps/EcruteakItemfinderHouse.asm
  10650. index 5b30680..bc1b679 100644
  10651. --- a/maps/EcruteakItemfinderHouse.asm
  10652. +++ b/maps/EcruteakItemfinderHouse.asm
  10653. @@ -176,5 +176,5 @@ EcruteakItemfinderHouse_MapEventHeader:
  10654.  
  10655.  .PersonEvents:
  10656.     db 2
  10657. -   person_event SPRITE_COOLTRAINER_M, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x9a5fb, -1
  10658. -   person_event SPRITE_POKEDEX, 3 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 0, 0, PokedexScript_0x9a620, -1
  10659. +   person_event SPRITE_COOLTRAINER_M, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x9a5fb, -1
  10660. +   person_event SPRITE_POKEDEX, 3, 3, $1, 0, 0, -1, -1, 0, 0, 0, PokedexScript_0x9a620, -1
  10661. diff --git a/maps/EcruteakLugiaSpeechHouse.asm b/maps/EcruteakLugiaSpeechHouse.asm
  10662. index 5dca046..d3218b2 100644
  10663. --- a/maps/EcruteakLugiaSpeechHouse.asm
  10664. +++ b/maps/EcruteakLugiaSpeechHouse.asm
  10665. @@ -58,5 +58,5 @@ EcruteakLugiaSpeechHouse_MapEventHeader:
  10666.  
  10667.  .PersonEvents:
  10668.     db 2
  10669. -   person_event SPRITE_GRAMPS, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x99334, -1
  10670. -   person_event SPRITE_YOUNGSTER, 4 + 4, 5 + 4, $8, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x99337, -1
  10671. +   person_event SPRITE_GRAMPS, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x99334, -1
  10672. +   person_event SPRITE_YOUNGSTER, 4, 5, $8, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x99337, -1
  10673. diff --git a/maps/EcruteakMart.asm b/maps/EcruteakMart.asm
  10674. index 3a1e97a..e382615 100644
  10675. --- a/maps/EcruteakMart.asm
  10676. +++ b/maps/EcruteakMart.asm
  10677. @@ -57,6 +57,6 @@ EcruteakMart_MapEventHeader:
  10678.  
  10679.  .PersonEvents:
  10680.     db 3
  10681. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x99c3b, -1
  10682. -   person_event SPRITE_SUPER_NERD, 2 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x99c42, -1
  10683. -   person_event SPRITE_GRANNY, 6 + 4, 6 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x99c45, -1
  10684. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x99c3b, -1
  10685. +   person_event SPRITE_SUPER_NERD, 2, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x99c42, -1
  10686. +   person_event SPRITE_GRANNY, 6, 6, $7, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x99c45, -1
  10687. diff --git a/maps/EcruteakPokeCenter1F.asm b/maps/EcruteakPokeCenter1F.asm
  10688. index 0ded878..66acfaa 100644
  10689. --- a/maps/EcruteakPokeCenter1F.asm
  10690. +++ b/maps/EcruteakPokeCenter1F.asm
  10691. @@ -219,8 +219,8 @@ EcruteakPokeCenter1F_MapEventHeader:
  10692.  
  10693.  .PersonEvents:
  10694.     db 5
  10695. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x98eb0, -1
  10696. -   person_event SPRITE_POKEFAN_M, 6 + 4, 7 + 4, $a, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x98eb3, -1
  10697. -   person_event SPRITE_COOLTRAINER_F, 4 + 4, 1 + 4, $3, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x98ebf, -1
  10698. -   person_event SPRITE_GYM_GUY, 1 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x98ec2, -1
  10699. -   person_event SPRITE_BILL, 7 + 4, 0 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_ECRUTEAK_POKE_CENTER_BILL
  10700. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x98eb0, -1
  10701. +   person_event SPRITE_POKEFAN_M, 6, 7, $a, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x98eb3, -1
  10702. +   person_event SPRITE_COOLTRAINER_F, 4, 1, $3, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x98ebf, -1
  10703. +   person_event SPRITE_GYM_GUY, 1, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x98ec2, -1
  10704. +   person_event SPRITE_BILL, 7, 0, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_ECRUTEAK_POKE_CENTER_BILL
  10705. diff --git a/maps/ElmsHouse.asm b/maps/ElmsHouse.asm
  10706. index c949c19..e8673a6 100644
  10707. --- a/maps/ElmsHouse.asm
  10708. +++ b/maps/ElmsHouse.asm
  10709. @@ -99,5 +99,5 @@ ElmsHouse_MapEventHeader:
  10710.  
  10711.  .PersonEvents:
  10712.     db 2
  10713. -   person_event SPRITE_TEACHER, 5 + 4, 1 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ElmsWife, -1
  10714. -   person_event SPRITE_BUG_CATCHER, 4 + 4, 5 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ElmsSon, -1
  10715. +   person_event SPRITE_TEACHER, 5, 1, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ElmsWife, -1
  10716. +   person_event SPRITE_BUG_CATCHER, 4, 5, $7, 0, 0, -1, -1, 0, 0, 0, ElmsSon, -1
  10717. diff --git a/maps/ElmsLab.asm b/maps/ElmsLab.asm
  10718. index 1cda6e8..45e0c23 100644
  10719. --- a/maps/ElmsLab.asm
  10720. +++ b/maps/ElmsLab.asm
  10721. @@ -1408,9 +1408,9 @@ ElmsLab_MapEventHeader:
  10722.  
  10723.  .PersonEvents:
  10724.     db 6
  10725. -   person_event SPRITE_ELM, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ProfElmScript, -1
  10726. -   person_event SPRITE_SCIENTIST, 9 + 4, 2 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ElmsAideScript, EVENT_ELMS_AIDE_IN_LAB
  10727. -   person_event SPRITE_POKE_BALL, 3 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 0, 0, CyndaquilPokeBallScript, EVENT_CYNDAQUIL_POKEBALL_IN_ELMS_LAB
  10728. -   person_event SPRITE_POKE_BALL, 3 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 0, 0, TotodilePokeBallScript, EVENT_TOTODILE_POKEBALL_IN_ELMS_LAB
  10729. -   person_event SPRITE_POKE_BALL, 3 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 0, 0, ChikoritaPokeBallScript, EVENT_CHIKORITA_POKEBALL_IN_ELMS_LAB
  10730. -   person_event SPRITE_OFFICER, 3 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CopScript, EVENT_COP_IN_ELMS_LAB
  10731. +   person_event SPRITE_ELM, 2, 5, $6, 0, 0, -1, -1, 0, 0, 0, ProfElmScript, -1
  10732. +   person_event SPRITE_SCIENTIST, 9, 2, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ElmsAideScript, EVENT_ELMS_AIDE_IN_LAB
  10733. +   person_event SPRITE_POKE_BALL, 3, 6, $1, 0, 0, -1, -1, 0, 0, 0, CyndaquilPokeBallScript, EVENT_CYNDAQUIL_POKEBALL_IN_ELMS_LAB
  10734. +   person_event SPRITE_POKE_BALL, 3, 7, $1, 0, 0, -1, -1, 0, 0, 0, TotodilePokeBallScript, EVENT_TOTODILE_POKEBALL_IN_ELMS_LAB
  10735. +   person_event SPRITE_POKE_BALL, 3, 8, $1, 0, 0, -1, -1, 0, 0, 0, ChikoritaPokeBallScript, EVENT_CHIKORITA_POKEBALL_IN_ELMS_LAB
  10736. +   person_event SPRITE_OFFICER, 3, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CopScript, EVENT_COP_IN_ELMS_LAB
  10737. diff --git a/maps/FastShip1F.asm b/maps/FastShip1F.asm
  10738. index 7a52def..5e3f3a0 100644
  10739. --- a/maps/FastShip1F.asm
  10740. +++ b/maps/FastShip1F.asm
  10741. @@ -310,7 +310,7 @@ FastShip1F_MapEventHeader:
  10742.  
  10743.  .PersonEvents:
  10744.     db 4
  10745. -   person_event SPRITE_SAILOR, 2 + 4, 25 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x75160, -1
  10746. -   person_event SPRITE_SAILOR, 7 + 4, 14 + 4, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x751d0, -1
  10747. -   person_event SPRITE_SAILOR, 17 + 4, 22 + 4, $5, 0, 2, -1, -1, 0, 0, 0, SailorScript_0x751e4, -1
  10748. -   person_event SPRITE_GENTLEMAN, 6 + 4, 19 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_FAST_SHIP_1F_GENTLEMAN
  10749. +   person_event SPRITE_SAILOR, 2, 25, $6, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x75160, -1
  10750. +   person_event SPRITE_SAILOR, 7, 14, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x751d0, -1
  10751. +   person_event SPRITE_SAILOR, 17, 22, $5, 0, 2, -1, -1, 0, 0, 0, SailorScript_0x751e4, -1
  10752. +   person_event SPRITE_GENTLEMAN, 6, 19, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_FAST_SHIP_1F_GENTLEMAN
  10753. diff --git a/maps/FastShipB1F.asm b/maps/FastShipB1F.asm
  10754. index 503accd..735ad6e 100644
  10755. --- a/maps/FastShipB1F.asm
  10756. +++ b/maps/FastShipB1F.asm
  10757. @@ -456,15 +456,15 @@ FastShipB1F_MapEventHeader:
  10758.  
  10759.  .PersonEvents:
  10760.     db 12
  10761. -   person_event SPRITE_SAILOR, 6 + 4, 30 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x76767, EVENT_FAST_SHIP_B1F_SAILOR_LEFT
  10762. -   person_event SPRITE_SAILOR, 6 + 4, 31 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x76767, EVENT_FAST_SHIP_B1F_SAILOR_RIGHT
  10763. -   person_event SPRITE_SAILOR, 11 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorJeff, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10764. -   person_event SPRITE_LASS, 4 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerDebra, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10765. -   person_event SPRITE_SUPER_NERD, 9 + 4, 26 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerJugglerFritz, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10766. -   person_event SPRITE_SAILOR, 4 + 4, 17 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSailorGarrett, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10767. -   person_event SPRITE_FISHER, 8 + 4, 25 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherJonah, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10768. -   person_event SPRITE_BLACK_BELT, 11 + 4, 15 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltWai, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10769. -   person_event SPRITE_SAILOR, 4 + 4, 23 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSailorKenneth, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10770. -   person_event SPRITE_TEACHER, 11 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerTeacherShirley, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10771. -   person_event SPRITE_YOUNGSTER, 9 + 4, 14 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyNate, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10772. -   person_event SPRITE_YOUNGSTER, 11 + 4, 14 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyRicky, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10773. +   person_event SPRITE_SAILOR, 6, 30, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x76767, EVENT_FAST_SHIP_B1F_SAILOR_LEFT
  10774. +   person_event SPRITE_SAILOR, 6, 31, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x76767, EVENT_FAST_SHIP_B1F_SAILOR_RIGHT
  10775. +   person_event SPRITE_SAILOR, 11, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorJeff, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10776. +   person_event SPRITE_LASS, 4, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerDebra, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10777. +   person_event SPRITE_SUPER_NERD, 9, 26, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerJugglerFritz, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10778. +   person_event SPRITE_SAILOR, 4, 17, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSailorGarrett, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10779. +   person_event SPRITE_FISHER, 8, 25, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherJonah, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10780. +   person_event SPRITE_BLACK_BELT, 11, 15, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBlackbeltWai, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10781. +   person_event SPRITE_SAILOR, 4, 23, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSailorKenneth, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10782. +   person_event SPRITE_TEACHER, 11, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerTeacherShirley, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10783. +   person_event SPRITE_YOUNGSTER, 9, 14, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyNate, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10784. +   person_event SPRITE_YOUNGSTER, 11, 14, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyRicky, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10785. diff --git a/maps/FastShipCabins_NNW_NNE_NE.asm b/maps/FastShipCabins_NNW_NNE_NE.asm
  10786. index 300bfb1..4f1e4be 100644
  10787. --- a/maps/FastShipCabins_NNW_NNE_NE.asm
  10788. +++ b/maps/FastShipCabins_NNW_NNE_NE.asm
  10789. @@ -278,10 +278,10 @@ FastShipCabins_NNW_NNE_NE_MapEventHeader:
  10790.  
  10791.  .PersonEvents:
  10792.     db 7
  10793. -   person_event SPRITE_COOLTRAINER_M, 3 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainermSean, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10794. -   person_event SPRITE_COOLTRAINER_F, 5 + 4, 1 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfCarol, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10795. -   person_event SPRITE_SUPER_NERD, 5 + 4, 1 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacEthan, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10796. -   person_event SPRITE_POKEFAN_M, 17 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerNoland, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10797. -   person_event SPRITE_SAILOR, 26 + 4, 4 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x755f1, EVENT_FAST_SHIP_CABINS_NNW_NNE_NE_SAILOR
  10798. -   person_event SPRITE_GENTLEMAN, 30 + 4, 7 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerGentlemanEdward, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10799. -   person_event SPRITE_PHARMACIST, 30 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerBurglarCorey, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10800. +   person_event SPRITE_COOLTRAINER_M, 3, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainermSean, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10801. +   person_event SPRITE_COOLTRAINER_F, 5, 1, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfCarol, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10802. +   person_event SPRITE_SUPER_NERD, 5, 1, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacEthan, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10803. +   person_event SPRITE_POKEFAN_M, 17, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerNoland, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10804. +   person_event SPRITE_SAILOR, 26, 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x755f1, EVENT_FAST_SHIP_CABINS_NNW_NNE_NE_SAILOR
  10805. +   person_event SPRITE_GENTLEMAN, 30, 7, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerGentlemanEdward, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10806. +   person_event SPRITE_PHARMACIST, 30, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerBurglarCorey, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10807. diff --git a/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm b/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
  10808. index 6589343..cd49d5a 100644
  10809. --- a/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
  10810. +++ b/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
  10811. @@ -471,14 +471,14 @@ FastShipCabins_SE_SSE_CaptainsCabin_MapEventHeader:
  10812.  
  10813.  .PersonEvents:
  10814.     db 11
  10815. -   person_event SPRITE_CAPTAIN, 25 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CaptainScript_0x75ea7, -1
  10816. -   person_event SPRITE_GENTLEMAN, 17 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x75f1f, EVENT_FAST_SHIP_CABINS_SE_SSE_GENTLEMAN
  10817. -   person_event SPRITE_TWIN, 17 + 4, 3 + 4, $a, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x75f6d, EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_1
  10818. -   person_event SPRITE_TWIN, 25 + 4, 2 + 4, $a, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x75ebb, EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_2
  10819. -   person_event SPRITE_POKEFAN_M, 6 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerPokefanmColin, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10820. -   person_event SPRITE_TWIN, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsMegandpeg1, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10821. -   person_event SPRITE_TWIN, 4 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsMegandpeg2, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10822. -   person_event SPRITE_SUPER_NERD, 5 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerPsychicRodney, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10823. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmJeremy, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10824. -   person_event SPRITE_POKEFAN_F, 5 + 4, 5 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerPokefanfGeorgia, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10825. -   person_event SPRITE_SUPER_NERD, 15 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdShawn, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10826. +   person_event SPRITE_CAPTAIN, 25, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CaptainScript_0x75ea7, -1
  10827. +   person_event SPRITE_GENTLEMAN, 17, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x75f1f, EVENT_FAST_SHIP_CABINS_SE_SSE_GENTLEMAN
  10828. +   person_event SPRITE_TWIN, 17, 3, $a, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x75f6d, EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_1
  10829. +   person_event SPRITE_TWIN, 25, 2, $a, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x75ebb, EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_2
  10830. +   person_event SPRITE_POKEFAN_M, 6, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerPokefanmColin, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10831. +   person_event SPRITE_TWIN, 4, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsMegandpeg1, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10832. +   person_event SPRITE_TWIN, 4, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsMegandpeg2, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10833. +   person_event SPRITE_SUPER_NERD, 5, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerPsychicRodney, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10834. +   person_event SPRITE_POKEFAN_M, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmJeremy, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10835. +   person_event SPRITE_POKEFAN_F, 5, 5, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerPokefanfGeorgia, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10836. +   person_event SPRITE_SUPER_NERD, 15, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdShawn, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10837. diff --git a/maps/FastShipCabins_SW_SSW_NW.asm b/maps/FastShipCabins_SW_SSW_NW.asm
  10838. index 715e1b1..0c610e5 100644
  10839. --- a/maps/FastShipCabins_SW_SSW_NW.asm
  10840. +++ b/maps/FastShipCabins_SW_SSW_NW.asm
  10841. @@ -239,7 +239,7 @@ FastShipCabins_SW_SSW_NW_MapEventHeader:
  10842.  
  10843.  .PersonEvents:
  10844.     db 4
  10845. -   person_event SPRITE_FISHER, 15 + 4, 1 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherLyle, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10846. -   person_event SPRITE_BUG_CATCHER, 15 + 4, 6 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBug_catcherKen, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10847. -   person_event SPRITE_BUENA, 26 + 4, 1 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautyCassie, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10848. -   person_event SPRITE_ROCKER, 28 + 4, 3 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerGuitaristClyde, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10849. +   person_event SPRITE_FISHER, 15, 1, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherLyle, EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
  10850. +   person_event SPRITE_BUG_CATCHER, 15, 6, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBug_catcherKen, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10851. +   person_event SPRITE_BUENA, 26, 1, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautyCassie, EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
  10852. +   person_event SPRITE_ROCKER, 28, 3, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerGuitaristClyde, EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
  10853. diff --git a/maps/FightingDojo.asm b/maps/FightingDojo.asm
  10854. index f3dc275..8b6869c 100644
  10855. --- a/maps/FightingDojo.asm
  10856. +++ b/maps/FightingDojo.asm
  10857. @@ -57,5 +57,5 @@ FightingDojo_MapEventHeader:
  10858.  
  10859.  .PersonEvents:
  10860.     db 2
  10861. -   person_event SPRITE_BLACK_BELT, 4 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x189b61, -1
  10862. -   person_event SPRITE_POKE_BALL, 1 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x189b6a, EVENT_PICKED_UP_FOCUS_BAND
  10863. +   person_event SPRITE_BLACK_BELT, 4, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x189b61, -1
  10864. +   person_event SPRITE_POKE_BALL, 1, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x189b6a, EVENT_PICKED_UP_FOCUS_BAND
  10865. diff --git a/maps/FuchsiaBillSpeechHouse.asm b/maps/FuchsiaBillSpeechHouse.asm
  10866. index 4803fd1..d523e58 100644
  10867. --- a/maps/FuchsiaBillSpeechHouse.asm
  10868. +++ b/maps/FuchsiaBillSpeechHouse.asm
  10869. @@ -40,5 +40,5 @@ FuchsiaBillSpeechHouse_MapEventHeader:
  10870.  
  10871.  .PersonEvents:
  10872.     db 2
  10873. -   person_event SPRITE_POKEFAN_F, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x1963bd, -1
  10874. -   person_event SPRITE_YOUNGSTER, 4 + 4, 6 + 4, $4, 1, 0, -1, -1, 0, 0, 0, YoungsterScript_0x1963c0, -1
  10875. +   person_event SPRITE_POKEFAN_F, 3, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x1963bd, -1
  10876. +   person_event SPRITE_YOUNGSTER, 4, 6, $4, 1, 0, -1, -1, 0, 0, 0, YoungsterScript_0x1963c0, -1
  10877. diff --git a/maps/FuchsiaCity.asm b/maps/FuchsiaCity.asm
  10878. index 0ad1f62..5f8bfd8 100644
  10879. --- a/maps/FuchsiaCity.asm
  10880. +++ b/maps/FuchsiaCity.asm
  10881. @@ -154,7 +154,7 @@ FuchsiaCity_MapEventHeader:
  10882.  
  10883.  .PersonEvents:
  10884.     db 4
  10885. -   person_event SPRITE_YOUNGSTER, 18 + 4, 23 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x194b22, -1
  10886. -   person_event SPRITE_POKEFAN_M, 8 + 4, 13 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x194b25, -1
  10887. -   person_event SPRITE_TEACHER, 14 + 4, 16 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x194b28, -1
  10888. -   person_event SPRITE_FRUIT_TREE, 1 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x194b43, -1
  10889. +   person_event SPRITE_YOUNGSTER, 18, 23, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x194b22, -1
  10890. +   person_event SPRITE_POKEFAN_M, 8, 13, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x194b25, -1
  10891. +   person_event SPRITE_TEACHER, 14, 16, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x194b28, -1
  10892. +   person_event SPRITE_FRUIT_TREE, 1, 8, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x194b43, -1
  10893. diff --git a/maps/FuchsiaGym.asm b/maps/FuchsiaGym.asm
  10894. index 3fba524..360783a 100644
  10895. --- a/maps/FuchsiaGym.asm
  10896. +++ b/maps/FuchsiaGym.asm
  10897. @@ -391,9 +391,9 @@ FuchsiaGym_MapEventHeader:
  10898.  
  10899.  .PersonEvents:
  10900.     db 6
  10901. -   person_event SPRITE_JANINE, 10 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, JanineScript_0x195db9, -1
  10902. -   person_event SPRITE_FUCHSIA_GYM_1, 7 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym1Script_0x195e1b, -1
  10903. -   person_event SPRITE_FUCHSIA_GYM_2, 11 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym2Script_0x195e55, -1
  10904. -   person_event SPRITE_FUCHSIA_GYM_3, 4 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym3Script_0x195e8f, -1
  10905. -   person_event SPRITE_FUCHSIA_GYM_4, 2 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym4Script_0x195ec9, -1
  10906. -   person_event SPRITE_GYM_GUY, 15 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuchsiaGymGuyScript, -1
  10907. +   person_event SPRITE_JANINE, 10, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, JanineScript_0x195db9, -1
  10908. +   person_event SPRITE_FUCHSIA_GYM_1, 7, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym1Script_0x195e1b, -1
  10909. +   person_event SPRITE_FUCHSIA_GYM_2, 11, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym2Script_0x195e55, -1
  10910. +   person_event SPRITE_FUCHSIA_GYM_3, 4, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym3Script_0x195e8f, -1
  10911. +   person_event SPRITE_FUCHSIA_GYM_4, 2, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuschiaGym4Script_0x195ec9, -1
  10912. +   person_event SPRITE_GYM_GUY, 15, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FuchsiaGymGuyScript, -1
  10913. diff --git a/maps/FuchsiaMart.asm b/maps/FuchsiaMart.asm
  10914. index a7395d7..6b240ac 100644
  10915. --- a/maps/FuchsiaMart.asm
  10916. +++ b/maps/FuchsiaMart.asm
  10917. @@ -49,6 +49,6 @@ FuchsiaMart_MapEventHeader:
  10918.  
  10919.  .PersonEvents:
  10920.     db 3
  10921. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x195ce8, -1
  10922. -   person_event SPRITE_FISHER, 2 + 4, 3 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x195cef, -1
  10923. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x195cf2, -1
  10924. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x195ce8, -1
  10925. +   person_event SPRITE_FISHER, 2, 3, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x195cef, -1
  10926. +   person_event SPRITE_COOLTRAINER_F, 6, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x195cf2, -1
  10927. diff --git a/maps/FuchsiaPokeCenter1F.asm b/maps/FuchsiaPokeCenter1F.asm
  10928. index d401de8..183ec42 100644
  10929. --- a/maps/FuchsiaPokeCenter1F.asm
  10930. +++ b/maps/FuchsiaPokeCenter1F.asm
  10931. @@ -102,7 +102,7 @@ FuchsiaPokeCenter1F_MapEventHeader:
  10932.  
  10933.  .PersonEvents:
  10934.     db 4
  10935. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, NurseScript_0x196459, -1
  10936. -   person_event SPRITE_COOLTRAINER_M, 4 + 4, 8 + 4, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerMScript_0x19645c, -1
  10937. -   person_event SPRITE_COOLTRAINER_F, 4 + 4, 1 + 4, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x19645f, -1
  10938. -   person_event SPRITE_JANINE_IMPERSONATOR, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, JanineImpersonatorScript_0x196462, -1
  10939. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, NurseScript_0x196459, -1
  10940. +   person_event SPRITE_COOLTRAINER_M, 4, 8, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerMScript_0x19645c, -1
  10941. +   person_event SPRITE_COOLTRAINER_F, 4, 1, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x19645f, -1
  10942. +   person_event SPRITE_JANINE_IMPERSONATOR, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, JanineImpersonatorScript_0x196462, -1
  10943. diff --git a/maps/GoldenrodBikeShop.asm b/maps/GoldenrodBikeShop.asm
  10944. index 275646f..39a3313 100644
  10945. --- a/maps/GoldenrodBikeShop.asm
  10946. +++ b/maps/GoldenrodBikeShop.asm
  10947. @@ -125,4 +125,4 @@ GoldenrodBikeShop_MapEventHeader:
  10948.  
  10949.  .PersonEvents:
  10950.     db 1
  10951. -   person_event SPRITE_CLERK, 2 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ClerkScript_0x54750, -1
  10952. +   person_event SPRITE_CLERK, 2, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ClerkScript_0x54750, -1
  10953. diff --git a/maps/GoldenrodBillsHouse.asm b/maps/GoldenrodBillsHouse.asm
  10954. index 8cc284c..e8fcd76 100644
  10955. --- a/maps/GoldenrodBillsHouse.asm
  10956. +++ b/maps/GoldenrodBillsHouse.asm
  10957. @@ -257,6 +257,6 @@ GoldenrodBillsHouse_MapEventHeader:
  10958.  
  10959.  .PersonEvents:
  10960.     db 3
  10961. -   person_event SPRITE_BILL, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, BillsHouseBill, EVENT_MET_BILL
  10962. -   person_event SPRITE_POKEFAN_F, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, BillsMom, -1
  10963. -   person_event SPRITE_TWIN, 4 + 4, 5 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BillsSister, -1
  10964. +   person_event SPRITE_BILL, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, BillsHouseBill, EVENT_MET_BILL
  10965. +   person_event SPRITE_POKEFAN_F, 3, 5, $6, 0, 0, -1, -1, 0, 0, 0, BillsMom, -1
  10966. +   person_event SPRITE_TWIN, 4, 5, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BillsSister, -1
  10967. diff --git a/maps/GoldenrodCity.asm b/maps/GoldenrodCity.asm
  10968. index 7f63fc9..e08d75d 100644
  10969. --- a/maps/GoldenrodCity.asm
  10970. +++ b/maps/GoldenrodCity.asm
  10971. @@ -581,18 +581,18 @@ GoldenrodCity_MapEventHeader:
  10972.  
  10973.  .PersonEvents:
  10974.     db 15
  10975. -   person_event SPRITE_POKEFAN_M, 18 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x1989e3, EVENT_GOLDENROD_CITY_CIVILIANS
  10976. -   person_event SPRITE_YOUNGSTER, 17 + 4, 30 + 4, $2, 1, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1989e6, EVENT_GOLDENROD_CITY_CIVILIANS
  10977. -   person_event SPRITE_COOLTRAINER_F, 16 + 4, 12 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x1989e9, EVENT_GOLDENROD_CITY_CIVILIANS
  10978. -   person_event SPRITE_COOLTRAINER_F, 26 + 4, 20 + 4, $2, 2, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x1989fd, EVENT_GOLDENROD_CITY_CIVILIANS
  10979. -   person_event SPRITE_YOUNGSTER, 17 + 4, 19 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x198a11, EVENT_GOLDENROD_CITY_CIVILIANS
  10980. -   person_event SPRITE_LASS, 10 + 4, 17 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x198a14, EVENT_GOLDENROD_CITY_CIVILIANS
  10981. -   person_event SPRITE_GRAMPS, 27 + 4, 11 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x198a17, EVENT_GOLDENROD_CITY_CIVILIANS
  10982. -   person_event SPRITE_ROCKET, 16 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a1a, EVENT_GOLDENROD_CITY_ROCKET_SCOUT
  10983. -   person_event SPRITE_ROCKET, 20 + 4, 28 + 4, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a29, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
  10984. -   person_event SPRITE_ROCKET, 15 + 4, 8 + 4, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a2c, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
  10985. -   person_event SPRITE_ROCKET, 23 + 4, 16 + 4, $9, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a2f, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  10986. -   person_event SPRITE_ROCKET, 20 + 4, 29 + 4, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a32, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  10987. -   person_event SPRITE_ROCKET, 7 + 4, 29 + 4, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a35, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  10988. -   person_event SPRITE_ROCKET, 10 + 4, 31 + 4, $8, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a38, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  10989. -   person_event SPRITE_POKEFAN_M, 22 + 4, 12 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MoveTutor, EVENT_GOLDENROD_CITY_MOVE_TUTOR
  10990. +   person_event SPRITE_POKEFAN_M, 18, 7, $7, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x1989e3, EVENT_GOLDENROD_CITY_CIVILIANS
  10991. +   person_event SPRITE_YOUNGSTER, 17, 30, $2, 1, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1989e6, EVENT_GOLDENROD_CITY_CIVILIANS
  10992. +   person_event SPRITE_COOLTRAINER_F, 16, 12, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x1989e9, EVENT_GOLDENROD_CITY_CIVILIANS
  10993. +   person_event SPRITE_COOLTRAINER_F, 26, 20, $2, 2, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x1989fd, EVENT_GOLDENROD_CITY_CIVILIANS
  10994. +   person_event SPRITE_YOUNGSTER, 17, 19, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x198a11, EVENT_GOLDENROD_CITY_CIVILIANS
  10995. +   person_event SPRITE_LASS, 10, 17, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x198a14, EVENT_GOLDENROD_CITY_CIVILIANS
  10996. +   person_event SPRITE_GRAMPS, 27, 11, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x198a17, EVENT_GOLDENROD_CITY_CIVILIANS
  10997. +   person_event SPRITE_ROCKET, 16, 4, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a1a, EVENT_GOLDENROD_CITY_ROCKET_SCOUT
  10998. +   person_event SPRITE_ROCKET, 20, 28, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a29, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
  10999. +   person_event SPRITE_ROCKET, 15, 8, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a2c, EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
  11000. +   person_event SPRITE_ROCKET, 23, 16, $9, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a2f, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  11001. +   person_event SPRITE_ROCKET, 20, 29, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a32, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  11002. +   person_event SPRITE_ROCKET, 7, 29, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a35, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  11003. +   person_event SPRITE_ROCKET, 10, 31, $8, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x198a38, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  11004. +   person_event SPRITE_POKEFAN_M, 22, 12, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MoveTutor, EVENT_GOLDENROD_CITY_MOVE_TUTOR
  11005. diff --git a/maps/GoldenrodDeptStore1F.asm b/maps/GoldenrodDeptStore1F.asm
  11006. index e93391a..fc4064c 100644
  11007. --- a/maps/GoldenrodDeptStore1F.asm
  11008. +++ b/maps/GoldenrodDeptStore1F.asm
  11009. @@ -93,7 +93,7 @@ GoldenrodDeptStore1F_MapEventHeader:
  11010.  
  11011.  .PersonEvents:
  11012.     db 4
  11013. -   person_event SPRITE_RECEPTIONIST, 1 + 4, 10 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x55981, -1
  11014. -   person_event SPRITE_POKEFAN_F, 4 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x55987, -1
  11015. -   person_event SPRITE_BUG_CATCHER, 5 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x5598a, -1
  11016. -   person_event SPRITE_GENTLEMAN, 5 + 4, 11 + 4, $2, 1, 1, -1, -1, 0, 0, 0, GentlemanScript_0x55984, -1
  11017. +   person_event SPRITE_RECEPTIONIST, 1, 10, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x55981, -1
  11018. +   person_event SPRITE_POKEFAN_F, 4, 5, $6, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x55987, -1
  11019. +   person_event SPRITE_BUG_CATCHER, 5, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x5598a, -1
  11020. +   person_event SPRITE_GENTLEMAN, 5, 11, $2, 1, 1, -1, -1, 0, 0, 0, GentlemanScript_0x55984, -1
  11021. diff --git a/maps/GoldenrodDeptStore2F.asm b/maps/GoldenrodDeptStore2F.asm
  11022. index 003695e..61f8e76 100644
  11023. --- a/maps/GoldenrodDeptStore2F.asm
  11024. +++ b/maps/GoldenrodDeptStore2F.asm
  11025. @@ -113,8 +113,8 @@ GoldenrodDeptStore2F_MapEventHeader:
  11026.  
  11027.  .PersonEvents:
  11028.     db 5
  11029. -   person_event SPRITE_CLERK, 5 + 4, 13 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55b5d, -1
  11030. -   person_event SPRITE_CLERK, 6 + 4, 13 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55b65, -1
  11031. -   person_event SPRITE_YOUNGSTER, 6 + 4, 9 + 4, $4, 1, 0, -1, -1, 0, 0, 0, YoungsterScript_0x55b6d, -1
  11032. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 6 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x55b70, -1
  11033. -   person_event SPRITE_GENTLEMAN, 6 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x55b73, -1
  11034. +   person_event SPRITE_CLERK, 5, 13, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55b5d, -1
  11035. +   person_event SPRITE_CLERK, 6, 13, $8, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55b65, -1
  11036. +   person_event SPRITE_YOUNGSTER, 6, 9, $4, 1, 0, -1, -1, 0, 0, 0, YoungsterScript_0x55b6d, -1
  11037. +   person_event SPRITE_COOLTRAINER_F, 2, 6, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x55b70, -1
  11038. +   person_event SPRITE_GENTLEMAN, 6, 2, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x55b73, -1
  11039. diff --git a/maps/GoldenrodDeptStore3F.asm b/maps/GoldenrodDeptStore3F.asm
  11040. index 1eebaa2..40e3c50 100644
  11041. --- a/maps/GoldenrodDeptStore3F.asm
  11042. +++ b/maps/GoldenrodDeptStore3F.asm
  11043. @@ -71,6 +71,6 @@ GoldenrodDeptStore3F_MapEventHeader:
  11044.  
  11045.  .PersonEvents:
  11046.     db 3
  11047. -   person_event SPRITE_CLERK, 1 + 4, 6 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55db8, -1
  11048. -   person_event SPRITE_SUPER_NERD, 5 + 4, 12 + 4, $a, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x55dc0, -1
  11049. -   person_event SPRITE_ROCKER, 5 + 4, 2 + 4, $4, 1, 0, -1, -1, 0, 0, 0, RockerScript_0x55dc3, -1
  11050. +   person_event SPRITE_CLERK, 1, 6, $6, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55db8, -1
  11051. +   person_event SPRITE_SUPER_NERD, 5, 12, $a, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x55dc0, -1
  11052. +   person_event SPRITE_ROCKER, 5, 2, $4, 1, 0, -1, -1, 0, 0, 0, RockerScript_0x55dc3, -1
  11053. diff --git a/maps/GoldenrodDeptStore4F.asm b/maps/GoldenrodDeptStore4F.asm
  11054. index c37a80e..d26263e 100644
  11055. --- a/maps/GoldenrodDeptStore4F.asm
  11056. +++ b/maps/GoldenrodDeptStore4F.asm
  11057. @@ -91,7 +91,7 @@ GoldenrodDeptStore4F_MapEventHeader:
  11058.  
  11059.  .PersonEvents:
  11060.     db 4
  11061. -   person_event SPRITE_CLERK, 5 + 4, 13 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55ee9, -1
  11062. -   person_event SPRITE_COOLTRAINER_M, 7 + 4, 11 + 4, $9, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x55ef1, -1
  11063. -   person_event SPRITE_BUG_CATCHER, 2 + 4, 7 + 4, $5, 0, 1, -1, -1, 0, 0, 0, BugCatcherScript_0x55ef4, -1
  11064. -   person_event SPRITE_GAMEBOY_KID, 1 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x55ef7, -1
  11065. +   person_event SPRITE_CLERK, 5, 13, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x55ee9, -1
  11066. +   person_event SPRITE_COOLTRAINER_M, 7, 11, $9, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x55ef1, -1
  11067. +   person_event SPRITE_BUG_CATCHER, 2, 7, $5, 0, 1, -1, -1, 0, 0, 0, BugCatcherScript_0x55ef4, -1
  11068. +   person_event SPRITE_GAMEBOY_KID, 1, 5, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x55ef7, -1
  11069. diff --git a/maps/GoldenrodDeptStore5F.asm b/maps/GoldenrodDeptStore5F.asm
  11070. index 098a121..94b1933 100644
  11071. --- a/maps/GoldenrodDeptStore5F.asm
  11072. +++ b/maps/GoldenrodDeptStore5F.asm
  11073. @@ -232,9 +232,9 @@ GoldenrodDeptStore5F_MapEventHeader:
  11074.  
  11075.  .PersonEvents:
  11076.     db 6
  11077. -   person_event SPRITE_CLERK, 5 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x5609c, -1
  11078. -   person_event SPRITE_LASS, 6 + 4, 3 + 4, $2, 1, 1, -1, -1, 0, 0, 0, LassScript_0x56130, -1
  11079. -   person_event SPRITE_COOLTRAINER_M, 3 + 4, 6 + 4, $3, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x56133, -1
  11080. -   person_event SPRITE_POKEFAN_M, 5 + 4, 13 + 4, $2, 2, 2, -1, -1, 0, 0, 0, PokefanMScript_0x5613a, -1
  11081. -   person_event SPRITE_TWIN, 1 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x56118, -1
  11082. -   person_event SPRITE_RECEPTIONIST, 5 + 4, 7 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x560ce, EVENT_GOLDENROD_DEPT_STORE_5F_HAPPINESS_EVENT_LADY
  11083. +   person_event SPRITE_CLERK, 5, 8, $7, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x5609c, -1
  11084. +   person_event SPRITE_LASS, 6, 3, $2, 1, 1, -1, -1, 0, 0, 0, LassScript_0x56130, -1
  11085. +   person_event SPRITE_COOLTRAINER_M, 3, 6, $3, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x56133, -1
  11086. +   person_event SPRITE_POKEFAN_M, 5, 13, $2, 2, 2, -1, -1, 0, 0, 0, PokefanMScript_0x5613a, -1
  11087. +   person_event SPRITE_TWIN, 1, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x56118, -1
  11088. +   person_event SPRITE_RECEPTIONIST, 5, 7, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x560ce, EVENT_GOLDENROD_DEPT_STORE_5F_HAPPINESS_EVENT_LADY
  11089. diff --git a/maps/GoldenrodDeptStore6F.asm b/maps/GoldenrodDeptStore6F.asm
  11090. index aca08aa..e64e1db 100644
  11091. --- a/maps/GoldenrodDeptStore6F.asm
  11092. +++ b/maps/GoldenrodDeptStore6F.asm
  11093. @@ -169,5 +169,5 @@ GoldenrodDeptStore6F_MapEventHeader:
  11094.  
  11095.  .PersonEvents:
  11096.     db 2
  11097. -   person_event SPRITE_LASS, 2 + 4, 10 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x564bf, -1
  11098. -   person_event SPRITE_SUPER_NERD, 2 + 4, 8 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x564c2, -1
  11099. +   person_event SPRITE_LASS, 2, 10, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x564bf, -1
  11100. +   person_event SPRITE_SUPER_NERD, 2, 8, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x564c2, -1
  11101. diff --git a/maps/GoldenrodDeptStoreB1F.asm b/maps/GoldenrodDeptStoreB1F.asm
  11102. index 5b448fd..e0606ed 100644
  11103. --- a/maps/GoldenrodDeptStoreB1F.asm
  11104. +++ b/maps/GoldenrodDeptStoreB1F.asm
  11105. @@ -121,11 +121,11 @@ GoldenrodDeptStoreB1F_MapEventHeader:
  11106.  
  11107.  .PersonEvents:
  11108.     db 8
  11109. -   person_event SPRITE_POKE_BALL, 15 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c3, EVENT_GOLDENROD_DEPT_STORE_B1F_ETHER
  11110. -   person_event SPRITE_POKE_BALL, 2 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c5, EVENT_GOLDENROD_DEPT_STORE_B1F_AMULET_COIN
  11111. -   person_event SPRITE_POKE_BALL, 3 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c7, EVENT_GOLDENROD_DEPT_STORE_B1F_BURN_HEAL
  11112. -   person_event SPRITE_POKE_BALL, 15 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c9, EVENT_GOLDENROD_DEPT_STORE_B1F_ULTRA_BALL
  11113. -   person_event SPRITE_BLACK_BELT, 10 + 4, 9 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BlackBeltScript_0x7d7b0, -1
  11114. -   person_event SPRITE_BLACK_BELT, 8 + 4, 4 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BlackBeltScript_0x7d7b3, -1
  11115. -   person_event SPRITE_BLACK_BELT, 13 + 4, 6 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x7d7b6, -1
  11116. -   person_event SPRITE_MACHOP, 7 + 4, 7 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MachopScript_0x7d7b9, -1
  11117. +   person_event SPRITE_POKE_BALL, 15, 10, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c3, EVENT_GOLDENROD_DEPT_STORE_B1F_ETHER
  11118. +   person_event SPRITE_POKE_BALL, 2, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c5, EVENT_GOLDENROD_DEPT_STORE_B1F_AMULET_COIN
  11119. +   person_event SPRITE_POKE_BALL, 3, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c7, EVENT_GOLDENROD_DEPT_STORE_B1F_BURN_HEAL
  11120. +   person_event SPRITE_POKE_BALL, 15, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d7c9, EVENT_GOLDENROD_DEPT_STORE_B1F_ULTRA_BALL
  11121. +   person_event SPRITE_BLACK_BELT, 10, 9, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BlackBeltScript_0x7d7b0, -1
  11122. +   person_event SPRITE_BLACK_BELT, 8, 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BlackBeltScript_0x7d7b3, -1
  11123. +   person_event SPRITE_BLACK_BELT, 13, 6, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BlackBeltScript_0x7d7b6, -1
  11124. +   person_event SPRITE_MACHOP, 7, 7, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MachopScript_0x7d7b9, -1
  11125. diff --git a/maps/GoldenrodDeptStoreRoof.asm b/maps/GoldenrodDeptStoreRoof.asm
  11126. index 0c3a082..9e65e1b 100644
  11127. --- a/maps/GoldenrodDeptStoreRoof.asm
  11128. +++ b/maps/GoldenrodDeptStoreRoof.asm
  11129. @@ -225,11 +225,11 @@ GoldenrodDeptStoreRoof_MapEventHeader:
  11130.  
  11131.  .PersonEvents:
  11132.     db 8
  11133. -   person_event SPRITE_CLERK, 4 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x5673f, EVENT_GOLDENROD_SALE_OFF
  11134. -   person_event SPRITE_POKEFAN_F, 3 + 4, 10 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x56746, -1
  11135. -   person_event SPRITE_FISHER, 1 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x56749, -1
  11136. -   person_event SPRITE_TWIN, 4 + 4, 3 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x56754, EVENT_GOLDENROD_SALE_ON
  11137. -   person_event SPRITE_SUPER_NERD, 6 + 4, 14 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x56757, EVENT_GOLDENROD_SALE_ON
  11138. -   person_event SPRITE_POKEFAN_M, 0 + 4, 7 + 4, $5, 0, 1, -1, -1, 0, 0, 0, PokefanMScript_0x5676a, EVENT_GOLDENROD_SALE_OFF
  11139. -   person_event SPRITE_TEACHER, 3 + 4, 5 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5676d, EVENT_GOLDENROD_SALE_OFF
  11140. -   person_event SPRITE_BUG_CATCHER, 6 + 4, 1 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x56770, EVENT_GOLDENROD_SALE_OFF
  11141. +   person_event SPRITE_CLERK, 4, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x5673f, EVENT_GOLDENROD_SALE_OFF
  11142. +   person_event SPRITE_POKEFAN_F, 3, 10, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x56746, -1
  11143. +   person_event SPRITE_FISHER, 1, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x56749, -1
  11144. +   person_event SPRITE_TWIN, 4, 3, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x56754, EVENT_GOLDENROD_SALE_ON
  11145. +   person_event SPRITE_SUPER_NERD, 6, 14, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x56757, EVENT_GOLDENROD_SALE_ON
  11146. +   person_event SPRITE_POKEFAN_M, 0, 7, $5, 0, 1, -1, -1, 0, 0, 0, PokefanMScript_0x5676a, EVENT_GOLDENROD_SALE_OFF
  11147. +   person_event SPRITE_TEACHER, 3, 5, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5676d, EVENT_GOLDENROD_SALE_OFF
  11148. +   person_event SPRITE_BUG_CATCHER, 6, 1, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x56770, EVENT_GOLDENROD_SALE_OFF
  11149. diff --git a/maps/GoldenrodFlowerShop.asm b/maps/GoldenrodFlowerShop.asm
  11150. index cd9b996..4ff95dd 100644
  11151. --- a/maps/GoldenrodFlowerShop.asm
  11152. +++ b/maps/GoldenrodFlowerShop.asm
  11153. @@ -172,5 +172,5 @@ GoldenrodFlowerShop_MapEventHeader:
  11154.  
  11155.  .PersonEvents:
  11156.     db 2
  11157. -   person_event SPRITE_TEACHER, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, FlowerShopTeacherScript, -1
  11158. -   person_event SPRITE_LASS, 6 + 4, 5 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FlowerShopFloriaScript, EVENT_FLORIA_AT_FLOWER_SHOP
  11159. +   person_event SPRITE_TEACHER, 4, 2, $9, 0, 0, -1, -1, 0, 0, 0, FlowerShopTeacherScript, -1
  11160. +   person_event SPRITE_LASS, 6, 5, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FlowerShopFloriaScript, EVENT_FLORIA_AT_FLOWER_SHOP
  11161. diff --git a/maps/GoldenrodGameCorner.asm b/maps/GoldenrodGameCorner.asm
  11162. index b14f319..6fcd393 100644
  11163. --- a/maps/GoldenrodGameCorner.asm
  11164. +++ b/maps/GoldenrodGameCorner.asm
  11165. @@ -479,15 +479,15 @@ GoldenrodGameCorner_MapEventHeader:
  11166.  
  11167.  .PersonEvents:
  11168.     db 12
  11169. -   person_event SPRITE_CLERK, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ClerkScript_0x56c25, -1
  11170. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 16 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x56c28, -1
  11171. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 18 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x56d01, -1
  11172. -   person_event SPRITE_PHARMACIST, 7 + 4, 8 + 4, $8, 0, 0, -1, 2, (1 << 3) | PAL_OW_BLUE, 0, 0, PharmacistScript_0x56df1, -1
  11173. -   person_event SPRITE_PHARMACIST, 7 + 4, 8 + 4, $8, 0, 0, -1, 4, (1 << 3) | PAL_OW_BLUE, 0, 0, PharmacistScript_0x56df1, -1
  11174. -   person_event SPRITE_POKEFAN_M, 10 + 4, 11 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x56dfc, -1
  11175. -   person_event SPRITE_COOLTRAINER_M, 8 + 4, 14 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerMScript_0x56e07, -1
  11176. -   person_event SPRITE_POKEFAN_F, 6 + 4, 17 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x56e12, -1
  11177. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 10 + 4, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x56e1d, -1
  11178. -   person_event SPRITE_GENTLEMAN, 10 + 4, 5 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x56e20, -1
  11179. -   person_event SPRITE_POKEFAN_M, 9 + 4, 2 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x56e2b, -1
  11180. -   person_event SPRITE_POKEFAN_M, 10 + 4, 17 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x56c1a, EVENT_GOLDENROD_GAME_CORNER_MOVE_TUTOR
  11181. +   person_event SPRITE_CLERK, 2, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ClerkScript_0x56c25, -1
  11182. +   person_event SPRITE_RECEPTIONIST, 2, 16, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x56c28, -1
  11183. +   person_event SPRITE_RECEPTIONIST, 2, 18, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x56d01, -1
  11184. +   person_event SPRITE_PHARMACIST, 7, 8, $8, 0, 0, -1, 2, (1 << 3) | PAL_OW_BLUE, 0, 0, PharmacistScript_0x56df1, -1
  11185. +   person_event SPRITE_PHARMACIST, 7, 8, $8, 0, 0, -1, 4, (1 << 3) | PAL_OW_BLUE, 0, 0, PharmacistScript_0x56df1, -1
  11186. +   person_event SPRITE_POKEFAN_M, 10, 11, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x56dfc, -1
  11187. +   person_event SPRITE_COOLTRAINER_M, 8, 14, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerMScript_0x56e07, -1
  11188. +   person_event SPRITE_POKEFAN_F, 6, 17, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x56e12, -1
  11189. +   person_event SPRITE_COOLTRAINER_F, 3, 10, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x56e1d, -1
  11190. +   person_event SPRITE_GENTLEMAN, 10, 5, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x56e20, -1
  11191. +   person_event SPRITE_POKEFAN_M, 9, 2, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x56e2b, -1
  11192. +   person_event SPRITE_POKEFAN_M, 10, 17, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x56c1a, EVENT_GOLDENROD_GAME_CORNER_MOVE_TUTOR
  11193. diff --git a/maps/GoldenrodGym.asm b/maps/GoldenrodGym.asm
  11194. index 84f2258..fc30ac0 100644
  11195. --- a/maps/GoldenrodGym.asm
  11196. +++ b/maps/GoldenrodGym.asm
  11197. @@ -393,9 +393,9 @@ GoldenrodGym_MapEventHeader:
  11198.  
  11199.  .PersonEvents:
  11200.     db 6
  11201. -   person_event SPRITE_WHITNEY, 3 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, WhitneyScript_0x5400c, -1
  11202. -   person_event SPRITE_LASS, 13 + 4, 9 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerLassCarrie, -1
  11203. -   person_event SPRITE_LASS, 6 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassBridget, -1
  11204. -   person_event SPRITE_BUENA, 2 + 4, 0 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautyVictoria, -1
  11205. -   person_event SPRITE_BUENA, 5 + 4, 19 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautySamantha, -1
  11206. -   person_event SPRITE_GYM_GUY, 15 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GoldenrodGymGuyScript, -1
  11207. +   person_event SPRITE_WHITNEY, 3, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, WhitneyScript_0x5400c, -1
  11208. +   person_event SPRITE_LASS, 13, 9, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerLassCarrie, -1
  11209. +   person_event SPRITE_LASS, 6, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassBridget, -1
  11210. +   person_event SPRITE_BUENA, 2, 0, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautyVictoria, -1
  11211. +   person_event SPRITE_BUENA, 5, 19, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBeautySamantha, -1
  11212. +   person_event SPRITE_GYM_GUY, 15, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GoldenrodGymGuyScript, -1
  11213. diff --git a/maps/GoldenrodHappinessRater.asm b/maps/GoldenrodHappinessRater.asm
  11214. index e20351d..5987e88 100644
  11215. --- a/maps/GoldenrodHappinessRater.asm
  11216. +++ b/maps/GoldenrodHappinessRater.asm
  11217. @@ -151,6 +151,6 @@ GoldenrodHappinessRater_MapEventHeader:
  11218.  
  11219.  .PersonEvents:
  11220.     db 3
  11221. -   person_event SPRITE_TEACHER, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x54953, -1
  11222. -   person_event SPRITE_POKEFAN_M, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x54997, -1
  11223. -   person_event SPRITE_TWIN, 6 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x5499a, -1
  11224. +   person_event SPRITE_TEACHER, 4, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x54953, -1
  11225. +   person_event SPRITE_POKEFAN_M, 3, 5, $8, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x54997, -1
  11226. +   person_event SPRITE_TWIN, 6, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x5499a, -1
  11227. diff --git a/maps/GoldenrodMagnetTrainStation.asm b/maps/GoldenrodMagnetTrainStation.asm
  11228. index 9b045d0..218ca08 100644
  11229. --- a/maps/GoldenrodMagnetTrainStation.asm
  11230. +++ b/maps/GoldenrodMagnetTrainStation.asm
  11231. @@ -182,5 +182,5 @@ GoldenrodMagnetTrainStation_MapEventHeader:
  11232.  
  11233.  .PersonEvents:
  11234.     db 2
  11235. -   person_event SPRITE_OFFICER, 9 + 4, 9 + 4, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x550ec, -1
  11236. -   person_event SPRITE_GENTLEMAN, 14 + 4, 11 + 4, $2, 2, 2, -1, -1, 0, 0, 0, GentlemanScript_0x55143, EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN
  11237. +   person_event SPRITE_OFFICER, 9, 9, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x550ec, -1
  11238. +   person_event SPRITE_GENTLEMAN, 14, 11, $2, 2, 2, -1, -1, 0, 0, 0, GentlemanScript_0x55143, EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN
  11239. diff --git a/maps/GoldenrodNameRatersHouse.asm b/maps/GoldenrodNameRatersHouse.asm
  11240. index 782405f..ff13bb6 100644
  11241. --- a/maps/GoldenrodNameRatersHouse.asm
  11242. +++ b/maps/GoldenrodNameRatersHouse.asm
  11243. @@ -41,4 +41,4 @@ GoldenrodNameRatersHouse_MapEventHeader:
  11244.  
  11245.  .PersonEvents:
  11246.     db 1
  11247. -   person_event SPRITE_GENTLEMAN, 4 + 4, 2 + 4, $6, 0, 2, -1, -1, 0, 0, 0, GentlemanScript_0x5577c, -1
  11248. +   person_event SPRITE_GENTLEMAN, 4, 2, $6, 0, 2, -1, -1, 0, 0, 0, GentlemanScript_0x5577c, -1
  11249. diff --git a/maps/GoldenrodPPSpeechHouse.asm b/maps/GoldenrodPPSpeechHouse.asm
  11250. index 04e8c00..294849c 100644
  11251. --- a/maps/GoldenrodPPSpeechHouse.asm
  11252. +++ b/maps/GoldenrodPPSpeechHouse.asm
  11253. @@ -67,5 +67,5 @@ GoldenrodPPSpeechHouse_MapEventHeader:
  11254.  
  11255.  .PersonEvents:
  11256.     db 2
  11257. -   person_event SPRITE_FISHER, 4 + 4, 2 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x5564a, -1
  11258. -   person_event SPRITE_LASS, 3 + 4, 5 + 4, $8, 1, 0, -1, -1, 0, 0, 0, LassScript_0x5564d, -1
  11259. +   person_event SPRITE_FISHER, 4, 2, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x5564a, -1
  11260. +   person_event SPRITE_LASS, 3, 5, $8, 1, 0, -1, -1, 0, 0, 0, LassScript_0x5564d, -1
  11261. diff --git a/maps/GoldenrodPokeCenter1F.asm b/maps/GoldenrodPokeCenter1F.asm
  11262. index f480d55..e36bc90 100644
  11263. --- a/maps/GoldenrodPokeCenter1F.asm
  11264. +++ b/maps/GoldenrodPokeCenter1F.asm
  11265. @@ -818,8 +818,8 @@ GoldenrodPokeCenter1F_MapEventHeader:
  11266.  
  11267.  .PersonEvents:
  11268.     db 5
  11269. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x60f91, -1
  11270. -   person_event SPRITE_LINK_RECEPTIONIST, 8 + 4, 16 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, -1
  11271. -   person_event SPRITE_GAMEBOY_KID, 1 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GameboyKidScript_0x6101e, -1
  11272. -   person_event SPRITE_LASS, 4 + 4, 1 + 4, $5, 0, 1, -1, -1, 0, 0, 0, LassScript_0x61021, -1
  11273. -   person_event SPRITE_POKEFAN_F, 5 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanFScript_0x61024, -1
  11274. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x60f91, -1
  11275. +   person_event SPRITE_LINK_RECEPTIONIST, 8, 16, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, -1
  11276. +   person_event SPRITE_GAMEBOY_KID, 1, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GameboyKidScript_0x6101e, -1
  11277. +   person_event SPRITE_LASS, 4, 1, $5, 0, 1, -1, -1, 0, 0, 0, LassScript_0x61021, -1
  11278. +   person_event SPRITE_POKEFAN_F, 5, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanFScript_0x61024, -1
  11279. diff --git a/maps/GoldenrodPokeComCenter2FMobile.asm b/maps/GoldenrodPokeComCenter2FMobile.asm
  11280. index 4049f64..30fb9e7 100644
  11281. --- a/maps/GoldenrodPokeComCenter2FMobile.asm
  11282. +++ b/maps/GoldenrodPokeComCenter2FMobile.asm
  11283. @@ -283,6 +283,6 @@ GoldenrodPokeComCenter2FMobile_MapEventHeader:
  11284.  
  11285.  .PersonEvents:
  11286.     db 3
  11287. -   person_event SPRITE_SCIENTIST, 28 + 4, 4 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ScientistScript_0x625d1, -1
  11288. -   person_event SPRITE_SCIENTIST, 27 + 4, 7 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x625d4, -1
  11289. -   person_event SPRITE_SCIENTIST, 29 + 4, 7 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ScientistScript_0x625d7, -1
  11290. +   person_event SPRITE_SCIENTIST, 28, 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ScientistScript_0x625d1, -1
  11291. +   person_event SPRITE_SCIENTIST, 27, 7, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x625d4, -1
  11292. +   person_event SPRITE_SCIENTIST, 29, 7, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ScientistScript_0x625d7, -1
  11293. diff --git a/maps/GuideGentsHouse.asm b/maps/GuideGentsHouse.asm
  11294. index 7738a9d..eb6c156 100644
  11295. --- a/maps/GuideGentsHouse.asm
  11296. +++ b/maps/GuideGentsHouse.asm
  11297. @@ -43,4 +43,4 @@ GuideGentsHouse_MapEventHeader:
  11298.  
  11299.  .PersonEvents:
  11300.     db 1
  11301. -   person_event SPRITE_GRAMPS, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GuideGentsHouseGuideGent, EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE
  11302. +   person_event SPRITE_GRAMPS, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, GuideGentsHouseGuideGent, EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE
  11303. diff --git a/maps/HallOfFame.asm b/maps/HallOfFame.asm
  11304. index 692662b..00ea547 100644
  11305. --- a/maps/HallOfFame.asm
  11306. +++ b/maps/HallOfFame.asm
  11307. @@ -41,7 +41,7 @@ HallOfFameScript:
  11308.     special HealParty
  11309.     checkevent EVENT_GOT_SS_TICKET_FROM_ELM
  11310.     iftrue .SkipPhoneCall
  11311. -   specialphonecall ELMCALL_SSTICKET
  11312. +   specialphonecall SPECIALCALL_SSTICKET
  11313.  .SkipPhoneCall:
  11314.     halloffame
  11315.     end
  11316. @@ -126,4 +126,4 @@ HallOfFame_MapEventHeader:
  11317.  
  11318.  .PersonEvents:
  11319.     db 1
  11320. -   person_event SPRITE_LANCE, 12 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, -1
  11321. +   person_event SPRITE_LANCE, 12, 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, -1
  11322. diff --git a/maps/IcePath1F.asm b/maps/IcePath1F.asm
  11323. index 2af51fd..5e8dc3a 100644
  11324. --- a/maps/IcePath1F.asm
  11325. +++ b/maps/IcePath1F.asm
  11326. @@ -33,6 +33,6 @@ IcePath1F_MapEventHeader:
  11327.  
  11328.  .PersonEvents:
  11329.     db 3
  11330. -   person_event SPRITE_POKE_BALL, 7 + 4, 31 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e472, EVENT_GOT_HM07_WATERFALL
  11331. -   person_event SPRITE_POKE_BALL, 23 + 4, 32 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e474, EVENT_ICE_PATH_1F_PP_UP
  11332. -   person_event SPRITE_POKE_BALL, 9 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e476, EVENT_ICE_PATH_1F_PROTEIN
  11333. +   person_event SPRITE_POKE_BALL, 7, 31, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e472, EVENT_GOT_HM07_WATERFALL
  11334. +   person_event SPRITE_POKE_BALL, 23, 32, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e474, EVENT_ICE_PATH_1F_PP_UP
  11335. +   person_event SPRITE_POKE_BALL, 9, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e476, EVENT_ICE_PATH_1F_PROTEIN
  11336. diff --git a/maps/IcePathB1F.asm b/maps/IcePathB1F.asm
  11337. index fc13beb..74ec802 100644
  11338. --- a/maps/IcePathB1F.asm
  11339. +++ b/maps/IcePathB1F.asm
  11340. @@ -107,8 +107,8 @@ IcePathB1F_MapEventHeader:
  11341.  
  11342.  .PersonEvents:
  11343.     db 5
  11344. -   person_event SPRITE_BOULDER, 7 + 4, 11 + 4, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_1
  11345. -   person_event SPRITE_BOULDER, 8 + 4, 7 + 4, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_2
  11346. -   person_event SPRITE_BOULDER, 9 + 4, 8 + 4, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_3
  11347. -   person_event SPRITE_BOULDER, 7 + 4, 17 + 4, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_4
  11348. -   person_event SPRITE_POKE_BALL, 35 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e50d, EVENT_ICE_PATH_B1F_IRON
  11349. +   person_event SPRITE_BOULDER, 7, 11, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_1
  11350. +   person_event SPRITE_BOULDER, 8, 7, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_2
  11351. +   person_event SPRITE_BOULDER, 9, 8, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_3
  11352. +   person_event SPRITE_BOULDER, 7, 17, $19, 0, 0, -1, -1, 0, 0, 0, IcePathB1FBoulder, EVENT_BOULDER_IN_ICE_PATH_4
  11353. +   person_event SPRITE_POKE_BALL, 35, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e50d, EVENT_ICE_PATH_B1F_IRON
  11354. diff --git a/maps/IcePathB2FBlackthornSide.asm b/maps/IcePathB2FBlackthornSide.asm
  11355. index 1f55fc7..5e31ea6 100644
  11356. --- a/maps/IcePathB2FBlackthornSide.asm
  11357. +++ b/maps/IcePathB2FBlackthornSide.asm
  11358. @@ -30,4 +30,4 @@ IcePathB2FBlackthornSide_MapEventHeader:
  11359.  
  11360.  .PersonEvents:
  11361.     db 1
  11362. -   person_event SPRITE_POKE_BALL, 16 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e646, EVENT_ICE_PATH_B2F_BLACKTHORN_SIDE_TM_REST
  11363. +   person_event SPRITE_POKE_BALL, 16, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e646, EVENT_ICE_PATH_B2F_BLACKTHORN_SIDE_TM_REST
  11364. diff --git a/maps/IcePathB2FMahoganySide.asm b/maps/IcePathB2FMahoganySide.asm
  11365. index e962ff0..09d3766 100644
  11366. --- a/maps/IcePathB2FMahoganySide.asm
  11367. +++ b/maps/IcePathB2FMahoganySide.asm
  11368. @@ -45,9 +45,9 @@ IcePathB2FMahoganySide_MapEventHeader:
  11369.  
  11370.  .PersonEvents:
  11371.     db 6
  11372. -   person_event SPRITE_BOULDER, 3 + 4, 11 + 4, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_1A
  11373. -   person_event SPRITE_BOULDER, 7 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_2A
  11374. -   person_event SPRITE_BOULDER, 12 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_3A
  11375. -   person_event SPRITE_BOULDER, 13 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_4A
  11376. -   person_event SPRITE_POKE_BALL, 9 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e5a6, EVENT_ICE_PATH_B2F_MAHOGANY_SIDE_FULL_HEAL
  11377. -   person_event SPRITE_POKE_BALL, 2 + 4, 0 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e5a8, EVENT_ICE_PATH_B2F_MAHOGANY_SIDE_MAX_POTION
  11378. +   person_event SPRITE_BOULDER, 3, 11, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_1A
  11379. +   person_event SPRITE_BOULDER, 7, 4, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_2A
  11380. +   person_event SPRITE_BOULDER, 12, 3, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_3A
  11381. +   person_event SPRITE_BOULDER, 13, 12, $1, 0, 0, -1, -1, 0, 0, 0, BoulderScript_0x7e5a3, EVENT_BOULDER_IN_ICE_PATH_4A
  11382. +   person_event SPRITE_POKE_BALL, 9, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e5a6, EVENT_ICE_PATH_B2F_MAHOGANY_SIDE_FULL_HEAL
  11383. +   person_event SPRITE_POKE_BALL, 2, 0, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e5a8, EVENT_ICE_PATH_B2F_MAHOGANY_SIDE_MAX_POTION
  11384. diff --git a/maps/IcePathB3F.asm b/maps/IcePathB3F.asm
  11385. index 9bfc203..1be274d 100644
  11386. --- a/maps/IcePathB3F.asm
  11387. +++ b/maps/IcePathB3F.asm
  11388. @@ -28,5 +28,5 @@ IcePathB3F_MapEventHeader:
  11389.  
  11390.  .PersonEvents:
  11391.     db 2
  11392. -   person_event SPRITE_POKE_BALL, 7 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e66f, EVENT_ICE_PATH_B3F_NEVERMELTICE
  11393. -   person_event SPRITE_ROCK, 6 + 4, 6 + 4, $18, 0, 0, -1, -1, 0, 0, 0, IcePathB3FRock, -1
  11394. +   person_event SPRITE_POKE_BALL, 7, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e66f, EVENT_ICE_PATH_B3F_NEVERMELTICE
  11395. +   person_event SPRITE_ROCK, 6, 6, $18, 0, 0, -1, -1, 0, 0, 0, IcePathB3FRock, -1
  11396. diff --git a/maps/IlexForest.asm b/maps/IlexForest.asm
  11397. index ec0c073..cab0b66 100644
  11398. --- a/maps/IlexForest.asm
  11399. +++ b/maps/IlexForest.asm
  11400. @@ -950,14 +950,14 @@ IlexForest_MapEventHeader:
  11401.  
  11402.  .PersonEvents:
  11403.     db 11
  11404. -   person_event SPRITE_BIRD, 31 + 4, 14 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BirdScript_0x6eb8f, EVENT_ILEX_FOREST_FARFETCHD
  11405. -   person_event SPRITE_YOUNGSTER, 28 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6eb7b, EVENT_ILEX_FOREST_APPRENTICE
  11406. -   person_event SPRITE_BLACK_BELT, 28 + 4, 5 + 4, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x6edae, EVENT_ILEX_FOREST_CHARCOAL_MASTER
  11407. -   person_event SPRITE_ROCKER, 14 + 4, 15 + 4, $9, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x6edde, -1
  11408. -   person_event SPRITE_POKE_BALL, 32 + 4, 20 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee10, EVENT_ILEX_FOREST_REVIVE
  11409. -   person_event SPRITE_KURT, 29 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_ILEX_FOREST_KURT
  11410. -   person_event SPRITE_LASS, 24 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x6ee0d, EVENT_ILEX_FOREST_LASS
  11411. -   person_event SPRITE_YOUNGSTER, 1 + 4, 12 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerBug_catcherWayne, -1
  11412. -   person_event SPRITE_POKE_BALL, 17 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee12, EVENT_ILEX_FOREST_X_ATTACK
  11413. -   person_event SPRITE_POKE_BALL, 7 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee14, EVENT_ILEX_FOREST_ANTIDOTE
  11414. -   person_event SPRITE_POKE_BALL, 1 + 4, 27 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee16, EVENT_ILEX_FOREST_ETHER
  11415. +   person_event SPRITE_BIRD, 31, 14, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BirdScript_0x6eb8f, EVENT_ILEX_FOREST_FARFETCHD
  11416. +   person_event SPRITE_YOUNGSTER, 28, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6eb7b, EVENT_ILEX_FOREST_APPRENTICE
  11417. +   person_event SPRITE_BLACK_BELT, 28, 5, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x6edae, EVENT_ILEX_FOREST_CHARCOAL_MASTER
  11418. +   person_event SPRITE_ROCKER, 14, 15, $9, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x6edde, -1
  11419. +   person_event SPRITE_POKE_BALL, 32, 20, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee10, EVENT_ILEX_FOREST_REVIVE
  11420. +   person_event SPRITE_KURT, 29, 8, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_ILEX_FOREST_KURT
  11421. +   person_event SPRITE_LASS, 24, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x6ee0d, EVENT_ILEX_FOREST_LASS
  11422. +   person_event SPRITE_YOUNGSTER, 1, 12, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerBug_catcherWayne, -1
  11423. +   person_event SPRITE_POKE_BALL, 17, 9, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee12, EVENT_ILEX_FOREST_X_ATTACK
  11424. +   person_event SPRITE_POKE_BALL, 7, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee14, EVENT_ILEX_FOREST_ANTIDOTE
  11425. +   person_event SPRITE_POKE_BALL, 1, 27, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6ee16, EVENT_ILEX_FOREST_ETHER
  11426. diff --git a/maps/IlexForestAzaleaGate.asm b/maps/IlexForestAzaleaGate.asm
  11427. index 80afe52..57034a7 100644
  11428. --- a/maps/IlexForestAzaleaGate.asm
  11429. +++ b/maps/IlexForestAzaleaGate.asm
  11430. @@ -45,5 +45,5 @@ IlexForestAzaleaGate_MapEventHeader:
  11431.  
  11432.  .PersonEvents:
  11433.     db 2
  11434. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x62c7a, -1
  11435. -   person_event SPRITE_GRANNY, 3 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x62c7d, -1
  11436. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x62c7a, -1
  11437. +   person_event SPRITE_GRANNY, 3, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x62c7d, -1
  11438. diff --git a/maps/IndigoPlateauPokeCenter1F.asm b/maps/IndigoPlateauPokeCenter1F.asm
  11439. index f920a0a..c4ab11a 100644
  11440. --- a/maps/IndigoPlateauPokeCenter1F.asm
  11441. +++ b/maps/IndigoPlateauPokeCenter1F.asm
  11442. @@ -319,9 +319,9 @@ IndigoPlateauPokeCenter1F_MapEventHeader:
  11443.  
  11444.  .PersonEvents:
  11445.     db 6
  11446. -   person_event SPRITE_NURSE, 7 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18012c, -1
  11447. -   person_event SPRITE_CLERK, 7 + 4, 11 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18012f, -1
  11448. -   person_event SPRITE_COOLTRAINER_M, 11 + 4, 11 + 4, $2, 2, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x180136, -1
  11449. -   person_event SPRITE_SILVER, 9 + 4, 16 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
  11450. -   person_event SPRITE_GRAMPS, 9 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeleportGuyScript, EVENT_TELEPORT_GUY
  11451. -   person_event SPRITE_JYNX, 9 + 4, 0 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, AbraScript, EVENT_TELEPORT_GUY
  11452. +   person_event SPRITE_NURSE, 7, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18012c, -1
  11453. +   person_event SPRITE_CLERK, 7, 11, $6, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18012f, -1
  11454. +   person_event SPRITE_COOLTRAINER_M, 11, 11, $2, 2, 2, -1, -1, 0, 0, 0, CooltrainerMScript_0x180136, -1
  11455. +   person_event SPRITE_SILVER, 9, 16, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
  11456. +   person_event SPRITE_GRAMPS, 9, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeleportGuyScript, EVENT_TELEPORT_GUY
  11457. +   person_event SPRITE_JYNX, 9, 0, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, AbraScript, EVENT_TELEPORT_GUY
  11458. diff --git a/maps/KarensRoom.asm b/maps/KarensRoom.asm
  11459. index f79fe4e..978aaac 100644
  11460. --- a/maps/KarensRoom.asm
  11461. +++ b/maps/KarensRoom.asm
  11462. @@ -153,4 +153,4 @@ KarensRoom_MapEventHeader:
  11463.  
  11464.  .PersonEvents:
  11465.     db 1
  11466. -   person_event SPRITE_KAREN, 7 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KarenScript_0x180bee, -1
  11467. +   person_event SPRITE_KAREN, 7, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KarenScript_0x180bee, -1
  11468. diff --git a/maps/KogasRoom.asm b/maps/KogasRoom.asm
  11469. index 3aede23..0b2dfa8 100644
  11470. --- a/maps/KogasRoom.asm
  11471. +++ b/maps/KogasRoom.asm
  11472. @@ -150,4 +150,4 @@ KogasRoom_MapEventHeader:
  11473.  
  11474.  .PersonEvents:
  11475.     db 1
  11476. -   person_event SPRITE_KOGA, 7 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, KogaScript_0x18075a, -1
  11477. +   person_event SPRITE_KOGA, 7, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, KogaScript_0x18075a, -1
  11478. diff --git a/maps/KrissHouse1F.asm b/maps/KrissHouse1F.asm
  11479. index ca27ec2..50f32a5 100644
  11480. --- a/maps/KrissHouse1F.asm
  11481. +++ b/maps/KrissHouse1F.asm
  11482. @@ -404,8 +404,8 @@ KrissHouse1F_MapEventHeader:
  11483.  
  11484.  .PersonEvents:
  11485.     db 5
  11486. -   person_event SPRITE_MOM, 4 + 4, 7 + 4, $8, 0, 0, -1, -1, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_1
  11487. -   person_event SPRITE_MOM, 2 + 4, 2 + 4, $7, 0, 0, -1, 1, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11488. -   person_event SPRITE_MOM, 4 + 4, 7 + 4, $8, 0, 0, -1, 2, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11489. -   person_event SPRITE_MOM, 2 + 4, 0 + 4, $7, 0, 0, -1, 4, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11490. -   person_event SPRITE_POKEFAN_F, 4 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, NeighborScript, EVENT_KRISS_HOUSE_1F_NEIGHBOR
  11491. +   person_event SPRITE_MOM, 4, 7, $8, 0, 0, -1, -1, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_1
  11492. +   person_event SPRITE_MOM, 2, 2, $7, 0, 0, -1, 1, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11493. +   person_event SPRITE_MOM, 4, 7, $8, 0, 0, -1, 2, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11494. +   person_event SPRITE_MOM, 2, 0, $7, 0, 0, -1, 4, 0, 0, 0, MomScript_0x7a582, EVENT_KRISS_HOUSE_MOM_2
  11495. +   person_event SPRITE_POKEFAN_F, 4, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, NeighborScript, EVENT_KRISS_HOUSE_1F_NEIGHBOR
  11496. diff --git a/maps/KrissHouse2F.asm b/maps/KrissHouse2F.asm
  11497. index 176ab09..62ec48b 100644
  11498. --- a/maps/KrissHouse2F.asm
  11499. +++ b/maps/KrissHouse2F.asm
  11500. @@ -132,7 +132,7 @@ KrissHouse2F_MapEventHeader:
  11501.  
  11502.  .PersonEvents:
  11503.     db 4
  11504. -   person_event SPRITE_CONSOLE, 2 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 0, 0, GameConsole, EVENT_KRISS_HOUSE_2F_CONSOLE
  11505. -   person_event SPRITE_DOLL_1, 4 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 0, 0, Doll1, EVENT_KRISS_HOUSE_2F_DOLL_1
  11506. -   person_event SPRITE_DOLL_2, 4 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 0, 0, Doll2, EVENT_KRISS_HOUSE_2F_DOLL_2
  11507. -   person_event SPRITE_BIG_DOLL, 1 + 4, 0 + 4, $21, 0, 0, -1, -1, 0, 0, 0, BigDoll, EVENT_KRISS_HOUSE_2F_BIG_DOLL
  11508. +   person_event SPRITE_CONSOLE, 2, 4, $1, 0, 0, -1, -1, 0, 0, 0, GameConsole, EVENT_KRISS_HOUSE_2F_CONSOLE
  11509. +   person_event SPRITE_DOLL_1, 4, 4, $1, 0, 0, -1, -1, 0, 0, 0, Doll1, EVENT_KRISS_HOUSE_2F_DOLL_1
  11510. +   person_event SPRITE_DOLL_2, 4, 5, $1, 0, 0, -1, -1, 0, 0, 0, Doll2, EVENT_KRISS_HOUSE_2F_DOLL_2
  11511. +   person_event SPRITE_BIG_DOLL, 1, 0, $21, 0, 0, -1, -1, 0, 0, 0, BigDoll, EVENT_KRISS_HOUSE_2F_BIG_DOLL
  11512. diff --git a/maps/KrissNeighborsHouse.asm b/maps/KrissNeighborsHouse.asm
  11513. index bc97f56..defaf84 100644
  11514. --- a/maps/KrissNeighborsHouse.asm
  11515. +++ b/maps/KrissNeighborsHouse.asm
  11516. @@ -114,5 +114,5 @@ KrissNeighborsHouse_MapEventHeader:
  11517.  
  11518.  .PersonEvents:
  11519.     db 2
  11520. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KrissNeighborsDaughter, -1
  11521. -   person_event SPRITE_POKEFAN_F, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KrissNeighbor, EVENT_KRISS_NEIGHBORS_HOUSE_NEIGHBOR
  11522. +   person_event SPRITE_COOLTRAINER_F, 3, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KrissNeighborsDaughter, -1
  11523. +   person_event SPRITE_POKEFAN_F, 3, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, KrissNeighbor, EVENT_KRISS_NEIGHBORS_HOUSE_NEIGHBOR
  11524. diff --git a/maps/KurtsHouse.asm b/maps/KurtsHouse.asm
  11525. index c1a8add..5a43e1e 100644
  11526. --- a/maps/KurtsHouse.asm
  11527. +++ b/maps/KurtsHouse.asm
  11528. @@ -696,8 +696,8 @@ KurtsHouse_MapEventHeader:
  11529.  
  11530.  .PersonEvents:
  11531.     db 5
  11532. -   person_event SPRITE_KURT, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x18e178, EVENT_KURTS_HOUSE_KURT_1
  11533. -   person_event SPRITE_TWIN, 3 + 4, 5 + 4, $3, 0, 0, -1, -1, 0, 0, 0, KurtsGranddaughter1, EVENT_KURTS_HOUSE_GRANDDAUGHTER_1
  11534. -   person_event SPRITE_SLOWPOKE, 3 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 0, 0, KurtsHouseSlowpoke, EVENT_KURTS_HOUSE_SLOWPOKE
  11535. -   person_event SPRITE_KURT, 3 + 4, 14 + 4, $7, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x18e3bd, EVENT_KURTS_HOUSE_KURT_2
  11536. -   person_event SPRITE_TWIN, 4 + 4, 11 + 4, $9, 0, 0, -1, -1, 0, 0, 0, KurtsGranddaughter2, EVENT_KURTS_HOUSE_GRANDDAUGHTER_2
  11537. +   person_event SPRITE_KURT, 2, 3, $6, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x18e178, EVENT_KURTS_HOUSE_KURT_1
  11538. +   person_event SPRITE_TWIN, 3, 5, $3, 0, 0, -1, -1, 0, 0, 0, KurtsGranddaughter1, EVENT_KURTS_HOUSE_GRANDDAUGHTER_1
  11539. +   person_event SPRITE_SLOWPOKE, 3, 6, $1, 0, 0, -1, -1, 0, 0, 0, KurtsHouseSlowpoke, EVENT_KURTS_HOUSE_SLOWPOKE
  11540. +   person_event SPRITE_KURT, 3, 14, $7, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x18e3bd, EVENT_KURTS_HOUSE_KURT_2
  11541. +   person_event SPRITE_TWIN, 4, 11, $9, 0, 0, -1, -1, 0, 0, 0, KurtsGranddaughter2, EVENT_KURTS_HOUSE_GRANDDAUGHTER_2
  11542. diff --git a/maps/LakeofRage.asm b/maps/LakeofRage.asm
  11543. index e01b52f..8fabac5 100644
  11544. --- a/maps/LakeofRage.asm
  11545. +++ b/maps/LakeofRage.asm
  11546. @@ -509,15 +509,15 @@ LakeofRage_MapEventHeader:
  11547.  
  11548.  .PersonEvents:
  11549.     db 12
  11550. -   person_event SPRITE_LANCE, 28 + 4, 21 + 4, $7, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x70022, EVENT_LAKE_OF_RAGE_LANCE
  11551. -   person_event SPRITE_GRAMPS, 26 + 4, 20 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x7008e, -1
  11552. -   person_event SPRITE_SUPER_NERD, 13 + 4, 36 + 4, $8, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x700a2, -1
  11553. -   person_event SPRITE_COOLTRAINER_F, 29 + 4, 25 + 4, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x700a5, -1
  11554. -   person_event SPRITE_FISHER, 23 + 4, 30 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerFisherAndre, EVENT_LAKE_OF_RAGE_CIVILIANS
  11555. -   person_event SPRITE_FISHER, 26 + 4, 24 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerFisherRaymond, EVENT_LAKE_OF_RAGE_CIVILIANS
  11556. -   person_event SPRITE_COOLTRAINER_M, 15 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermAaron, EVENT_LAKE_OF_RAGE_CIVILIANS
  11557. -   person_event SPRITE_COOLTRAINER_F, 7 + 4, 36 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerCooltrainerfLois, EVENT_LAKE_OF_RAGE_CIVILIANS
  11558. -   person_event SPRITE_GYARADOS, 22 + 4, 18 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GyaradosScript_0x70063, EVENT_LAKE_OF_RAGE_RED_GYARADOS
  11559. -   person_event SPRITE_SUPER_NERD, 4 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, WesleyScript, EVENT_LAKE_OF_RAGE_WESLEY_OF_WEDNESDAY
  11560. -   person_event SPRITE_POKE_BALL, 10 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x70148, EVENT_LAKE_OF_RAGE_ELIXER
  11561. -   person_event SPRITE_POKE_BALL, 2 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7014a, EVENT_LAKE_OF_RAGE_TM_DETECT
  11562. +   person_event SPRITE_LANCE, 28, 21, $7, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x70022, EVENT_LAKE_OF_RAGE_LANCE
  11563. +   person_event SPRITE_GRAMPS, 26, 20, $7, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x7008e, -1
  11564. +   person_event SPRITE_SUPER_NERD, 13, 36, $8, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x700a2, -1
  11565. +   person_event SPRITE_COOLTRAINER_F, 29, 25, $5, 0, 1, -1, -1, 0, 0, 0, CooltrainerFScript_0x700a5, -1
  11566. +   person_event SPRITE_FISHER, 23, 30, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerFisherAndre, EVENT_LAKE_OF_RAGE_CIVILIANS
  11567. +   person_event SPRITE_FISHER, 26, 24, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerFisherRaymond, EVENT_LAKE_OF_RAGE_CIVILIANS
  11568. +   person_event SPRITE_COOLTRAINER_M, 15, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermAaron, EVENT_LAKE_OF_RAGE_CIVILIANS
  11569. +   person_event SPRITE_COOLTRAINER_F, 7, 36, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerCooltrainerfLois, EVENT_LAKE_OF_RAGE_CIVILIANS
  11570. +   person_event SPRITE_GYARADOS, 22, 18, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GyaradosScript_0x70063, EVENT_LAKE_OF_RAGE_RED_GYARADOS
  11571. +   person_event SPRITE_SUPER_NERD, 4, 4, $6, 0, 0, -1, -1, 0, 0, 0, WesleyScript, EVENT_LAKE_OF_RAGE_WESLEY_OF_WEDNESDAY
  11572. +   person_event SPRITE_POKE_BALL, 10, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x70148, EVENT_LAKE_OF_RAGE_ELIXER
  11573. +   person_event SPRITE_POKE_BALL, 2, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7014a, EVENT_LAKE_OF_RAGE_TM_DETECT
  11574. diff --git a/maps/LakeofRageHiddenPowerHouse.asm b/maps/LakeofRageHiddenPowerHouse.asm
  11575. index bf14df9..caf510f 100644
  11576. --- a/maps/LakeofRageHiddenPowerHouse.asm
  11577. +++ b/maps/LakeofRageHiddenPowerHouse.asm
  11578. @@ -83,4 +83,4 @@ LakeofRageHiddenPowerHouse_MapEventHeader:
  11579.  
  11580.  .PersonEvents:
  11581.     db 1
  11582. -   person_event SPRITE_FISHER, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, HiddenPowerGuy, -1
  11583. +   person_event SPRITE_FISHER, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, HiddenPowerGuy, -1
  11584. diff --git a/maps/LakeofRageMagikarpHouse.asm b/maps/LakeofRageMagikarpHouse.asm
  11585. index d14c3aa..42b3ffa 100644
  11586. --- a/maps/LakeofRageMagikarpHouse.asm
  11587. +++ b/maps/LakeofRageMagikarpHouse.asm
  11588. @@ -221,4 +221,4 @@ LakeofRageMagikarpHouse_MapEventHeader:
  11589.  
  11590.  .PersonEvents:
  11591.     db 1
  11592. -   person_event SPRITE_FISHING_GURU, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x19a6ae, -1
  11593. +   person_event SPRITE_FISHING_GURU, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x19a6ae, -1
  11594. diff --git a/maps/LancesRoom.asm b/maps/LancesRoom.asm
  11595. index efe4eb6..aaa239c 100644
  11596. --- a/maps/LancesRoom.asm
  11597. +++ b/maps/LancesRoom.asm
  11598. @@ -358,6 +358,6 @@ LancesRoom_MapEventHeader:
  11599.  
  11600.  .PersonEvents:
  11601.     db 3
  11602. -   person_event SPRITE_LANCE, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x180e7b, -1
  11603. -   person_event SPRITE_TEACHER, 7 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY
  11604. -   person_event SPRITE_OAK, 7 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY
  11605. +   person_event SPRITE_LANCE, 3, 5, $6, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x180e7b, -1
  11606. +   person_event SPRITE_TEACHER, 7, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY
  11607. +   person_event SPRITE_OAK, 7, 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY
  11608. diff --git a/maps/LavRadioTower1F.asm b/maps/LavRadioTower1F.asm
  11609. index cebb23b..7f7d82d 100644
  11610. --- a/maps/LavRadioTower1F.asm
  11611. +++ b/maps/LavRadioTower1F.asm
  11612. @@ -233,8 +233,8 @@ LavRadioTower1F_MapEventHeader:
  11613.  
  11614.  .PersonEvents:
  11615.     db 5
  11616. -   person_event SPRITE_RECEPTIONIST, 6 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x7ee63, -1
  11617. -   person_event SPRITE_OFFICER, 1 + 4, 15 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x7ee66, -1
  11618. -   person_event SPRITE_SUPER_NERD, 3 + 4, 1 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x7ee69, -1
  11619. -   person_event SPRITE_GENTLEMAN, 1 + 4, 9 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x7ee6c, -1
  11620. -   person_event SPRITE_SUPER_NERD, 6 + 4, 14 + 4, $9, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7eea2, -1
  11621. +   person_event SPRITE_RECEPTIONIST, 6, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x7ee63, -1
  11622. +   person_event SPRITE_OFFICER, 1, 15, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x7ee66, -1
  11623. +   person_event SPRITE_SUPER_NERD, 3, 1, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x7ee69, -1
  11624. +   person_event SPRITE_GENTLEMAN, 1, 9, $7, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x7ee6c, -1
  11625. +   person_event SPRITE_SUPER_NERD, 6, 14, $9, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7eea2, -1
  11626. diff --git a/maps/LavenderMart.asm b/maps/LavenderMart.asm
  11627. index af508f5..f6b7823 100644
  11628. --- a/maps/LavenderMart.asm
  11629. +++ b/maps/LavenderMart.asm
  11630. @@ -59,6 +59,6 @@ LavenderMart_MapEventHeader:
  11631.  
  11632.  .PersonEvents:
  11633.     db 3
  11634. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x7eb1c, -1
  11635. -   person_event SPRITE_POKEFAN_M, 6 + 4, 6 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x7eb23, -1
  11636. -   person_event SPRITE_ROCKER, 2 + 4, 9 + 4, $3, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x7eb26, -1
  11637. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x7eb1c, -1
  11638. +   person_event SPRITE_POKEFAN_M, 6, 6, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x7eb23, -1
  11639. +   person_event SPRITE_ROCKER, 2, 9, $3, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x7eb26, -1
  11640. diff --git a/maps/LavenderNameRater.asm b/maps/LavenderNameRater.asm
  11641. index 527f452..e00fab6 100644
  11642. --- a/maps/LavenderNameRater.asm
  11643. +++ b/maps/LavenderNameRater.asm
  11644. @@ -40,4 +40,4 @@ LavenderNameRater_MapEventHeader:
  11645.  
  11646.  .PersonEvents:
  11647.     db 1
  11648. -   person_event SPRITE_GENTLEMAN, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LavenderNameRater, -1
  11649. +   person_event SPRITE_GENTLEMAN, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LavenderNameRater, -1
  11650. diff --git a/maps/LavenderPokeCenter1F.asm b/maps/LavenderPokeCenter1F.asm
  11651. index cf07476..ee1a4bf 100644
  11652. --- a/maps/LavenderPokeCenter1F.asm
  11653. +++ b/maps/LavenderPokeCenter1F.asm
  11654. @@ -92,7 +92,7 @@ LavenderPokeCenter1F_MapEventHeader:
  11655.  
  11656.  .PersonEvents:
  11657.     db 4
  11658. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x7e6a0, -1
  11659. -   person_event SPRITE_GENTLEMAN, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GentlemanScript_0x7e6a3, -1
  11660. -   person_event SPRITE_TEACHER, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x7e6a6, -1
  11661. -   person_event SPRITE_YOUNGSTER, 5 + 4, 1 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x7e6a9, -1
  11662. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x7e6a0, -1
  11663. +   person_event SPRITE_GENTLEMAN, 6, 7, $5, 0, 1, -1, -1, 0, 0, 0, GentlemanScript_0x7e6a3, -1
  11664. +   person_event SPRITE_TEACHER, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x7e6a6, -1
  11665. +   person_event SPRITE_YOUNGSTER, 5, 1, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x7e6a9, -1
  11666. diff --git a/maps/LavenderTown.asm b/maps/LavenderTown.asm
  11667. index 068a5c7..65b6054 100644
  11668. --- a/maps/LavenderTown.asm
  11669. +++ b/maps/LavenderTown.asm
  11670. @@ -129,7 +129,7 @@ LavenderTown_MapEventHeader:
  11671.  
  11672.  .PersonEvents:
  11673.     db 4
  11674. -   person_event SPRITE_POKEFAN_M, 7 + 4, 12 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1ad6e4, -1
  11675. -   person_event SPRITE_TEACHER, 15 + 4, 2 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x1ad6e7, -1
  11676. -   person_event SPRITE_GRAMPS, 12 + 4, 14 + 4, $7, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1ad6ea, -1
  11677. -   person_event SPRITE_YOUNGSTER, 11 + 4, 6 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 1, YoungsterScript_0x1ad6ed, -1
  11678. +   person_event SPRITE_POKEFAN_M, 7, 12, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1ad6e4, -1
  11679. +   person_event SPRITE_TEACHER, 15, 2, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x1ad6e7, -1
  11680. +   person_event SPRITE_GRAMPS, 12, 14, $7, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1ad6ea, -1
  11681. +   person_event SPRITE_YOUNGSTER, 11, 6, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 1, YoungsterScript_0x1ad6ed, -1
  11682. diff --git a/maps/LavenderTownSpeechHouse.asm b/maps/LavenderTownSpeechHouse.asm
  11683. index a132e3a..37d0677 100644
  11684. --- a/maps/LavenderTownSpeechHouse.asm
  11685. +++ b/maps/LavenderTownSpeechHouse.asm
  11686. @@ -44,4 +44,4 @@ LavenderTownSpeechHouse_MapEventHeader:
  11687.  
  11688.  .PersonEvents:
  11689.     db 1
  11690. -   person_event SPRITE_POKEFAN_F, 3 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x7ea47, -1
  11691. +   person_event SPRITE_POKEFAN_F, 3, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x7ea47, -1
  11692. diff --git a/maps/MahoganyGym.asm b/maps/MahoganyGym.asm
  11693. index 8a8179e..9616d1a 100644
  11694. --- a/maps/MahoganyGym.asm
  11695. +++ b/maps/MahoganyGym.asm
  11696. @@ -382,10 +382,10 @@ MahoganyGym_MapEventHeader:
  11697.  
  11698.  .PersonEvents:
  11699.     db 7
  11700. -   person_event SPRITE_PRYCE, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PryceScript_0x199a9e, -1
  11701. -   person_event SPRITE_BUENA, 6 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerSkierRoxanne, -1
  11702. -   person_event SPRITE_ROCKER, 17 + 4, 0 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderRonald, -1
  11703. -   person_event SPRITE_BUENA, 17 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerSkierClarissa, -1
  11704. -   person_event SPRITE_ROCKER, 9 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderBrad, -1
  11705. -   person_event SPRITE_ROCKER, 4 + 4, 2 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderDouglas, -1
  11706. -   person_event SPRITE_GYM_GUY, 15 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MahoganyGymGuyScript, -1
  11707. +   person_event SPRITE_PRYCE, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PryceScript_0x199a9e, -1
  11708. +   person_event SPRITE_BUENA, 6, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerSkierRoxanne, -1
  11709. +   person_event SPRITE_ROCKER, 17, 0, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderRonald, -1
  11710. +   person_event SPRITE_BUENA, 17, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerSkierClarissa, -1
  11711. +   person_event SPRITE_ROCKER, 9, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderBrad, -1
  11712. +   person_event SPRITE_ROCKER, 4, 2, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBoarderDouglas, -1
  11713. +   person_event SPRITE_GYM_GUY, 15, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, MahoganyGymGuyScript, -1
  11714. diff --git a/maps/MahoganyMart1F.asm b/maps/MahoganyMart1F.asm
  11715. index fb9268b..815e53b 100644
  11716. --- a/maps/MahoganyMart1F.asm
  11717. +++ b/maps/MahoganyMart1F.asm
  11718. @@ -236,8 +236,8 @@ MahoganyMart1F_MapEventHeader:
  11719.  
  11720.  .PersonEvents:
  11721.     db 5
  11722. -   person_event SPRITE_PHARMACIST, 3 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PharmacistScript_0x6c367, EVENT_TEAM_ROCKET_BASE_POPULATION
  11723. -   person_event SPRITE_BLACK_BELT, 6 + 4, 1 + 4, $3, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x6c37b, EVENT_TEAM_ROCKET_BASE_POPULATION
  11724. -   person_event SPRITE_LANCE, 6 + 4, 4 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
  11725. -   person_event SPRITE_DRAGON, 6 + 4, 3 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
  11726. -   person_event SPRITE_GRANNY, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x6c3ee, EVENT_MAHOGANY_MART_OWNERS
  11727. +   person_event SPRITE_PHARMACIST, 3, 4, $6, 0, 0, -1, -1, 0, 0, 0, PharmacistScript_0x6c367, EVENT_TEAM_ROCKET_BASE_POPULATION
  11728. +   person_event SPRITE_BLACK_BELT, 6, 1, $3, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x6c37b, EVENT_TEAM_ROCKET_BASE_POPULATION
  11729. +   person_event SPRITE_LANCE, 6, 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
  11730. +   person_event SPRITE_DRAGON, 6, 3, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
  11731. +   person_event SPRITE_GRANNY, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x6c3ee, EVENT_MAHOGANY_MART_OWNERS
  11732. diff --git a/maps/MahoganyPokeCenter1F.asm b/maps/MahoganyPokeCenter1F.asm
  11733. index 3c17a26..f7f8a39 100644
  11734. --- a/maps/MahoganyPokeCenter1F.asm
  11735. +++ b/maps/MahoganyPokeCenter1F.asm
  11736. @@ -65,7 +65,7 @@ MahoganyPokeCenter1F_MapEventHeader:
  11737.  
  11738.  .PersonEvents:
  11739.     db 4
  11740. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x19a356, -1
  11741. -   person_event SPRITE_POKEFAN_M, 2 + 4, 7 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x19a359, -1
  11742. -   person_event SPRITE_YOUNGSTER, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x19a35c, -1
  11743. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 2 + 4, $8, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x19a35f, -1
  11744. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x19a356, -1
  11745. +   person_event SPRITE_POKEFAN_M, 2, 7, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x19a359, -1
  11746. +   person_event SPRITE_YOUNGSTER, 3, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x19a35c, -1
  11747. +   person_event SPRITE_COOLTRAINER_F, 3, 2, $8, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x19a35f, -1
  11748. diff --git a/maps/MahoganyRedGyaradosSpeechHouse.asm b/maps/MahoganyRedGyaradosSpeechHouse.asm
  11749. index cfd430a..e8f3f71 100644
  11750. --- a/maps/MahoganyRedGyaradosSpeechHouse.asm
  11751. +++ b/maps/MahoganyRedGyaradosSpeechHouse.asm
  11752. @@ -73,5 +73,5 @@ MahoganyRedGyaradosSpeechHouse_MapEventHeader:
  11753.  
  11754.  .PersonEvents:
  11755.     db 2
  11756. -   person_event SPRITE_BLACK_BELT, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x19997f, -1
  11757. -   person_event SPRITE_TEACHER, 5 + 4, 6 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x199982, -1
  11758. +   person_event SPRITE_BLACK_BELT, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x19997f, -1
  11759. +   person_event SPRITE_TEACHER, 5, 6, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x199982, -1
  11760. diff --git a/maps/MahoganyTown.asm b/maps/MahoganyTown.asm
  11761. index 9bc2741..fd58269 100644
  11762. --- a/maps/MahoganyTown.asm
  11763. +++ b/maps/MahoganyTown.asm
  11764. @@ -268,7 +268,7 @@ MahoganyTown_MapEventHeader:
  11765.  
  11766.  .PersonEvents:
  11767.     db 4
  11768. -   person_event SPRITE_POKEFAN_M, 8 + 4, 19 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x19002e, EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
  11769. -   person_event SPRITE_GRAMPS, 9 + 4, 6 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x19007e, -1
  11770. -   person_event SPRITE_FISHER, 14 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x190092, EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_GYM
  11771. -   person_event SPRITE_LASS, 8 + 4, 12 + 4, $6, 0, 0, -1, -1, 0, 0, 0, LassScript_0x190095, EVENT_MAHOGANY_MART_OWNERS
  11772. +   person_event SPRITE_POKEFAN_M, 8, 19, $6, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x19002e, EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
  11773. +   person_event SPRITE_GRAMPS, 9, 6, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x19007e, -1
  11774. +   person_event SPRITE_FISHER, 14, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x190092, EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_GYM
  11775. +   person_event SPRITE_LASS, 8, 12, $6, 0, 0, -1, -1, 0, 0, 0, LassScript_0x190095, EVENT_MAHOGANY_MART_OWNERS
  11776. diff --git a/maps/ManiasHouse.asm b/maps/ManiasHouse.asm
  11777. index d762673..3b68cfc 100644
  11778. --- a/maps/ManiasHouse.asm
  11779. +++ b/maps/ManiasHouse.asm
  11780. @@ -212,4 +212,4 @@ ManiasHouse_MapEventHeader:
  11781.  
  11782.  .PersonEvents:
  11783.     db 1
  11784. -   person_event SPRITE_ROCKER, 4 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x9d278, -1
  11785. +   person_event SPRITE_ROCKER, 4, 2, $3, 0, 0, -1, -1, 0, 0, 0, RockerScript_0x9d278, -1
  11786. diff --git a/maps/MountMoon.asm b/maps/MountMoon.asm
  11787. index 5f0dc25..b8ad92a 100644
  11788. --- a/maps/MountMoon.asm
  11789. +++ b/maps/MountMoon.asm
  11790. @@ -182,4 +182,4 @@ MountMoon_MapEventHeader:
  11791.  
  11792.  .PersonEvents:
  11793.     db 1
  11794. -   person_event SPRITE_SILVER, 3 + 4, 7 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_RIVAL
  11795. +   person_event SPRITE_SILVER, 3, 7, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_RIVAL
  11796. diff --git a/maps/MountMoonGiftShop.asm b/maps/MountMoonGiftShop.asm
  11797. index 3765e62..29f8ff6 100644
  11798. --- a/maps/MountMoonGiftShop.asm
  11799. +++ b/maps/MountMoonGiftShop.asm
  11800. @@ -38,7 +38,7 @@ MountMoonGiftShop_MapEventHeader:
  11801.  
  11802.  .PersonEvents:
  11803.     db 4
  11804. -   person_event SPRITE_GRAMPS, 3 + 4, 4 + 4, $6, 0, 0, -1, 1, 0, 0, 0, GrampsScript_0x771a8, -1
  11805. -   person_event SPRITE_GRAMPS, 2 + 4, 1 + 4, $9, 0, 0, -1, 2, 0, 0, 0, GrampsScript_0x771a8, -1
  11806. -   person_event SPRITE_LASS, 6 + 4, 1 + 4, $5, 0, 1, -1, 1, 0, 0, 0, LassScript_0x771b0, -1
  11807. -   person_event SPRITE_LASS, 4 + 4, 5 + 4, $4, 1, 0, -1, 2, 0, 0, 0, LassScript_0x771b0, -1
  11808. +   person_event SPRITE_GRAMPS, 3, 4, $6, 0, 0, -1, 1, 0, 0, 0, GrampsScript_0x771a8, -1
  11809. +   person_event SPRITE_GRAMPS, 2, 1, $9, 0, 0, -1, 2, 0, 0, 0, GrampsScript_0x771a8, -1
  11810. +   person_event SPRITE_LASS, 6, 1, $5, 0, 1, -1, 1, 0, 0, 0, LassScript_0x771b0, -1
  11811. +   person_event SPRITE_LASS, 4, 5, $4, 1, 0, -1, 2, 0, 0, 0, LassScript_0x771b0, -1
  11812. diff --git a/maps/MountMoonSquare.asm b/maps/MountMoonSquare.asm
  11813. index 1957f0c..b371ae4 100644
  11814. --- a/maps/MountMoonSquare.asm
  11815. +++ b/maps/MountMoonSquare.asm
  11816. @@ -155,6 +155,6 @@ MountMoonSquare_MapEventHeader:
  11817.  
  11818.  .PersonEvents:
  11819.     db 3
  11820. -   person_event SPRITE_FAIRY, 6 + 4, 6 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_SQUARE_CLEFAIRY
  11821. -   person_event SPRITE_FAIRY, 6 + 4, 7 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_SQUARE_CLEFAIRY
  11822. -   person_event SPRITE_ROCK, 7 + 4, 7 + 4, $18, 0, 0, -1, -1, 0, 0, 0, MtMoonSquareRock, EVENT_MT_MOON_SQUARE_ROCK
  11823. +   person_event SPRITE_FAIRY, 6, 6, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_SQUARE_CLEFAIRY
  11824. +   person_event SPRITE_FAIRY, 6, 7, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MT_MOON_SQUARE_CLEFAIRY
  11825. +   person_event SPRITE_ROCK, 7, 7, $18, 0, 0, -1, -1, 0, 0, 0, MtMoonSquareRock, EVENT_MT_MOON_SQUARE_ROCK
  11826. diff --git a/maps/MountMortar1FInside.asm b/maps/MountMortar1FInside.asm
  11827. index 6dca48b..f830f56 100644
  11828. --- a/maps/MountMortar1FInside.asm
  11829. +++ b/maps/MountMortar1FInside.asm
  11830. @@ -127,13 +127,13 @@ MountMortar1FInside_MapEventHeader:
  11831.  
  11832.  .PersonEvents:
  11833.     db 10
  11834. -   person_event SPRITE_BOULDER, 43 + 4, 21 + 4, $19, 0, 0, -1, -1, 0, 0, 0, MountMortar1FBoulder, -1
  11835. -   person_event SPRITE_POKE_BALL, 38 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de7c, EVENT_MOUNT_MORTAR_1F_INSIDE_ESCAPE_ROPE
  11836. -   person_event SPRITE_POKE_BALL, 10 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de7e, EVENT_MOUNT_MORTAR_1F_INSIDE_MAX_REVIVE
  11837. -   person_event SPRITE_POKE_BALL, 27 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de80, EVENT_MOUNT_MORTAR_1F_INSIDE_HYPER_POTION
  11838. -   person_event SPRITE_POKE_BALL, 20 + 4, 22 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de82, EVENT_MOUNT_MORTAR_1F_INSIDE_MAX_POTION
  11839. -   person_event SPRITE_POKE_BALL, 19 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de84, EVENT_MOUNT_MORTAR_1F_INSIDE_NUGGET
  11840. -   person_event SPRITE_SUPER_NERD, 43 + 4, 33 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacMiller, -1
  11841. -   person_event SPRITE_SUPER_NERD, 28 + 4, 24 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdMarkus, -1
  11842. -   person_event SPRITE_POKE_BALL, 16 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de86, EVENT_MOUNT_MORTAR_1F_INSIDE_IRON
  11843. -   person_event SPRITE_POKE_BALL, 17 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de88, EVENT_MOUNT_MORTAR_1F_INSIDE_ULTRA_BALL
  11844. +   person_event SPRITE_BOULDER, 43, 21, $19, 0, 0, -1, -1, 0, 0, 0, MountMortar1FBoulder, -1
  11845. +   person_event SPRITE_POKE_BALL, 38, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de7c, EVENT_MOUNT_MORTAR_1F_INSIDE_ESCAPE_ROPE
  11846. +   person_event SPRITE_POKE_BALL, 10, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de7e, EVENT_MOUNT_MORTAR_1F_INSIDE_MAX_REVIVE
  11847. +   person_event SPRITE_POKE_BALL, 27, 10, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de80, EVENT_MOUNT_MORTAR_1F_INSIDE_HYPER_POTION
  11848. +   person_event SPRITE_POKE_BALL, 20, 22, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de82, EVENT_MOUNT_MORTAR_1F_INSIDE_MAX_POTION
  11849. +   person_event SPRITE_POKE_BALL, 19, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de84, EVENT_MOUNT_MORTAR_1F_INSIDE_NUGGET
  11850. +   person_event SPRITE_SUPER_NERD, 43, 33, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacMiller, -1
  11851. +   person_event SPRITE_SUPER_NERD, 28, 24, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdMarkus, -1
  11852. +   person_event SPRITE_POKE_BALL, 16, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de86, EVENT_MOUNT_MORTAR_1F_INSIDE_IRON
  11853. +   person_event SPRITE_POKE_BALL, 17, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7de88, EVENT_MOUNT_MORTAR_1F_INSIDE_ULTRA_BALL
  11854. diff --git a/maps/MountMortar1FOutside.asm b/maps/MountMortar1FOutside.asm
  11855. index 9c388a2..f9c4271 100644
  11856. --- a/maps/MountMortar1FOutside.asm
  11857. +++ b/maps/MountMortar1FOutside.asm
  11858. @@ -40,5 +40,5 @@ MountMortar1FOutside_MapEventHeader:
  11859.  
  11860.  .PersonEvents:
  11861.     db 2
  11862. -   person_event SPRITE_POKE_BALL, 15 + 4, 13 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ddf6, EVENT_MOUNT_MORTAR_1F_OUTSIDE_ETHER
  11863. -   person_event SPRITE_POKE_BALL, 18 + 4, 31 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ddf8, EVENT_MOUNT_MORTAR_1F_OUTSIDE_REVIVE
  11864. +   person_event SPRITE_POKE_BALL, 15, 13, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ddf6, EVENT_MOUNT_MORTAR_1F_OUTSIDE_ETHER
  11865. +   person_event SPRITE_POKE_BALL, 18, 31, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ddf8, EVENT_MOUNT_MORTAR_1F_OUTSIDE_REVIVE
  11866. diff --git a/maps/MountMortar2FInside.asm b/maps/MountMortar2FInside.asm
  11867. index 7ddcc96..5580a35 100644
  11868. --- a/maps/MountMortar2FInside.asm
  11869. +++ b/maps/MountMortar2FInside.asm
  11870. @@ -76,10 +76,10 @@ MountMortar2FInside_MapEventHeader:
  11871.  
  11872.  .PersonEvents:
  11873.     db 7
  11874. -   person_event SPRITE_POKE_BALL, 22 + 4, 28 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0de, EVENT_MOUNT_MORTAR_2F_INSIDE_MAX_POTION
  11875. -   person_event SPRITE_POKE_BALL, 33 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e0, EVENT_MOUNT_MORTAR_2F_INSIDE_RARE_CANDY
  11876. -   person_event SPRITE_POKE_BALL, 17 + 4, 19 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e2, EVENT_MOUNT_MORTAR_2F_INSIDE_TM_DEFENSE_CURL
  11877. -   person_event SPRITE_POKE_BALL, 5 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e4, EVENT_MOUNT_MORTAR_2F_INSIDE_DRAGON_SCALE
  11878. -   person_event SPRITE_POKE_BALL, 11 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e6, EVENT_MOUNT_MORTAR_2F_INSIDE_ELIXER
  11879. -   person_event SPRITE_POKE_BALL, 5 + 4, 28 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e8, EVENT_MOUNT_MORTAR_2F_INSIDE_ESCAPE_ROPE
  11880. -   person_event SPRITE_SUPER_NERD, 26 + 4, 13 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdHugh, -1
  11881. +   person_event SPRITE_POKE_BALL, 22, 28, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0de, EVENT_MOUNT_MORTAR_2F_INSIDE_MAX_POTION
  11882. +   person_event SPRITE_POKE_BALL, 33, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e0, EVENT_MOUNT_MORTAR_2F_INSIDE_RARE_CANDY
  11883. +   person_event SPRITE_POKE_BALL, 17, 19, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e2, EVENT_MOUNT_MORTAR_2F_INSIDE_TM_DEFENSE_CURL
  11884. +   person_event SPRITE_POKE_BALL, 5, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e4, EVENT_MOUNT_MORTAR_2F_INSIDE_DRAGON_SCALE
  11885. +   person_event SPRITE_POKE_BALL, 11, 9, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e6, EVENT_MOUNT_MORTAR_2F_INSIDE_ELIXER
  11886. +   person_event SPRITE_POKE_BALL, 5, 28, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e0e8, EVENT_MOUNT_MORTAR_2F_INSIDE_ESCAPE_ROPE
  11887. +   person_event SPRITE_SUPER_NERD, 26, 13, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdHugh, -1
  11888. diff --git a/maps/MountMortarB1F.asm b/maps/MountMortarB1F.asm
  11889. index a41d90f..5ed95af 100644
  11890. --- a/maps/MountMortarB1F.asm
  11891. +++ b/maps/MountMortarB1F.asm
  11892. @@ -144,10 +144,10 @@ MountMortarB1F_MapEventHeader:
  11893.  
  11894.  .PersonEvents:
  11895.     db 7
  11896. -   person_event SPRITE_POKE_BALL, 12 + 4, 29 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e240, EVENT_MOUNT_MORTAR_B1F_HYPER_POTION
  11897. -   person_event SPRITE_POKE_BALL, 16 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e242, EVENT_MOUNT_MORTAR_B1F_CARBOS
  11898. -   person_event SPRITE_BOULDER, 10 + 4, 9 + 4, $19, 0, 0, -1, -1, 0, 0, 0, MountMortarB1FBoulder, -1
  11899. -   person_event SPRITE_BLACK_BELT, 4 + 4, 16 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BlackBeltScript_0x7e1f6, -1
  11900. -   person_event SPRITE_POKE_BALL, 24 + 4, 34 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e244, EVENT_MOUNT_MORTAR_B1F_FULL_RESTORE
  11901. -   person_event SPRITE_POKE_BALL, 3 + 4, 32 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e246, EVENT_MOUNT_MORTAR_B1F_MAX_ETHER
  11902. -   person_event SPRITE_POKE_BALL, 26 + 4, 21 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e248, EVENT_MOUNT_MORTAR_B1F_PP_UP
  11903. +   person_event SPRITE_POKE_BALL, 12, 29, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e240, EVENT_MOUNT_MORTAR_B1F_HYPER_POTION
  11904. +   person_event SPRITE_POKE_BALL, 16, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e242, EVENT_MOUNT_MORTAR_B1F_CARBOS
  11905. +   person_event SPRITE_BOULDER, 10, 9, $19, 0, 0, -1, -1, 0, 0, 0, MountMortarB1FBoulder, -1
  11906. +   person_event SPRITE_BLACK_BELT, 4, 16, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BlackBeltScript_0x7e1f6, -1
  11907. +   person_event SPRITE_POKE_BALL, 24, 34, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e244, EVENT_MOUNT_MORTAR_B1F_FULL_RESTORE
  11908. +   person_event SPRITE_POKE_BALL, 3, 32, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e246, EVENT_MOUNT_MORTAR_B1F_MAX_ETHER
  11909. +   person_event SPRITE_POKE_BALL, 26, 21, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7e248, EVENT_MOUNT_MORTAR_B1F_PP_UP
  11910. diff --git a/maps/MoveDeletersHouse.asm b/maps/MoveDeletersHouse.asm
  11911. index be504b1..f16f6af 100644
  11912. --- a/maps/MoveDeletersHouse.asm
  11913. +++ b/maps/MoveDeletersHouse.asm
  11914. @@ -35,4 +35,4 @@ MoveDeletersHouse_MapEventHeader:
  11915.  
  11916.  .PersonEvents:
  11917.     db 1
  11918. -   person_event SPRITE_SUPER_NERD, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, MoveDeleter, -1
  11919. +   person_event SPRITE_SUPER_NERD, 3, 2, $6, 0, 0, -1, -1, 0, 0, 0, MoveDeleter, -1
  11920. diff --git a/maps/MrFujisHouse.asm b/maps/MrFujisHouse.asm
  11921. index 8035571..a3bc193 100644
  11922. --- a/maps/MrFujisHouse.asm
  11923. +++ b/maps/MrFujisHouse.asm
  11924. @@ -91,8 +91,8 @@ MrFujisHouse_MapEventHeader:
  11925.  
  11926.  .PersonEvents:
  11927.     db 5
  11928. -   person_event SPRITE_SUPER_NERD, 1 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x7e8ca, -1
  11929. -   person_event SPRITE_LASS, 4 + 4, 3 + 4, $2, 1, 1, -1, -1, 0, 0, 0, LassScript_0x7e8cd, -1
  11930. -   person_event SPRITE_RHYDON, 4 + 4, 7 + 4, $16, 0, 0, -1, -1, 0, 0, 0, MrFujisPsyduck, -1
  11931. -   person_event SPRITE_GROWLITHE, 5 + 4, 5 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MrFujisNidorino, -1
  11932. -   person_event SPRITE_MOLTRES, 3 + 4, 1 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MrFujisPidgey, -1
  11933. +   person_event SPRITE_SUPER_NERD, 1, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x7e8ca, -1
  11934. +   person_event SPRITE_LASS, 4, 3, $2, 1, 1, -1, -1, 0, 0, 0, LassScript_0x7e8cd, -1
  11935. +   person_event SPRITE_RHYDON, 4, 7, $16, 0, 0, -1, -1, 0, 0, 0, MrFujisPsyduck, -1
  11936. +   person_event SPRITE_GROWLITHE, 5, 5, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MrFujisNidorino, -1
  11937. +   person_event SPRITE_MOLTRES, 3, 1, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MrFujisPidgey, -1
  11938. diff --git a/maps/MrPokemonsHouse.asm b/maps/MrPokemonsHouse.asm
  11939. index 0f20339..2600801 100644
  11940. --- a/maps/MrPokemonsHouse.asm
  11941. +++ b/maps/MrPokemonsHouse.asm
  11942. @@ -126,7 +126,7 @@ UnknownScript_0x196ec9:
  11943.     dotrigger $1
  11944.     domaptrigger CHERRYGROVE_CITY, $1
  11945.     domaptrigger ELMS_LAB, $3
  11946. -   specialphonecall ELMCALL_ROBBED
  11947. +   specialphonecall SPECIALCALL_ROBBED
  11948.     clearevent EVENT_COP_IN_ELMS_LAB
  11949.     checkevent EVENT_GOT_TOTODILE_FROM_ELM
  11950.     iftrue UnknownScript_0x196f49
  11951. @@ -392,5 +392,5 @@ MrPokemonsHouse_MapEventHeader:
  11952.  
  11953.  .PersonEvents:
  11954.     db 2
  11955. -   person_event SPRITE_GENTLEMAN, 5 + 4, 3 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x196e97, -1
  11956. -   person_event SPRITE_OAK, 5 + 4, 6 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MR_POKEMONS_HOUSE_OAK
  11957. +   person_event SPRITE_GENTLEMAN, 5, 3, $9, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x196e97, -1
  11958. +   person_event SPRITE_OAK, 5, 6, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_MR_POKEMONS_HOUSE_OAK
  11959. diff --git a/maps/MrPsychicsHouse.asm b/maps/MrPsychicsHouse.asm
  11960. index e2b3654..63177f8 100644
  11961. --- a/maps/MrPsychicsHouse.asm
  11962. +++ b/maps/MrPsychicsHouse.asm
  11963. @@ -63,4 +63,4 @@ MrPsychicsHouse_MapEventHeader:
  11964.  
  11965.  .PersonEvents:
  11966.     db 1
  11967. -   person_event SPRITE_FISHING_GURU, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, MrPsychic, -1
  11968. +   person_event SPRITE_FISHING_GURU, 3, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, MrPsychic, -1
  11969. diff --git a/maps/NationalPark.asm b/maps/NationalPark.asm
  11970. index 6467472..3c326d1 100644
  11971. --- a/maps/NationalPark.asm
  11972. +++ b/maps/NationalPark.asm
  11973. @@ -521,17 +521,17 @@ NationalPark_MapEventHeader:
  11974.  
  11975.  .PersonEvents:
  11976.     db 14
  11977. -   person_event SPRITE_LASS, 24 + 4, 15 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x5c002, -1
  11978. -   person_event SPRITE_POKEFAN_F, 4 + 4, 14 + 4, $6, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x5c005, -1
  11979. -   person_event SPRITE_TEACHER, 40 + 4, 27 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5c008, -1
  11980. -   person_event SPRITE_YOUNGSTER, 41 + 4, 11 + 4, $8, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x5c023, -1
  11981. -   person_event SPRITE_YOUNGSTER, 41 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c026, -1
  11982. -   person_event SPRITE_TEACHER, 41 + 4, 17 + 4, $2, 2, 1, -1, -1, 0, 0, 0, TeacherScript_0x5c029, -1
  11983. -   person_event SPRITE_GROWLITHE, 40 + 4, 26 + 4, $16, 0, 0, -1, -1, 0, 0, 0, GrowlitheScript_0x5c02c, -1
  11984. -   person_event SPRITE_YOUNGSTER, 23 + 4, 27 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyJack1, -1
  11985. -   person_event SPRITE_POKEFAN_F, 29 + 4, 18 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerPokefanfBeverly1, -1
  11986. -   person_event SPRITE_POKEFAN_M, 9 + 4, 16 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerPokefanmWilliam, -1
  11987. -   person_event SPRITE_LASS, 14 + 4, 8 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassKrise, -1
  11988. -   person_event SPRITE_POKE_BALL, 12 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c1cc, EVENT_NATIONAL_PARK_PARLYZ_HEAL
  11989. -   person_event SPRITE_GAMEBOY_KID, 6 + 4, 26 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x5c037, -1
  11990. -   person_event SPRITE_POKE_BALL, 43 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c1ce, EVENT_NATIONAL_PARK_TM_DIG
  11991. +   person_event SPRITE_LASS, 24, 15, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x5c002, -1
  11992. +   person_event SPRITE_POKEFAN_F, 4, 14, $6, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x5c005, -1
  11993. +   person_event SPRITE_TEACHER, 40, 27, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5c008, -1
  11994. +   person_event SPRITE_YOUNGSTER, 41, 11, $8, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x5c023, -1
  11995. +   person_event SPRITE_YOUNGSTER, 41, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c026, -1
  11996. +   person_event SPRITE_TEACHER, 41, 17, $2, 2, 1, -1, -1, 0, 0, 0, TeacherScript_0x5c029, -1
  11997. +   person_event SPRITE_GROWLITHE, 40, 26, $16, 0, 0, -1, -1, 0, 0, 0, GrowlitheScript_0x5c02c, -1
  11998. +   person_event SPRITE_YOUNGSTER, 23, 27, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyJack1, -1
  11999. +   person_event SPRITE_POKEFAN_F, 29, 18, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerPokefanfBeverly1, -1
  12000. +   person_event SPRITE_POKEFAN_M, 9, 16, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerPokefanmWilliam, -1
  12001. +   person_event SPRITE_LASS, 14, 8, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassKrise, -1
  12002. +   person_event SPRITE_POKE_BALL, 12, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c1cc, EVENT_NATIONAL_PARK_PARLYZ_HEAL
  12003. +   person_event SPRITE_GAMEBOY_KID, 6, 26, $6, 0, 0, -1, -1, 0, 0, 0, GameboyKidScript_0x5c037, -1
  12004. +   person_event SPRITE_POKE_BALL, 43, 1, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c1ce, EVENT_NATIONAL_PARK_TM_DIG
  12005. diff --git a/maps/NationalParkBugContest.asm b/maps/NationalParkBugContest.asm
  12006. index 1b8b5db..5e67aac 100644
  12007. --- a/maps/NationalParkBugContest.asm
  12008. +++ b/maps/NationalParkBugContest.asm
  12009. @@ -230,15 +230,15 @@ NationalParkBugContest_MapEventHeader:
  12010.  
  12011.  .PersonEvents:
  12012.     db 12
  12013. -   person_event SPRITE_YOUNGSTER, 29 + 4, 19 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c8ec, EVENT_BUG_CATCHING_CONTESTANT_1A
  12014. -   person_event SPRITE_YOUNGSTER, 22 + 4, 28 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c8f4, EVENT_BUG_CATCHING_CONTESTANT_2A
  12015. -   person_event SPRITE_ROCKER, 18 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RockerScript_0x5c8fc, EVENT_BUG_CATCHING_CONTESTANT_3A
  12016. -   person_event SPRITE_POKEFAN_M, 13 + 4, 7 + 4, $4, 0, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x5c904, EVENT_BUG_CATCHING_CONTESTANT_4A
  12017. -   person_event SPRITE_YOUNGSTER, 9 + 4, 23 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c90c, EVENT_BUG_CATCHING_CONTESTANT_5A
  12018. -   person_event SPRITE_YOUNGSTER, 13 + 4, 27 + 4, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c914, EVENT_BUG_CATCHING_CONTESTANT_6A
  12019. -   person_event SPRITE_LASS, 23 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x5c91c, EVENT_BUG_CATCHING_CONTESTANT_7A
  12020. -   person_event SPRITE_YOUNGSTER, 27 + 4, 11 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c924, EVENT_BUG_CATCHING_CONTESTANT_8A
  12021. -   person_event SPRITE_YOUNGSTER, 8 + 4, 16 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c92c, EVENT_BUG_CATCHING_CONTESTANT_9A
  12022. -   person_event SPRITE_YOUNGSTER, 34 + 4, 17 + 4, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x5c934, EVENT_BUG_CATCHING_CONTESTANT_10A
  12023. -   person_event SPRITE_POKE_BALL, 12 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c945, EVENT_NATIONAL_PARK_PARLYZ_HEAL
  12024. -   person_event SPRITE_POKE_BALL, 43 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c947, EVENT_NATIONAL_PARK_TM_DIG
  12025. +   person_event SPRITE_YOUNGSTER, 29, 19, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c8ec, EVENT_BUG_CATCHING_CONTESTANT_1A
  12026. +   person_event SPRITE_YOUNGSTER, 22, 28, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c8f4, EVENT_BUG_CATCHING_CONTESTANT_2A
  12027. +   person_event SPRITE_ROCKER, 18, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RockerScript_0x5c8fc, EVENT_BUG_CATCHING_CONTESTANT_3A
  12028. +   person_event SPRITE_POKEFAN_M, 13, 7, $4, 0, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x5c904, EVENT_BUG_CATCHING_CONTESTANT_4A
  12029. +   person_event SPRITE_YOUNGSTER, 9, 23, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c90c, EVENT_BUG_CATCHING_CONTESTANT_5A
  12030. +   person_event SPRITE_YOUNGSTER, 13, 27, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c914, EVENT_BUG_CATCHING_CONTESTANT_6A
  12031. +   person_event SPRITE_LASS, 23, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x5c91c, EVENT_BUG_CATCHING_CONTESTANT_7A
  12032. +   person_event SPRITE_YOUNGSTER, 27, 11, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5c924, EVENT_BUG_CATCHING_CONTESTANT_8A
  12033. +   person_event SPRITE_YOUNGSTER, 8, 16, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x5c92c, EVENT_BUG_CATCHING_CONTESTANT_9A
  12034. +   person_event SPRITE_YOUNGSTER, 34, 17, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x5c934, EVENT_BUG_CATCHING_CONTESTANT_10A
  12035. +   person_event SPRITE_POKE_BALL, 12, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c945, EVENT_NATIONAL_PARK_PARLYZ_HEAL
  12036. +   person_event SPRITE_POKE_BALL, 43, 1, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5c947, EVENT_NATIONAL_PARK_TM_DIG
  12037. diff --git a/maps/NewBarkTown.asm b/maps/NewBarkTown.asm
  12038. index d4a5703..49788b9 100644
  12039. --- a/maps/NewBarkTown.asm
  12040. +++ b/maps/NewBarkTown.asm
  12041. @@ -305,6 +305,6 @@ NewBarkTown_MapEventHeader:
  12042.  
  12043.  .PersonEvents:
  12044.     db 3
  12045. -   person_event SPRITE_TEACHER, 8 + 4, 6 + 4, $3, 0, 1, -1, -1, 0, 0, 0, TeacherScript_0x1a806f, -1
  12046. -   person_event SPRITE_FISHER, 9 + 4, 12 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a809b, -1
  12047. -   person_event SPRITE_SILVER, 2 + 4, 3 + 4, $9, 0, 0, -1, -1, 0, 0, 0, SilverScript_0x1a809e, EVENT_RIVAL_NEW_BARK_TOWN
  12048. +   person_event SPRITE_TEACHER, 8, 6, $3, 0, 1, -1, -1, 0, 0, 0, TeacherScript_0x1a806f, -1
  12049. +   person_event SPRITE_FISHER, 9, 12, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a809b, -1
  12050. +   person_event SPRITE_SILVER, 2, 3, $9, 0, 0, -1, -1, 0, 0, 0, SilverScript_0x1a809e, EVENT_RIVAL_NEW_BARK_TOWN
  12051. diff --git a/maps/OaksLab.asm b/maps/OaksLab.asm
  12052. index e125fca..b5f1f30 100644
  12053. --- a/maps/OaksLab.asm
  12054. +++ b/maps/OaksLab.asm
  12055. @@ -283,7 +283,7 @@ OaksLab_MapEventHeader:
  12056.  
  12057.  .PersonEvents:
  12058.     db 4
  12059. -   person_event SPRITE_OAK, 2 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, Oak, -1
  12060. -   person_event SPRITE_SCIENTIST, 8 + 4, 1 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b40f, -1
  12061. -   person_event SPRITE_SCIENTIST, 9 + 4, 8 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b412, -1
  12062. -   person_event SPRITE_SCIENTIST, 4 + 4, 1 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b415, -1
  12063. +   person_event SPRITE_OAK, 2, 4, $6, 0, 0, -1, -1, 0, 0, 0, Oak, -1
  12064. +   person_event SPRITE_SCIENTIST, 8, 1, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b40f, -1
  12065. +   person_event SPRITE_SCIENTIST, 9, 8, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b412, -1
  12066. +   person_event SPRITE_SCIENTIST, 4, 1, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x19b415, -1
  12067. diff --git a/maps/OlivineCafe.asm b/maps/OlivineCafe.asm
  12068. index 49564b4..94747e3 100644
  12069. --- a/maps/OlivineCafe.asm
  12070. +++ b/maps/OlivineCafe.asm
  12071. @@ -90,6 +90,6 @@ OlivineCafe_MapEventHeader:
  12072.  
  12073.  .PersonEvents:
  12074.     db 3
  12075. -   person_event SPRITE_SAILOR, 3 + 4, 4 + 4, $8, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x9c8c1, -1
  12076. -   person_event SPRITE_FISHING_GURU, 3 + 4, 7 + 4, $4, 1, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x9c8d9, -1
  12077. -   person_event SPRITE_SAILOR, 6 + 4, 6 + 4, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x9c8dc, -1
  12078. +   person_event SPRITE_SAILOR, 3, 4, $8, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x9c8c1, -1
  12079. +   person_event SPRITE_FISHING_GURU, 3, 7, $4, 1, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x9c8d9, -1
  12080. +   person_event SPRITE_SAILOR, 6, 6, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x9c8dc, -1
  12081. diff --git a/maps/OlivineCity.asm b/maps/OlivineCity.asm
  12082. index 01eee13..a3d67a0 100644
  12083. --- a/maps/OlivineCity.asm
  12084. +++ b/maps/OlivineCity.asm
  12085. @@ -320,7 +320,7 @@ OlivineCity_MapEventHeader:
  12086.  
  12087.  .PersonEvents:
  12088.     db 4
  12089. -   person_event SPRITE_SAILOR, 27 + 4, 26 + 4, $4, 1, 0, -1, -1, 0, 0, 0, SailorScript_0x1a88a3, -1
  12090. -   person_event SPRITE_STANDING_YOUNGSTER, 13 + 4, 20 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, StandingYoungsterScript_0x1a88a6, -1
  12091. -   person_event SPRITE_SAILOR, 21 + 4, 17 + 4, $2, 1, 1, -1, -1, 0, 0, 0, SailorScript_0x1a88ba, -1
  12092. -   person_event SPRITE_OLIVINE_RIVAL, 11 + 4, 10 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_OLIVINE_CITY
  12093. +   person_event SPRITE_SAILOR, 27, 26, $4, 1, 0, -1, -1, 0, 0, 0, SailorScript_0x1a88a3, -1
  12094. +   person_event SPRITE_STANDING_YOUNGSTER, 13, 20, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, StandingYoungsterScript_0x1a88a6, -1
  12095. +   person_event SPRITE_SAILOR, 21, 17, $2, 1, 1, -1, -1, 0, 0, 0, SailorScript_0x1a88ba, -1
  12096. +   person_event SPRITE_OLIVINE_RIVAL, 11, 10, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_OLIVINE_CITY
  12097. diff --git a/maps/OlivineGoodRodHouse.asm b/maps/OlivineGoodRodHouse.asm
  12098. index 21e610d..3fea640 100644
  12099. --- a/maps/OlivineGoodRodHouse.asm
  12100. +++ b/maps/OlivineGoodRodHouse.asm
  12101. @@ -96,4 +96,4 @@ OlivineGoodRodHouse_MapEventHeader:
  12102.  
  12103.  .PersonEvents:
  12104.     db 1
  12105. -   person_event SPRITE_FISHING_GURU, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GoodRodGuru, -1
  12106. +   person_event SPRITE_FISHING_GURU, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GoodRodGuru, -1
  12107. diff --git a/maps/OlivineGym.asm b/maps/OlivineGym.asm
  12108. index 737153d..a1ae6dc 100644
  12109. --- a/maps/OlivineGym.asm
  12110. +++ b/maps/OlivineGym.asm
  12111. @@ -212,5 +212,5 @@ OlivineGym_MapEventHeader:
  12112.  
  12113.  .PersonEvents:
  12114.     db 2
  12115. -   person_event SPRITE_JASMINE, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, JasmineScript_0x9c12f, EVENT_OLIVINE_GYM_JASMINE
  12116. -   person_event SPRITE_GYM_GUY, 13 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OlivineGymGuyScript, -1
  12117. +   person_event SPRITE_JASMINE, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, JasmineScript_0x9c12f, EVENT_OLIVINE_GYM_JASMINE
  12118. +   person_event SPRITE_GYM_GUY, 13, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OlivineGymGuyScript, -1
  12119. diff --git a/maps/OlivineHouseBeta.asm b/maps/OlivineHouseBeta.asm
  12120. index f80272f..7e4f955 100644
  12121. --- a/maps/OlivineHouseBeta.asm
  12122. +++ b/maps/OlivineHouseBeta.asm
  12123. @@ -54,5 +54,5 @@ OlivineHouseBeta_MapEventHeader:
  12124.  
  12125.  .PersonEvents:
  12126.     db 2
  12127. -   person_event SPRITE_TEACHER, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9c58f, -1
  12128. -   person_event SPRITE_RHYDON, 4 + 4, 6 + 4, $4, 2, 0, -1, -1, 0, 0, 0, RhydonScript_0x9c592, -1
  12129. +   person_event SPRITE_TEACHER, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9c58f, -1
  12130. +   person_event SPRITE_RHYDON, 4, 6, $4, 2, 0, -1, -1, 0, 0, 0, RhydonScript_0x9c592, -1
  12131. diff --git a/maps/OlivineLighthouse1F.asm b/maps/OlivineLighthouse1F.asm
  12132. index 4cbee5c..10fdf1b 100644
  12133. --- a/maps/OlivineLighthouse1F.asm
  12134. +++ b/maps/OlivineLighthouse1F.asm
  12135. @@ -52,5 +52,5 @@ OlivineLighthouse1F_MapEventHeader:
  12136.  
  12137.  .PersonEvents:
  12138.     db 2
  12139. -   person_event SPRITE_SAILOR, 2 + 4, 8 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x5ae67, -1
  12140. -   person_event SPRITE_POKEFAN_F, 9 + 4, 16 + 4, $4, 2, 0, -1, -1, 0, 0, 0, PokefanFScript_0x5ae6a, -1
  12141. +   person_event SPRITE_SAILOR, 2, 8, $6, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x5ae67, -1
  12142. +   person_event SPRITE_POKEFAN_F, 9, 16, $4, 2, 0, -1, -1, 0, 0, 0, PokefanFScript_0x5ae6a, -1
  12143. diff --git a/maps/OlivineLighthouse2F.asm b/maps/OlivineLighthouse2F.asm
  12144. index 98fc98e..7603357 100644
  12145. --- a/maps/OlivineLighthouse2F.asm
  12146. +++ b/maps/OlivineLighthouse2F.asm
  12147. @@ -221,5 +221,5 @@ OlivineLighthouse2F_MapEventHeader:
  12148.  
  12149.  .PersonEvents:
  12150.     db 2
  12151. -   person_event SPRITE_SAILOR, 3 + 4, 9 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorHuey1, -1
  12152. -   person_event SPRITE_GENTLEMAN, 8 + 4, 17 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerGentlemanAlfred, -1
  12153. +   person_event SPRITE_SAILOR, 3, 9, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorHuey1, -1
  12154. +   person_event SPRITE_GENTLEMAN, 8, 17, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerGentlemanAlfred, -1
  12155. diff --git a/maps/OlivineLighthouse3F.asm b/maps/OlivineLighthouse3F.asm
  12156. index 21b77a2..dd39a63 100644
  12157. --- a/maps/OlivineLighthouse3F.asm
  12158. +++ b/maps/OlivineLighthouse3F.asm
  12159. @@ -130,7 +130,7 @@ OlivineLighthouse3F_MapEventHeader:
  12160.  
  12161.  .PersonEvents:
  12162.     db 4
  12163. -   person_event SPRITE_SAILOR, 2 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSailorTerrell, -1
  12164. -   person_event SPRITE_GENTLEMAN, 5 + 4, 13 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerGentlemanPreston, -1
  12165. -   person_event SPRITE_YOUNGSTER, 9 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperTheo, -1
  12166. -   person_event SPRITE_POKE_BALL, 2 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5b279, EVENT_OLIVINE_LIGHTHOUSE_3F_ETHER
  12167. +   person_event SPRITE_SAILOR, 2, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSailorTerrell, -1
  12168. +   person_event SPRITE_GENTLEMAN, 5, 13, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerGentlemanPreston, -1
  12169. +   person_event SPRITE_YOUNGSTER, 9, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperTheo, -1
  12170. +   person_event SPRITE_POKE_BALL, 2, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5b279, EVENT_OLIVINE_LIGHTHOUSE_3F_ETHER
  12171. diff --git a/maps/OlivineLighthouse4F.asm b/maps/OlivineLighthouse4F.asm
  12172. index ccd2ef8..6b66621 100644
  12173. --- a/maps/OlivineLighthouse4F.asm
  12174. +++ b/maps/OlivineLighthouse4F.asm
  12175. @@ -102,5 +102,5 @@ OlivineLighthouse4F_MapEventHeader:
  12176.  
  12177.  .PersonEvents:
  12178.     db 2
  12179. -   person_event SPRITE_SAILOR, 14 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorKent, -1
  12180. -   person_event SPRITE_LASS, 2 + 4, 11 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassConnie, -1
  12181. +   person_event SPRITE_SAILOR, 14, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorKent, -1
  12182. +   person_event SPRITE_LASS, 2, 11, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassConnie, -1
  12183. diff --git a/maps/OlivineLighthouse5F.asm b/maps/OlivineLighthouse5F.asm
  12184. index a88e2cf..4915ee4 100644
  12185. --- a/maps/OlivineLighthouse5F.asm
  12186. +++ b/maps/OlivineLighthouse5F.asm
  12187. @@ -107,8 +107,8 @@ OlivineLighthouse5F_MapEventHeader:
  12188.  
  12189.  .PersonEvents:
  12190.     db 5
  12191. -   person_event SPRITE_SAILOR, 11 + 4, 8 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorErnest, -1
  12192. -   person_event SPRITE_YOUNGSTER, 3 + 4, 8 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerBird_keeperDenis, -1
  12193. -   person_event SPRITE_POKE_BALL, 12 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609aa, EVENT_OLIVINE_LIGHTHOUSE_5F_RARE_CANDY
  12194. -   person_event SPRITE_POKE_BALL, 15 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609ac, EVENT_OLIVINE_LIGHTHOUSE_5F_SUPER_REPEL
  12195. -   person_event SPRITE_POKE_BALL, 13 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609ae, EVENT_OLIVINE_LIGHTHOUSE_5F_TM_SWAGGER
  12196. +   person_event SPRITE_SAILOR, 11, 8, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSailorErnest, -1
  12197. +   person_event SPRITE_YOUNGSTER, 3, 8, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerBird_keeperDenis, -1
  12198. +   person_event SPRITE_POKE_BALL, 12, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609aa, EVENT_OLIVINE_LIGHTHOUSE_5F_RARE_CANDY
  12199. +   person_event SPRITE_POKE_BALL, 15, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609ac, EVENT_OLIVINE_LIGHTHOUSE_5F_SUPER_REPEL
  12200. +   person_event SPRITE_POKE_BALL, 13, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x609ae, EVENT_OLIVINE_LIGHTHOUSE_5F_TM_SWAGGER
  12201. diff --git a/maps/OlivineLighthouse6F.asm b/maps/OlivineLighthouse6F.asm
  12202. index 0c91eec..71934fe 100644
  12203. --- a/maps/OlivineLighthouse6F.asm
  12204. +++ b/maps/OlivineLighthouse6F.asm
  12205. @@ -270,6 +270,6 @@ OlivineLighthouse6F_MapEventHeader:
  12206.  
  12207.  .PersonEvents:
  12208.     db 3
  12209. -   person_event SPRITE_JASMINE, 8 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, JasmineScript_0x60b91, EVENT_OLIVINE_LIGHTHOUSE_JASMINE
  12210. -   person_event SPRITE_MONSTER, 8 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MonsterScript_0x60c3a, -1
  12211. -   person_event SPRITE_POKE_BALL, 4 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x60c66, EVENT_OLIVINE_LIGHTHOUSE_6F_SUPER_POTION
  12212. +   person_event SPRITE_JASMINE, 8, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, JasmineScript_0x60b91, EVENT_OLIVINE_LIGHTHOUSE_JASMINE
  12213. +   person_event SPRITE_MONSTER, 8, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MonsterScript_0x60c3a, -1
  12214. +   person_event SPRITE_POKE_BALL, 4, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x60c66, EVENT_OLIVINE_LIGHTHOUSE_6F_SUPER_POTION
  12215. diff --git a/maps/OlivineMart.asm b/maps/OlivineMart.asm
  12216. index f674679..3b0546e 100644
  12217. --- a/maps/OlivineMart.asm
  12218. +++ b/maps/OlivineMart.asm
  12219. @@ -57,6 +57,6 @@ OlivineMart_MapEventHeader:
  12220.  
  12221.  .PersonEvents:
  12222.     db 3
  12223. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x9cac7, -1
  12224. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 6 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x9cace, -1
  12225. -   person_event SPRITE_LASS, 6 + 4, 1 + 4, $8, 0, 0, -1, -1, 0, 0, 0, LassScript_0x9cad1, -1
  12226. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x9cac7, -1
  12227. +   person_event SPRITE_COOLTRAINER_F, 2, 6, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x9cace, -1
  12228. +   person_event SPRITE_LASS, 6, 1, $8, 0, 0, -1, -1, 0, 0, 0, LassScript_0x9cad1, -1
  12229. diff --git a/maps/OlivinePokeCenter1F.asm b/maps/OlivinePokeCenter1F.asm
  12230. index 82eabe0..63c8509 100644
  12231. --- a/maps/OlivinePokeCenter1F.asm
  12232. +++ b/maps/OlivinePokeCenter1F.asm
  12233. @@ -59,7 +59,7 @@ OlivinePokeCenter1F_MapEventHeader:
  12234.  
  12235.  .PersonEvents:
  12236.     db 4
  12237. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9c002, -1
  12238. -   person_event SPRITE_FISHING_GURU, 4 + 4, 8 + 4, $5, 0, 1, -1, -1, 0, 0, 0, FishingGuruScript_0x9c005, -1
  12239. -   person_event SPRITE_FISHER, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x9c008, -1
  12240. -   person_event SPRITE_TEACHER, 1 + 4, 7 + 4, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9c00b, -1
  12241. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9c002, -1
  12242. +   person_event SPRITE_FISHING_GURU, 4, 8, $5, 0, 1, -1, -1, 0, 0, 0, FishingGuruScript_0x9c005, -1
  12243. +   person_event SPRITE_FISHER, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x9c008, -1
  12244. +   person_event SPRITE_TEACHER, 1, 7, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x9c00b, -1
  12245. diff --git a/maps/OlivinePort.asm b/maps/OlivinePort.asm
  12246. index fbba55d..ab1307f 100644
  12247. --- a/maps/OlivinePort.asm
  12248. +++ b/maps/OlivinePort.asm
  12249. @@ -397,10 +397,10 @@ OlivinePort_MapEventHeader:
  12250.  
  12251.  .PersonEvents:
  12252.     db 7
  12253. -   person_event SPRITE_SAILOR, 23 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x748c0, EVENT_OLIVINE_PORT_SAILOR_AT_GANGWAY
  12254. -   person_event SPRITE_SAILOR, 15 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x749fe, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12255. -   person_event SPRITE_SAILOR, 15 + 4, 6 + 4, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x7499c, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12256. -   person_event SPRITE_FISHING_GURU, 14 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x74a01, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12257. -   person_event SPRITE_FISHING_GURU, 14 + 4, 13 + 4, $7, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x74a0c, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12258. -   person_event SPRITE_YOUNGSTER, 15 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x74a17, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12259. -   person_event SPRITE_COOLTRAINER_F, 15 + 4, 11 + 4, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x74a22, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12260. +   person_event SPRITE_SAILOR, 23, 7, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x748c0, EVENT_OLIVINE_PORT_SAILOR_AT_GANGWAY
  12261. +   person_event SPRITE_SAILOR, 15, 7, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x749fe, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12262. +   person_event SPRITE_SAILOR, 15, 6, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x7499c, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12263. +   person_event SPRITE_FISHING_GURU, 14, 4, $7, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x74a01, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12264. +   person_event SPRITE_FISHING_GURU, 14, 13, $7, 0, 0, -1, -1, 0, 0, 0, FishingGuruScript_0x74a0c, EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME
  12265. +   person_event SPRITE_YOUNGSTER, 15, 4, $6, 0, 0, -1, -1, 0, 0, 0, YoungsterScript_0x74a17, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12266. +   person_event SPRITE_COOLTRAINER_F, 15, 11, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x74a22, EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
  12267. diff --git a/maps/OlivinePortPassage.asm b/maps/OlivinePortPassage.asm
  12268. index 9255750..f5f95d3 100644
  12269. --- a/maps/OlivinePortPassage.asm
  12270. +++ b/maps/OlivinePortPassage.asm
  12271. @@ -36,4 +36,4 @@ OlivinePortPassage_MapEventHeader:
  12272.  
  12273.  .PersonEvents:
  12274.     db 1
  12275. -   person_event SPRITE_POKEFAN_M, 1 + 4, 17 + 4, $8, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x76fac, EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M
  12276. +   person_event SPRITE_POKEFAN_M, 1, 17, $8, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x76fac, EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M
  12277. diff --git a/maps/OlivinePunishmentSpeechHouse.asm b/maps/OlivinePunishmentSpeechHouse.asm
  12278. index 87ffe81..e968dd1 100644
  12279. --- a/maps/OlivinePunishmentSpeechHouse.asm
  12280. +++ b/maps/OlivinePunishmentSpeechHouse.asm
  12281. @@ -54,5 +54,5 @@ OlivinePunishmentSpeechHouse_MapEventHeader:
  12282.  
  12283.  .PersonEvents:
  12284.     db 2
  12285. -   person_event SPRITE_POKEFAN_M, 2 + 4, 1 + 4, $3, 0, 0, -1, -1, 0, 0, 0, OlivinePunishmentSpeechHouseDad, -1
  12286. -   person_event SPRITE_LASS, 5 + 4, 5 + 4, $5, 0, 2, -1, -1, 0, 0, 0, OlivinePunishmentSpeechHouseDaughter, -1
  12287. +   person_event SPRITE_POKEFAN_M, 2, 1, $3, 0, 0, -1, -1, 0, 0, 0, OlivinePunishmentSpeechHouseDad, -1
  12288. +   person_event SPRITE_LASS, 5, 5, $5, 0, 2, -1, -1, 0, 0, 0, OlivinePunishmentSpeechHouseDaughter, -1
  12289. diff --git a/maps/OlivineVoltorbHouse.asm b/maps/OlivineVoltorbHouse.asm
  12290. index 5449da4..717abfe 100644
  12291. --- a/maps/OlivineVoltorbHouse.asm
  12292. +++ b/maps/OlivineVoltorbHouse.asm
  12293. @@ -35,4 +35,4 @@ OlivineVoltorbHouse_MapEventHeader:
  12294.  
  12295.  .PersonEvents:
  12296.     db 1
  12297. -   person_event SPRITE_FISHING_GURU, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Tim, -1
  12298. +   person_event SPRITE_FISHING_GURU, 3, 2, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Tim, -1
  12299. diff --git a/maps/PalletTown.asm b/maps/PalletTown.asm
  12300. index dd57338..efaae10 100644
  12301. --- a/maps/PalletTown.asm
  12302. +++ b/maps/PalletTown.asm
  12303. @@ -89,5 +89,5 @@ PalletTown_MapEventHeader:
  12304.  
  12305.  .PersonEvents:
  12306.     db 2
  12307. -   person_event SPRITE_TEACHER, 8 + 4, 3 + 4, $2, 2, 2, -1, -1, 0, 0, 0, TeacherScript_0x1ac6d5, -1
  12308. -   person_event SPRITE_FISHER, 14 + 4, 12 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1ac6d8, -1
  12309. +   person_event SPRITE_TEACHER, 8, 3, $2, 2, 2, -1, -1, 0, 0, 0, TeacherScript_0x1ac6d5, -1
  12310. +   person_event SPRITE_FISHER, 14, 12, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1ac6d8, -1
  12311. diff --git a/maps/PewterCity.asm b/maps/PewterCity.asm
  12312. index ff9992f..2b74bea 100644
  12313. --- a/maps/PewterCity.asm
  12314. +++ b/maps/PewterCity.asm
  12315. @@ -174,8 +174,8 @@ PewterCity_MapEventHeader:
  12316.  
  12317.  .PersonEvents:
  12318.     db 5
  12319. -   person_event SPRITE_COOLTRAINER_F, 11 + 4, 19 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18c009, -1
  12320. -   person_event SPRITE_BUG_CATCHER, 29 + 4, 14 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x18c00c, -1
  12321. -   person_event SPRITE_GRAMPS, 17 + 4, 29 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x18c00f, -1
  12322. -   person_event SPRITE_FRUIT_TREE, 3 + 4, 32 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x18c03e, -1
  12323. -   person_event SPRITE_FRUIT_TREE, 3 + 4, 30 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x18c040, -1
  12324. +   person_event SPRITE_COOLTRAINER_F, 11, 19, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18c009, -1
  12325. +   person_event SPRITE_BUG_CATCHER, 29, 14, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, BugCatcherScript_0x18c00c, -1
  12326. +   person_event SPRITE_GRAMPS, 17, 29, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x18c00f, -1
  12327. +   person_event SPRITE_FRUIT_TREE, 3, 32, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x18c03e, -1
  12328. +   person_event SPRITE_FRUIT_TREE, 3, 30, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x18c040, -1
  12329. diff --git a/maps/PewterGym.asm b/maps/PewterGym.asm
  12330. index e762755..3f5b734 100644
  12331. --- a/maps/PewterGym.asm
  12332. +++ b/maps/PewterGym.asm
  12333. @@ -222,6 +222,6 @@ PewterGym_MapEventHeader:
  12334.  
  12335.  .PersonEvents:
  12336.     db 3
  12337. -   person_event SPRITE_BROCK, 1 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BrockScript_0x1a2864, -1
  12338. -   person_event SPRITE_YOUNGSTER, 5 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperJerry, -1
  12339. -   person_event SPRITE_GYM_GUY, 11 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, PewterGymGuyScript, -1
  12340. +   person_event SPRITE_BROCK, 1, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BrockScript_0x1a2864, -1
  12341. +   person_event SPRITE_YOUNGSTER, 5, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperJerry, -1
  12342. +   person_event SPRITE_GYM_GUY, 11, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, PewterGymGuyScript, -1
  12343. diff --git a/maps/PewterMart.asm b/maps/PewterMart.asm
  12344. index eb863e4..557f0d5 100644
  12345. --- a/maps/PewterMart.asm
  12346. +++ b/maps/PewterMart.asm
  12347. @@ -57,6 +57,6 @@ PewterMart_MapEventHeader:
  12348.  
  12349.  .PersonEvents:
  12350.     db 3
  12351. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x1a2dcb, -1
  12352. -   person_event SPRITE_YOUNGSTER, 2 + 4, 9 + 4, $5, 0, 2, -1, -1, 0, 0, 0, YoungsterScript_0x1a2dd2, -1
  12353. -   person_event SPRITE_SUPER_NERD, 6 + 4, 6 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a2dd5, -1
  12354. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x1a2dcb, -1
  12355. +   person_event SPRITE_YOUNGSTER, 2, 9, $5, 0, 2, -1, -1, 0, 0, 0, YoungsterScript_0x1a2dd2, -1
  12356. +   person_event SPRITE_SUPER_NERD, 6, 6, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a2dd5, -1
  12357. diff --git a/maps/PewterNidoranSpeechHouse.asm b/maps/PewterNidoranSpeechHouse.asm
  12358. index 5e58509..773871d 100644
  12359. --- a/maps/PewterNidoranSpeechHouse.asm
  12360. +++ b/maps/PewterNidoranSpeechHouse.asm
  12361. @@ -41,5 +41,5 @@ PewterNidoranSpeechHouse_MapEventHeader:
  12362.  
  12363.  .PersonEvents:
  12364.     db 2
  12365. -   person_event SPRITE_SUPER_NERD, 5 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x1a2807, -1
  12366. -   person_event SPRITE_GROWLITHE, 5 + 4, 4 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrowlitheScript_0x1a280a, -1
  12367. +   person_event SPRITE_SUPER_NERD, 5, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x1a2807, -1
  12368. +   person_event SPRITE_GROWLITHE, 5, 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrowlitheScript_0x1a280a, -1
  12369. diff --git a/maps/PewterPokeCenter1F.asm b/maps/PewterPokeCenter1F.asm
  12370. index bb5eb50..0cbb4bb 100644
  12371. --- a/maps/PewterPokeCenter1F.asm
  12372. +++ b/maps/PewterPokeCenter1F.asm
  12373. @@ -78,8 +78,8 @@ PewterPokeCenter1F_MapEventHeader:
  12374.  
  12375.  .PersonEvents:
  12376.     db 5
  12377. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1a2ee7, -1
  12378. -   person_event SPRITE_TEACHER, 6 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a2eea, -1
  12379. -   person_event SPRITE_JIGGLYPUFF, 3 + 4, 1 + 4, $16, 0, 0, -1, -1, 0, 0, 0, JigglypuffScript_0x1a2eed, -1
  12380. -   person_event SPRITE_BUG_CATCHER, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BugCatcherScript_0x1a2ef7, -1
  12381. -   person_event SPRITE_POKEFAN_M, 2 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1a2efa, -1
  12382. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1a2ee7, -1
  12383. +   person_event SPRITE_TEACHER, 6, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a2eea, -1
  12384. +   person_event SPRITE_JIGGLYPUFF, 3, 1, $16, 0, 0, -1, -1, 0, 0, 0, JigglypuffScript_0x1a2eed, -1
  12385. +   person_event SPRITE_BUG_CATCHER, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, BugCatcherScript_0x1a2ef7, -1
  12386. +   person_event SPRITE_POKEFAN_M, 2, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1a2efa, -1
  12387. diff --git a/maps/PewterSnoozeSpeechHouse.asm b/maps/PewterSnoozeSpeechHouse.asm
  12388. index bc7ef9d..1284ec3 100644
  12389. --- a/maps/PewterSnoozeSpeechHouse.asm
  12390. +++ b/maps/PewterSnoozeSpeechHouse.asm
  12391. @@ -36,4 +36,4 @@ PewterSnoozeSpeechHouse_MapEventHeader:
  12392.  
  12393.  .PersonEvents:
  12394.     db 1
  12395. -   person_event SPRITE_GRAMPS, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x1a3059, -1
  12396. +   person_event SPRITE_GRAMPS, 3, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x1a3059, -1
  12397. diff --git a/maps/PokeCenter2F.asm b/maps/PokeCenter2F.asm
  12398. index e226398..9a6e307 100644
  12399. --- a/maps/PokeCenter2F.asm
  12400. +++ b/maps/PokeCenter2F.asm
  12401. @@ -1040,7 +1040,7 @@ PokeCenter2F_MapEventHeader:
  12402.  
  12403.  .PersonEvents:
  12404.     db 4
  12405. -   person_event SPRITE_LINK_RECEPTIONIST, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_Trade, -1
  12406. -   person_event SPRITE_LINK_RECEPTIONIST, 2 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_Battle, -1
  12407. -   person_event SPRITE_LINK_RECEPTIONIST, 3 + 4, 13 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_TimeCapsule, -1
  12408. -   person_event SPRITE_OFFICER, 1 + 4, 1 + 4, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x192c9a, EVENT_MYSTERY_GIFT_DELIVERY_GUY
  12409. +   person_event SPRITE_LINK_RECEPTIONIST, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_Trade, -1
  12410. +   person_event SPRITE_LINK_RECEPTIONIST, 2, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_Battle, -1
  12411. +   person_event SPRITE_LINK_RECEPTIONIST, 3, 13, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LinkReceptionistScript_TimeCapsule, -1
  12412. +   person_event SPRITE_OFFICER, 1, 1, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x192c9a, EVENT_MYSTERY_GIFT_DELIVERY_GUY
  12413. diff --git a/maps/PokeSeersHouse.asm b/maps/PokeSeersHouse.asm
  12414. index 0cd4cbc..ef5130d 100644
  12415. --- a/maps/PokeSeersHouse.asm
  12416. +++ b/maps/PokeSeersHouse.asm
  12417. @@ -30,4 +30,4 @@ PokeSeersHouse_MapEventHeader:
  12418.  
  12419.  .PersonEvents:
  12420.     db 1
  12421. -   person_event SPRITE_GRANNY, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SeerScript, -1
  12422. +   person_event SPRITE_GRANNY, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SeerScript, -1
  12423. diff --git a/maps/PokemonFanClub.asm b/maps/PokemonFanClub.asm
  12424. index c870d7f..29d3cbb 100644
  12425. --- a/maps/PokemonFanClub.asm
  12426. +++ b/maps/PokemonFanClub.asm
  12427. @@ -307,9 +307,9 @@ PokemonFanClub_MapEventHeader:
  12428.  
  12429.  .PersonEvents:
  12430.     db 6
  12431. -   person_event SPRITE_GENTLEMAN, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x1917e9, -1
  12432. -   person_event SPRITE_RECEPTIONIST, 1 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x191821, -1
  12433. -   person_event SPRITE_FISHER, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x191824, -1
  12434. -   person_event SPRITE_TEACHER, 2 + 4, 7 + 4, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x19186b, -1
  12435. -   person_event SPRITE_FAIRY, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, FairyScript_0x19186e, EVENT_VERMILION_FAN_CLUB_DOLL
  12436. -   person_event SPRITE_ODDISH, 3 + 4, 7 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OddishScript_0x191871, -1
  12437. +   person_event SPRITE_GENTLEMAN, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x1917e9, -1
  12438. +   person_event SPRITE_RECEPTIONIST, 1, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x191821, -1
  12439. +   person_event SPRITE_FISHER, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x191824, -1
  12440. +   person_event SPRITE_TEACHER, 2, 7, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x19186b, -1
  12441. +   person_event SPRITE_FAIRY, 4, 2, $6, 0, 0, -1, -1, 0, 0, 0, FairyScript_0x19186e, EVENT_VERMILION_FAN_CLUB_DOLL
  12442. +   person_event SPRITE_ODDISH, 3, 7, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OddishScript_0x191871, -1
  12443. diff --git a/maps/PowerPlant.asm b/maps/PowerPlant.asm
  12444. index 00b4e05..2057e2b 100644
  12445. --- a/maps/PowerPlant.asm
  12446. +++ b/maps/PowerPlant.asm
  12447. @@ -401,10 +401,10 @@ PowerPlant_MapEventHeader:
  12448.  
  12449.  .PersonEvents:
  12450.     db 7
  12451. -   person_event SPRITE_OFFICER, 14 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x188df5, -1
  12452. -   person_event SPRITE_GYM_GUY, 9 + 4, 2 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e15, -1
  12453. -   person_event SPRITE_GYM_GUY, 11 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e29, -1
  12454. -   person_event SPRITE_OFFICER, 3 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x188e3d, -1
  12455. -   person_event SPRITE_GYM_GUY, 2 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e51, -1
  12456. -   person_event SPRITE_FISHER, 10 + 4, 14 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PowerPlantManager, -1
  12457. -   person_event SPRITE_GYM_GUY, 5 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188ecb, -1
  12458. +   person_event SPRITE_OFFICER, 14, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x188df5, -1
  12459. +   person_event SPRITE_GYM_GUY, 9, 2, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e15, -1
  12460. +   person_event SPRITE_GYM_GUY, 11, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e29, -1
  12461. +   person_event SPRITE_OFFICER, 3, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x188e3d, -1
  12462. +   person_event SPRITE_GYM_GUY, 2, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188e51, -1
  12463. +   person_event SPRITE_FISHER, 10, 14, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PowerPlantManager, -1
  12464. +   person_event SPRITE_GYM_GUY, 5, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GymGuyScript_0x188ecb, -1
  12465. diff --git a/maps/RadioTower1F.asm b/maps/RadioTower1F.asm
  12466. index a7807ba..f39a065 100644
  12467. --- a/maps/RadioTower1F.asm
  12468. +++ b/maps/RadioTower1F.asm
  12469. @@ -484,9 +484,9 @@ RadioTower1F_MapEventHeader:
  12470.  
  12471.  .PersonEvents:
  12472.     db 6
  12473. -   person_event SPRITE_RECEPTIONIST, 6 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x5cd29, -1
  12474. -   person_event SPRITE_LASS, 4 + 4, 16 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x5ce51, EVENT_GOLDENROD_CITY_CIVILIANS
  12475. -   person_event SPRITE_YOUNGSTER, 4 + 4, 15 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x5ce54, EVENT_GOLDENROD_CITY_CIVILIANS
  12476. -   person_event SPRITE_ROCKET, 1 + 4, 14 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12477. -   person_event SPRITE_GENTLEMAN, 6 + 4, 8 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x5cd3d, EVENT_GOLDENROD_CITY_CIVILIANS
  12478. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 12 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x5cdd5, EVENT_GOLDENROD_CITY_CIVILIANS
  12479. +   person_event SPRITE_RECEPTIONIST, 6, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ReceptionistScript_0x5cd29, -1
  12480. +   person_event SPRITE_LASS, 4, 16, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x5ce51, EVENT_GOLDENROD_CITY_CIVILIANS
  12481. +   person_event SPRITE_YOUNGSTER, 4, 15, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x5ce54, EVENT_GOLDENROD_CITY_CIVILIANS
  12482. +   person_event SPRITE_ROCKET, 1, 14, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12483. +   person_event SPRITE_GENTLEMAN, 6, 8, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GentlemanScript_0x5cd3d, EVENT_GOLDENROD_CITY_CIVILIANS
  12484. +   person_event SPRITE_COOLTRAINER_F, 6, 12, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x5cdd5, EVENT_GOLDENROD_CITY_CIVILIANS
  12485. diff --git a/maps/RadioTower2F.asm b/maps/RadioTower2F.asm
  12486. index f1f35cf..6439214 100644
  12487. --- a/maps/RadioTower2F.asm
  12488. +++ b/maps/RadioTower2F.asm
  12489. @@ -720,14 +720,14 @@ RadioTower2F_MapEventHeader:
  12490.  
  12491.  .PersonEvents:
  12492.     db 11
  12493. -   person_event SPRITE_SUPER_NERD, 6 + 4, 6 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x5d6fe, EVENT_GOLDENROD_CITY_CIVILIANS
  12494. -   person_event SPRITE_TEACHER, 2 + 4, 17 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x5d701, -1
  12495. -   person_event SPRITE_ROCKET, 4 + 4, 1 + 4, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12496. -   person_event SPRITE_ROCKET, 4 + 4, 8 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM5, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12497. -   person_event SPRITE_ROCKET, 1 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM6, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12498. -   person_event SPRITE_ROCKET_GIRL, 5 + 4, 10 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerGruntF2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12499. -   person_event SPRITE_BLACK_BELT, 1 + 4, 0 + 4, $6, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x5d71f, EVENT_RADIO_TOWER_BLACKBELT_BLOCKS_STAIRS
  12500. -   person_event SPRITE_BLACK_BELT, 1 + 4, 1 + 4, $6, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x5d722, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12501. -   person_event SPRITE_JIGGLYPUFF, 1 + 4, 12 + 4, $16, 0, 0, -1, -1, 0, 0, 0, JigglypuffScript_0x5d715, -1
  12502. -   person_event SPRITE_BUENA, 5 + 4, 14 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Buena, -1
  12503. -   person_event SPRITE_RECEPTIONIST, 7 + 4, 12 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x5d8ff, EVENT_GOLDENROD_CITY_CIVILIANS
  12504. +   person_event SPRITE_SUPER_NERD, 6, 6, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x5d6fe, EVENT_GOLDENROD_CITY_CIVILIANS
  12505. +   person_event SPRITE_TEACHER, 2, 17, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x5d701, -1
  12506. +   person_event SPRITE_ROCKET, 4, 1, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12507. +   person_event SPRITE_ROCKET, 4, 8, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM5, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12508. +   person_event SPRITE_ROCKET, 1, 4, $6, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM6, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12509. +   person_event SPRITE_ROCKET_GIRL, 5, 10, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerGruntF2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12510. +   person_event SPRITE_BLACK_BELT, 1, 0, $6, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x5d71f, EVENT_RADIO_TOWER_BLACKBELT_BLOCKS_STAIRS
  12511. +   person_event SPRITE_BLACK_BELT, 1, 1, $6, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x5d722, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12512. +   person_event SPRITE_JIGGLYPUFF, 1, 12, $16, 0, 0, -1, -1, 0, 0, 0, JigglypuffScript_0x5d715, -1
  12513. +   person_event SPRITE_BUENA, 5, 14, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Buena, -1
  12514. +   person_event SPRITE_RECEPTIONIST, 7, 12, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x5d8ff, EVENT_GOLDENROD_CITY_CIVILIANS
  12515. diff --git a/maps/RadioTower3F.asm b/maps/RadioTower3F.asm
  12516. index b0104d9..4329295 100644
  12517. --- a/maps/RadioTower3F.asm
  12518. +++ b/maps/RadioTower3F.asm
  12519. @@ -343,10 +343,10 @@ RadioTower3F_MapEventHeader:
  12520.  
  12521.  .PersonEvents:
  12522.     db 7
  12523. -   person_event SPRITE_SUPER_NERD, 4 + 4, 7 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x5e553, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12524. -   person_event SPRITE_GYM_GUY, 4 + 4, 3 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GymGuyScript_0x5e556, -1
  12525. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 11 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x5e56a, -1
  12526. -   person_event SPRITE_ROCKET, 1 + 4, 5 + 4, $9, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM7, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12527. -   person_event SPRITE_ROCKET, 2 + 4, 6 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM8, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12528. -   person_event SPRITE_ROCKET, 6 + 4, 16 + 4, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM9, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12529. -   person_event SPRITE_SCIENTIST, 6 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerScientistMarc, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12530. +   person_event SPRITE_SUPER_NERD, 4, 7, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x5e553, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12531. +   person_event SPRITE_GYM_GUY, 4, 3, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GymGuyScript_0x5e556, -1
  12532. +   person_event SPRITE_COOLTRAINER_F, 3, 11, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x5e56a, -1
  12533. +   person_event SPRITE_ROCKET, 1, 5, $9, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM7, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12534. +   person_event SPRITE_ROCKET, 2, 6, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM8, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12535. +   person_event SPRITE_ROCKET, 6, 16, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM9, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12536. +   person_event SPRITE_SCIENTIST, 6, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerScientistMarc, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12537. diff --git a/maps/RadioTower4F.asm b/maps/RadioTower4F.asm
  12538. index 8f20fd3..be4cd0c 100644
  12539. --- a/maps/RadioTower4F.asm
  12540. +++ b/maps/RadioTower4F.asm
  12541. @@ -257,10 +257,10 @@ RadioTower4F_MapEventHeader:
  12542.  
  12543.  .PersonEvents:
  12544.     db 7
  12545. -   person_event SPRITE_FISHER, 4 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x5eb82, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12546. -   person_event SPRITE_TEACHER, 6 + 4, 14 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5eb85, -1
  12547. -   person_event SPRITE_GROWLITHE, 7 + 4, 12 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrowlitheScript_0x5ebb2, -1
  12548. -   person_event SPRITE_ROCKET, 6 + 4, 5 + 4, $1f, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM10, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12549. -   person_event SPRITE_ROCKET, 1 + 4, 14 + 4, $8, 0, 2, -1, -1, 0, 2, 2, TrainerExecutivem2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12550. -   person_event SPRITE_ROCKET_GIRL, 4 + 4, 12 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerGruntF4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12551. -   person_event SPRITE_SCIENTIST, 2 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerScientistRich, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12552. +   person_event SPRITE_FISHER, 4, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x5eb82, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12553. +   person_event SPRITE_TEACHER, 6, 14, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x5eb85, -1
  12554. +   person_event SPRITE_GROWLITHE, 7, 12, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GrowlitheScript_0x5ebb2, -1
  12555. +   person_event SPRITE_ROCKET, 6, 5, $1f, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM10, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12556. +   person_event SPRITE_ROCKET, 1, 14, $8, 0, 2, -1, -1, 0, 2, 2, TrainerExecutivem2, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12557. +   person_event SPRITE_ROCKET_GIRL, 4, 12, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerGruntF4, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12558. +   person_event SPRITE_SCIENTIST, 2, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerScientistRich, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12559. diff --git a/maps/RadioTower5F.asm b/maps/RadioTower5F.asm
  12560. index 652421e..499e7fb 100644
  12561. --- a/maps/RadioTower5F.asm
  12562. +++ b/maps/RadioTower5F.asm
  12563. @@ -439,8 +439,8 @@ RadioTower5F_MapEventHeader:
  12564.  
  12565.  .PersonEvents:
  12566.     db 5
  12567. -   person_event SPRITE_GENTLEMAN, 6 + 4, 3 + 4, $3, 0, 0, -1, -1, 0, 0, 0, Director, -1
  12568. -   person_event SPRITE_ROCKET, 5 + 4, 13 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12569. -   person_event SPRITE_ROCKET_GIRL, 2 + 4, 17 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerExecutivef1, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12570. -   person_event SPRITE_ROCKER, 5 + 4, 13 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Ben, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12571. -   person_event SPRITE_POKE_BALL, 5 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x600fe, EVENT_RADIO_TOWER_5F_ULTRA_BALL
  12572. +   person_event SPRITE_GENTLEMAN, 6, 3, $3, 0, 0, -1, -1, 0, 0, 0, Director, -1
  12573. +   person_event SPRITE_ROCKET, 5, 13, $8, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12574. +   person_event SPRITE_ROCKET_GIRL, 2, 17, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerExecutivef1, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  12575. +   person_event SPRITE_ROCKER, 5, 13, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, Ben, EVENT_RADIO_TOWER_CIVILIANS_AFTER
  12576. +   person_event SPRITE_POKE_BALL, 5, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x600fe, EVENT_RADIO_TOWER_5F_ULTRA_BALL
  12577. diff --git a/maps/RedsHouse1F.asm b/maps/RedsHouse1F.asm
  12578. index 16e662f..a3e23c6 100644
  12579. --- a/maps/RedsHouse1F.asm
  12580. +++ b/maps/RedsHouse1F.asm
  12581. @@ -94,4 +94,4 @@ RedsHouse1F_MapEventHeader:
  12582.  
  12583.  .PersonEvents:
  12584.     db 1
  12585. -   person_event SPRITE_REDS_MOM, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, 0, 0, 0, RedsMom, -1
  12586. +   person_event SPRITE_REDS_MOM, 3, 5, $8, 0, 0, -1, -1, 0, 0, 0, RedsMom, -1
  12587. diff --git a/maps/RockTunnel1F.asm b/maps/RockTunnel1F.asm
  12588. index c3e89b2..6f4c0f6 100644
  12589. --- a/maps/RockTunnel1F.asm
  12590. +++ b/maps/RockTunnel1F.asm
  12591. @@ -42,5 +42,5 @@ RockTunnel1F_MapEventHeader:
  12592.  
  12593.  .PersonEvents:
  12594.     db 2
  12595. -   person_event SPRITE_POKE_BALL, 18 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x743b5, EVENT_ROCK_TUNNEL_1F_ELIXER
  12596. -   person_event SPRITE_POKE_BALL, 15 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x743b7, EVENT_ROCK_TUNNEL_1F_TM_STEEL_WING
  12597. +   person_event SPRITE_POKE_BALL, 18, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x743b5, EVENT_ROCK_TUNNEL_1F_ELIXER
  12598. +   person_event SPRITE_POKE_BALL, 15, 10, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x743b7, EVENT_ROCK_TUNNEL_1F_TM_STEEL_WING
  12599. diff --git a/maps/RockTunnelB1F.asm b/maps/RockTunnelB1F.asm
  12600. index 97bcd62..3f95471 100644
  12601. --- a/maps/RockTunnelB1F.asm
  12602. +++ b/maps/RockTunnelB1F.asm
  12603. @@ -38,6 +38,6 @@ RockTunnelB1F_MapEventHeader:
  12604.  
  12605.  .PersonEvents:
  12606.     db 3
  12607. -   person_event SPRITE_POKE_BALL, 25 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74409, EVENT_ROCK_TUNNEL_B1F_IRON
  12608. -   person_event SPRITE_POKE_BALL, 17 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7440b, EVENT_ROCK_TUNNEL_B1F_PP_UP
  12609. -   person_event SPRITE_POKE_BALL, 2 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7440d, EVENT_ROCK_TUNNEL_B1F_REVIVE
  12610. +   person_event SPRITE_POKE_BALL, 25, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74409, EVENT_ROCK_TUNNEL_B1F_IRON
  12611. +   person_event SPRITE_POKE_BALL, 17, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7440b, EVENT_ROCK_TUNNEL_B1F_PP_UP
  12612. +   person_event SPRITE_POKE_BALL, 2, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7440d, EVENT_ROCK_TUNNEL_B1F_REVIVE
  12613. diff --git a/maps/Route1.asm b/maps/Route1.asm
  12614. index e293bef..0c175e9 100644
  12615. --- a/maps/Route1.asm
  12616. +++ b/maps/Route1.asm
  12617. @@ -91,6 +91,6 @@ Route1_MapEventHeader:
  12618.  
  12619.  .PersonEvents:
  12620.     db 3
  12621. -   person_event SPRITE_YOUNGSTER, 12 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSchoolboyDanny, -1
  12622. -   person_event SPRITE_COOLTRAINER_F, 25 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfQuinn, -1
  12623. -   person_event SPRITE_FRUIT_TREE, 7 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac581, -1
  12624. +   person_event SPRITE_YOUNGSTER, 12, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSchoolboyDanny, -1
  12625. +   person_event SPRITE_COOLTRAINER_F, 25, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfQuinn, -1
  12626. +   person_event SPRITE_FRUIT_TREE, 7, 3, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac581, -1
  12627. diff --git a/maps/Route10PokeCenter1F.asm b/maps/Route10PokeCenter1F.asm
  12628. index 3ed3b5c..8374255 100644
  12629. --- a/maps/Route10PokeCenter1F.asm
  12630. +++ b/maps/Route10PokeCenter1F.asm
  12631. @@ -92,7 +92,7 @@ Route10PokeCenter1F_MapEventHeader:
  12632.  
  12633.  .PersonEvents:
  12634.     db 4
  12635. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x188bd4, -1
  12636. -   person_event SPRITE_GENTLEMAN, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x188bd7, -1
  12637. -   person_event SPRITE_GYM_GUY, 2 + 4, 7 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x188bda, -1
  12638. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 1 + 4, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x188bee, -1
  12639. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x188bd4, -1
  12640. +   person_event SPRITE_GENTLEMAN, 6, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x188bd7, -1
  12641. +   person_event SPRITE_GYM_GUY, 2, 7, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GymGuyScript_0x188bda, -1
  12642. +   person_event SPRITE_COOLTRAINER_F, 3, 1, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x188bee, -1
  12643. diff --git a/maps/Route10South.asm b/maps/Route10South.asm
  12644. index 86a8c40..662509b 100644
  12645. --- a/maps/Route10South.asm
  12646. +++ b/maps/Route10South.asm
  12647. @@ -88,5 +88,5 @@ Route10South_MapEventHeader:
  12648.  
  12649.  .PersonEvents:
  12650.     db 2
  12651. -   person_event SPRITE_POKEFAN_M, 3 + 4, 17 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerJim, -1
  12652. -   person_event SPRITE_POKEFAN_M, 10 + 4, 8 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmRobert, -1
  12653. +   person_event SPRITE_POKEFAN_M, 3, 17, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerJim, -1
  12654. +   person_event SPRITE_POKEFAN_M, 10, 8, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmRobert, -1
  12655. diff --git a/maps/Route11.asm b/maps/Route11.asm
  12656. index 1dd4597..c3ee336 100644
  12657. --- a/maps/Route11.asm
  12658. +++ b/maps/Route11.asm
  12659. @@ -156,8 +156,8 @@ Route11_MapEventHeader:
  12660.  
  12661.  .PersonEvents:
  12662.     db 5
  12663. -   person_event SPRITE_YOUNGSTER, 14 + 4, 22 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterOwen, -1
  12664. -   person_event SPRITE_YOUNGSTER, 4 + 4, 20 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterJason, -1
  12665. -   person_event SPRITE_YOUNGSTER, 7 + 4, 28 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicHerman, -1
  12666. -   person_event SPRITE_YOUNGSTER, 6 + 4, 8 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicFidel, -1
  12667. -   person_event SPRITE_FRUIT_TREE, 2 + 4, 32 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x68055, -1
  12668. +   person_event SPRITE_YOUNGSTER, 14, 22, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterOwen, -1
  12669. +   person_event SPRITE_YOUNGSTER, 4, 20, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterJason, -1
  12670. +   person_event SPRITE_YOUNGSTER, 7, 28, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicHerman, -1
  12671. +   person_event SPRITE_YOUNGSTER, 6, 8, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicFidel, -1
  12672. +   person_event SPRITE_FRUIT_TREE, 2, 32, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x68055, -1
  12673. diff --git a/maps/Route12.asm b/maps/Route12.asm
  12674. index 091dd0c..8b7ebe9 100644
  12675. --- a/maps/Route12.asm
  12676. +++ b/maps/Route12.asm
  12677. @@ -178,9 +178,9 @@ Route12_MapEventHeader:
  12678.  
  12679.  .PersonEvents:
  12680.     db 6
  12681. -   person_event SPRITE_FISHER, 13 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherMartin, -1
  12682. -   person_event SPRITE_FISHER, 23 + 4, 14 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherStephen, -1
  12683. -   person_event SPRITE_FISHER, 38 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerFisherBarney, -1
  12684. -   person_event SPRITE_FISHER, 7 + 4, 6 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherKyle, -1
  12685. -   person_event SPRITE_POKE_BALL, 43 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a700b, EVENT_ROUTE_12_CALCIUM
  12686. -   person_event SPRITE_POKE_BALL, 51 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a700d, EVENT_ROUTE_12_NUGGET
  12687. +   person_event SPRITE_FISHER, 13, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherMartin, -1
  12688. +   person_event SPRITE_FISHER, 23, 14, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherStephen, -1
  12689. +   person_event SPRITE_FISHER, 38, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerFisherBarney, -1
  12690. +   person_event SPRITE_FISHER, 7, 6, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherKyle, -1
  12691. +   person_event SPRITE_POKE_BALL, 43, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a700b, EVENT_ROUTE_12_CALCIUM
  12692. +   person_event SPRITE_POKE_BALL, 51, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a700d, EVENT_ROUTE_12_NUGGET
  12693. diff --git a/maps/Route12SuperRodHouse.asm b/maps/Route12SuperRodHouse.asm
  12694. index 0b85881..bc4376e 100644
  12695. --- a/maps/Route12SuperRodHouse.asm
  12696. +++ b/maps/Route12SuperRodHouse.asm
  12697. @@ -93,4 +93,4 @@ Route12SuperRodHouse_MapEventHeader:
  12698.  
  12699.  .PersonEvents:
  12700.     db 1
  12701. -   person_event SPRITE_FISHING_GURU, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x7f484, -1
  12702. +   person_event SPRITE_FISHING_GURU, 3, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x7f484, -1
  12703. diff --git a/maps/Route13.asm b/maps/Route13.asm
  12704. index 457b605..6314a69 100644
  12705. --- a/maps/Route13.asm
  12706. +++ b/maps/Route13.asm
  12707. @@ -204,8 +204,8 @@ Route13_MapEventHeader:
  12708.  
  12709.  .PersonEvents:
  12710.     db 5
  12711. -   person_event SPRITE_YOUNGSTER, 6 + 4, 42 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBird_keeperPerry, -1
  12712. -   person_event SPRITE_YOUNGSTER, 6 + 4, 43 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBird_keeperBret, -1
  12713. -   person_event SPRITE_POKEFAN_M, 8 + 4, 32 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmJoshua, -1
  12714. -   person_event SPRITE_POKEFAN_M, 10 + 4, 14 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerHikerKenny, -1
  12715. -   person_event SPRITE_POKEFAN_M, 6 + 4, 25 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanmAlex, -1
  12716. +   person_event SPRITE_YOUNGSTER, 6, 42, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBird_keeperPerry, -1
  12717. +   person_event SPRITE_YOUNGSTER, 6, 43, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerBird_keeperBret, -1
  12718. +   person_event SPRITE_POKEFAN_M, 8, 32, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmJoshua, -1
  12719. +   person_event SPRITE_POKEFAN_M, 10, 14, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerHikerKenny, -1
  12720. +   person_event SPRITE_POKEFAN_M, 6, 25, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanmAlex, -1
  12721. diff --git a/maps/Route14.asm b/maps/Route14.asm
  12722. index d35f76e..0884356 100644
  12723. --- a/maps/Route14.asm
  12724. +++ b/maps/Route14.asm
  12725. @@ -124,7 +124,7 @@ Route14_MapEventHeader:
  12726.  
  12727.  .PersonEvents:
  12728.     db 4
  12729. -   person_event SPRITE_POKEFAN_M, 15 + 4, 11 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmCarter, -1
  12730. -   person_event SPRITE_YOUNGSTER, 27 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperRoy, -1
  12731. -   person_event SPRITE_POKEFAN_M, 11 + 4, 6 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmTrevor, -1
  12732. -   person_event SPRITE_TEACHER, 5 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 4, TeacherScript_0x1ad47f, -1
  12733. +   person_event SPRITE_POKEFAN_M, 15, 11, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmCarter, -1
  12734. +   person_event SPRITE_YOUNGSTER, 27, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperRoy, -1
  12735. +   person_event SPRITE_POKEFAN_M, 11, 6, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmTrevor, -1
  12736. +   person_event SPRITE_TEACHER, 5, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 4, TeacherScript_0x1ad47f, -1
  12737. diff --git a/maps/Route15.asm b/maps/Route15.asm
  12738. index 199a0b5..a5480c8 100644
  12739. --- a/maps/Route15.asm
  12740. +++ b/maps/Route15.asm
  12741. @@ -210,10 +210,10 @@ Route15_MapEventHeader:
  12742.  
  12743.  .PersonEvents:
  12744.     db 7
  12745. -   person_event SPRITE_YOUNGSTER, 10 + 4, 10 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSchoolboyKipp, -1
  12746. -   person_event SPRITE_YOUNGSTER, 13 + 4, 15 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyTommy, -1
  12747. -   person_event SPRITE_YOUNGSTER, 10 + 4, 33 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyJohnny, -1
  12748. -   person_event SPRITE_YOUNGSTER, 10 + 4, 27 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyBilly, -1
  12749. -   person_event SPRITE_TEACHER, 12 + 4, 30 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerTeacherColette, -1
  12750. -   person_event SPRITE_TEACHER, 10 + 4, 20 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerTeacherHillary, -1
  12751. -   person_event SPRITE_POKE_BALL, 5 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1aa5e4, EVENT_ROUTE_15_PP_UP
  12752. +   person_event SPRITE_YOUNGSTER, 10, 10, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSchoolboyKipp, -1
  12753. +   person_event SPRITE_YOUNGSTER, 13, 15, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyTommy, -1
  12754. +   person_event SPRITE_YOUNGSTER, 10, 33, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyJohnny, -1
  12755. +   person_event SPRITE_YOUNGSTER, 10, 27, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyBilly, -1
  12756. +   person_event SPRITE_TEACHER, 12, 30, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerTeacherColette, -1
  12757. +   person_event SPRITE_TEACHER, 10, 20, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerTeacherHillary, -1
  12758. +   person_event SPRITE_POKE_BALL, 5, 12, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1aa5e4, EVENT_ROUTE_15_PP_UP
  12759. diff --git a/maps/Route15FuchsiaGate.asm b/maps/Route15FuchsiaGate.asm
  12760. index 242557f..2ffb7ee 100644
  12761. --- a/maps/Route15FuchsiaGate.asm
  12762. +++ b/maps/Route15FuchsiaGate.asm
  12763. @@ -35,4 +35,4 @@ Route15FuchsiaGate_MapEventHeader:
  12764.  
  12765.  .PersonEvents:
  12766.     db 1
  12767. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x19679e, -1
  12768. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x19679e, -1
  12769. diff --git a/maps/Route16FuchsiaSpeechHouse.asm b/maps/Route16FuchsiaSpeechHouse.asm
  12770. index cae20d6..aab16e3 100644
  12771. --- a/maps/Route16FuchsiaSpeechHouse.asm
  12772. +++ b/maps/Route16FuchsiaSpeechHouse.asm
  12773. @@ -38,4 +38,4 @@ Route16FuchsiaSpeechHouse_MapEventHeader:
  12774.  
  12775.  .PersonEvents:
  12776.     db 1
  12777. -   person_event SPRITE_SUPER_NERD, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x73373, -1
  12778. +   person_event SPRITE_SUPER_NERD, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x73373, -1
  12779. diff --git a/maps/Route16Gate.asm b/maps/Route16Gate.asm
  12780. index 6743df5..b2ad14e 100644
  12781. --- a/maps/Route16Gate.asm
  12782. +++ b/maps/Route16Gate.asm
  12783. @@ -80,4 +80,4 @@ Route16Gate_MapEventHeader:
  12784.  
  12785.  .PersonEvents:
  12786.     db 1
  12787. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x733ea, -1
  12788. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x733ea, -1
  12789. diff --git a/maps/Route17.asm b/maps/Route17.asm
  12790. index 1eaf7d9..6543def 100644
  12791. --- a/maps/Route17.asm
  12792. +++ b/maps/Route17.asm
  12793. @@ -150,7 +150,7 @@ Route17_MapEventHeader:
  12794.  
  12795.  .PersonEvents:
  12796.     db 4
  12797. -   person_event SPRITE_BIKER, 17 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerBikerRiley, -1
  12798. -   person_event SPRITE_BIKER, 68 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerBikerJoel, -1
  12799. -   person_event SPRITE_BIKER, 53 + 4, 3 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBikerGlenn, -1
  12800. -   person_event SPRITE_BIKER, 80 + 4, 6 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerBikerCharles, -1
  12801. +   person_event SPRITE_BIKER, 17, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerBikerRiley, -1
  12802. +   person_event SPRITE_BIKER, 68, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerBikerJoel, -1
  12803. +   person_event SPRITE_BIKER, 53, 3, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBikerGlenn, -1
  12804. +   person_event SPRITE_BIKER, 80, 6, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerBikerCharles, -1
  12805. diff --git a/maps/Route1718Gate.asm b/maps/Route1718Gate.asm
  12806. index c4ef63b..c23d76d 100644
  12807. --- a/maps/Route1718Gate.asm
  12808. +++ b/maps/Route1718Gate.asm
  12809. @@ -71,4 +71,4 @@ Route1718Gate_MapEventHeader:
  12810.  
  12811.  .PersonEvents:
  12812.     db 1
  12813. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7360e, -1
  12814. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7360e, -1
  12815. diff --git a/maps/Route18.asm b/maps/Route18.asm
  12816. index 8d1446f..00728f8 100644
  12817. --- a/maps/Route18.asm
  12818. +++ b/maps/Route18.asm
  12819. @@ -91,5 +91,5 @@ Route18_MapEventHeader:
  12820.  
  12821.  .PersonEvents:
  12822.     db 2
  12823. -   person_event SPRITE_YOUNGSTER, 12 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperBoris, -1
  12824. -   person_event SPRITE_YOUNGSTER, 6 + 4, 13 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperBob, -1
  12825. +   person_event SPRITE_YOUNGSTER, 12, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperBoris, -1
  12826. +   person_event SPRITE_YOUNGSTER, 6, 13, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperBob, -1
  12827. diff --git a/maps/Route19.asm b/maps/Route19.asm
  12828. index f986ff0..beb87fd 100644
  12829. --- a/maps/Route19.asm
  12830. +++ b/maps/Route19.asm
  12831. @@ -247,9 +247,9 @@ Route19_MapEventHeader:
  12832.  
  12833.  .PersonEvents:
  12834.     db 6
  12835. -   person_event SPRITE_SWIMMER_GIRL, 23 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerSwimmerfDawn, -1
  12836. -   person_event SPRITE_SWIMMER_GUY, 28 + 4, 13 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermHarold, -1
  12837. -   person_event SPRITE_SWIMMER_GUY, 17 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermJerome, -1
  12838. -   person_event SPRITE_SWIMMER_GUY, 23 + 4, 8 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerSwimmermTucker, -1
  12839. -   person_event SPRITE_FISHER, 5 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 1, FisherScript_0x19ea4d, -1
  12840. -   person_event SPRITE_FISHER, 5 + 4, 11 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, FisherScript_0x19ea61, -1
  12841. +   person_event SPRITE_SWIMMER_GIRL, 23, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 0, TrainerSwimmerfDawn, -1
  12842. +   person_event SPRITE_SWIMMER_GUY, 28, 13, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermHarold, -1
  12843. +   person_event SPRITE_SWIMMER_GUY, 17, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermJerome, -1
  12844. +   person_event SPRITE_SWIMMER_GUY, 23, 8, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerSwimmermTucker, -1
  12845. +   person_event SPRITE_FISHER, 5, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 1, FisherScript_0x19ea4d, -1
  12846. +   person_event SPRITE_FISHER, 5, 11, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, FisherScript_0x19ea61, -1
  12847. diff --git a/maps/Route19FuchsiaGate.asm b/maps/Route19FuchsiaGate.asm
  12848. index d2870de..1036a5f 100644
  12849. --- a/maps/Route19FuchsiaGate.asm
  12850. +++ b/maps/Route19FuchsiaGate.asm
  12851. @@ -61,4 +61,4 @@ Route19FuchsiaGate_MapEventHeader:
  12852.  
  12853.  .PersonEvents:
  12854.     db 1
  12855. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x1ab3f6, -1
  12856. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x1ab3f6, -1
  12857. diff --git a/maps/Route2.asm b/maps/Route2.asm
  12858. index f15ccbf..79a72bf 100644
  12859. --- a/maps/Route2.asm
  12860. +++ b/maps/Route2.asm
  12861. @@ -162,11 +162,11 @@ Route2_MapEventHeader:
  12862.  
  12863.  .PersonEvents:
  12864.     db 8
  12865. -   person_event SPRITE_BUG_CATCHER, 45 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 5, TrainerBug_catcherRob, -1
  12866. -   person_event SPRITE_BUG_CATCHER, 4 + 4, 6 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherEd, -1
  12867. -   person_event SPRITE_BUG_CATCHER, 40 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherDoug, -1
  12868. -   person_event SPRITE_POKE_BALL, 29 + 4, 0 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac2fe, EVENT_ROUTE_2_DIRE_HIT
  12869. -   person_event SPRITE_POKE_BALL, 23 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac300, EVENT_ROUTE_2_MAX_POTION
  12870. -   person_event SPRITE_POKE_BALL, 2 + 4, 19 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac302, EVENT_ROUTE_2_CARBOS
  12871. -   person_event SPRITE_POKE_BALL, 50 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac304, EVENT_ROUTE_2_ELIXER
  12872. -   person_event SPRITE_FRUIT_TREE, 14 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac306, -1
  12873. +   person_event SPRITE_BUG_CATCHER, 45, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 5, TrainerBug_catcherRob, -1
  12874. +   person_event SPRITE_BUG_CATCHER, 4, 6, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherEd, -1
  12875. +   person_event SPRITE_BUG_CATCHER, 40, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherDoug, -1
  12876. +   person_event SPRITE_POKE_BALL, 29, 0, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac2fe, EVENT_ROUTE_2_DIRE_HIT
  12877. +   person_event SPRITE_POKE_BALL, 23, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac300, EVENT_ROUTE_2_MAX_POTION
  12878. +   person_event SPRITE_POKE_BALL, 2, 19, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac302, EVENT_ROUTE_2_CARBOS
  12879. +   person_event SPRITE_POKE_BALL, 50, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ac304, EVENT_ROUTE_2_ELIXER
  12880. +   person_event SPRITE_FRUIT_TREE, 14, 10, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac306, -1
  12881. diff --git a/maps/Route20.asm b/maps/Route20.asm
  12882. index 6dd9a34..e623138 100644
  12883. --- a/maps/Route20.asm
  12884. +++ b/maps/Route20.asm
  12885. @@ -127,6 +127,6 @@ Route20_MapEventHeader:
  12886.  
  12887.  .PersonEvents:
  12888.     db 3
  12889. -   person_event SPRITE_SWIMMER_GIRL, 8 + 4, 52 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfNicole, -1
  12890. -   person_event SPRITE_SWIMMER_GIRL, 13 + 4, 45 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfLori, -1
  12891. -   person_event SPRITE_SWIMMER_GUY, 13 + 4, 12 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermCameron, -1
  12892. +   person_event SPRITE_SWIMMER_GIRL, 8, 52, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfNicole, -1
  12893. +   person_event SPRITE_SWIMMER_GIRL, 13, 45, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfLori, -1
  12894. +   person_event SPRITE_SWIMMER_GUY, 13, 12, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermCameron, -1
  12895. diff --git a/maps/Route21.asm b/maps/Route21.asm
  12896. index 7f4ee37..15dd2d9 100644
  12897. --- a/maps/Route21.asm
  12898. +++ b/maps/Route21.asm
  12899. @@ -99,6 +99,6 @@ Route21_MapEventHeader:
  12900.  
  12901.  .PersonEvents:
  12902.     db 3
  12903. -   person_event SPRITE_SWIMMER_GIRL, 16 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfNikki, -1
  12904. -   person_event SPRITE_SWIMMER_GUY, 30 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerSwimmermSeth, -1
  12905. -   person_event SPRITE_FISHER, 22 + 4, 14 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherArnold, -1
  12906. +   person_event SPRITE_SWIMMER_GIRL, 16, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfNikki, -1
  12907. +   person_event SPRITE_SWIMMER_GUY, 30, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerSwimmermSeth, -1
  12908. +   person_event SPRITE_FISHER, 22, 14, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherArnold, -1
  12909. diff --git a/maps/Route24.asm b/maps/Route24.asm
  12910. index ebabba5..fffc4ca 100644
  12911. --- a/maps/Route24.asm
  12912. +++ b/maps/Route24.asm
  12913. @@ -130,4 +130,4 @@ Route24_MapEventHeader:
  12914.  
  12915.  .PersonEvents:
  12916.     db 1
  12917. -   person_event SPRITE_ROCKET, 7 + 4, 8 + 4, $3, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x1adbfa, EVENT_ROUTE_24_ROCKET
  12918. +   person_event SPRITE_ROCKET, 7, 8, $3, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x1adbfa, EVENT_ROUTE_24_ROCKET
  12919. diff --git a/maps/Route25.asm b/maps/Route25.asm
  12920. index 0ccf333..7b3fee4 100644
  12921. --- a/maps/Route25.asm
  12922. +++ b/maps/Route25.asm
  12923. @@ -439,14 +439,14 @@ Route25_MapEventHeader:
  12924.  
  12925.  .PersonEvents:
  12926.     db 11
  12927. -   person_event SPRITE_MISTY, 9 + 4, 46 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_ROUTE_25_MISTY_BOYFRIEND
  12928. -   person_event SPRITE_COOLTRAINER_M, 10 + 4, 46 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_ROUTE_25_MISTY_BOYFRIEND
  12929. -   person_event SPRITE_YOUNGSTER, 8 + 4, 12 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyDudley, -1
  12930. -   person_event SPRITE_LASS, 11 + 4, 16 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassEllen, -1
  12931. -   person_event SPRITE_YOUNGSTER, 8 + 4, 21 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyJoe, -1
  12932. -   person_event SPRITE_LASS, 6 + 4, 22 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassLaura, -1
  12933. -   person_event SPRITE_YOUNGSTER, 4 + 4, 25 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperLloyd, -1
  12934. -   person_event SPRITE_LASS, 11 + 4, 28 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassShannon, -1
  12935. -   person_event SPRITE_SUPER_NERD, 7 + 4, 31 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerSupernerdPat, -1
  12936. -   person_event SPRITE_COOLTRAINER_M, 8 + 4, 37 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x19efac, -1
  12937. -   person_event SPRITE_POKE_BALL, 4 + 4, 32 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19efe3, EVENT_ROUTE_25_PROTEIN
  12938. +   person_event SPRITE_MISTY, 9, 46, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_ROUTE_25_MISTY_BOYFRIEND
  12939. +   person_event SPRITE_COOLTRAINER_M, 10, 46, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, EVENT_ROUTE_25_MISTY_BOYFRIEND
  12940. +   person_event SPRITE_YOUNGSTER, 8, 12, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSchoolboyDudley, -1
  12941. +   person_event SPRITE_LASS, 11, 16, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassEllen, -1
  12942. +   person_event SPRITE_YOUNGSTER, 8, 21, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyJoe, -1
  12943. +   person_event SPRITE_LASS, 6, 22, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerLassLaura, -1
  12944. +   person_event SPRITE_YOUNGSTER, 4, 25, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperLloyd, -1
  12945. +   person_event SPRITE_LASS, 11, 28, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerLassShannon, -1
  12946. +   person_event SPRITE_SUPER_NERD, 7, 31, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerSupernerdPat, -1
  12947. +   person_event SPRITE_COOLTRAINER_M, 8, 37, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x19efac, -1
  12948. +   person_event SPRITE_POKE_BALL, 4, 32, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19efe3, EVENT_ROUTE_25_PROTEIN
  12949. diff --git a/maps/Route26.asm b/maps/Route26.asm
  12950. index 2e494b0..8feb734 100644
  12951. --- a/maps/Route26.asm
  12952. +++ b/maps/Route26.asm
  12953. @@ -421,11 +421,11 @@ Route26_MapEventHeader:
  12954.  
  12955.  .PersonEvents:
  12956.     db 8
  12957. -   person_event SPRITE_COOLTRAINER_M, 24 + 4, 14 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainermJake, -1
  12958. -   person_event SPRITE_COOLTRAINER_M, 38 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermGaven3, -1
  12959. -   person_event SPRITE_COOLTRAINER_F, 56 + 4, 10 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfJoyce, -1
  12960. -   person_event SPRITE_COOLTRAINER_F, 8 + 4, 5 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainerfBeth1, -1
  12961. -   person_event SPRITE_YOUNGSTER, 79 + 4, 13 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPsychicRichard, -1
  12962. -   person_event SPRITE_FISHER, 92 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherScott, -1
  12963. -   person_event SPRITE_FRUIT_TREE, 54 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a4ec2, -1
  12964. -   person_event SPRITE_POKE_BALL, 15 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a4ec4, EVENT_ROUTE_26_MAX_ELIXER
  12965. +   person_event SPRITE_COOLTRAINER_M, 24, 14, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainermJake, -1
  12966. +   person_event SPRITE_COOLTRAINER_M, 38, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermGaven3, -1
  12967. +   person_event SPRITE_COOLTRAINER_F, 56, 10, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfJoyce, -1
  12968. +   person_event SPRITE_COOLTRAINER_F, 8, 5, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainerfBeth1, -1
  12969. +   person_event SPRITE_YOUNGSTER, 79, 13, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPsychicRichard, -1
  12970. +   person_event SPRITE_FISHER, 92, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherScott, -1
  12971. +   person_event SPRITE_FRUIT_TREE, 54, 14, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a4ec2, -1
  12972. +   person_event SPRITE_POKE_BALL, 15, 9, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a4ec4, EVENT_ROUTE_26_MAX_ELIXER
  12973. diff --git a/maps/Route26DayofWeekSiblingsHouse.asm b/maps/Route26DayofWeekSiblingsHouse.asm
  12974. index 7c2adf3..b0a8a1c 100644
  12975. --- a/maps/Route26DayofWeekSiblingsHouse.asm
  12976. +++ b/maps/Route26DayofWeekSiblingsHouse.asm
  12977. @@ -84,4 +84,4 @@ Route26DayofWeekSiblingsHouse_MapEventHeader:
  12978.  
  12979.  .PersonEvents:
  12980.     db 1
  12981. -   person_event SPRITE_POKEDEX, 3 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 0, 0, PokedexScript_0x7b1e4, -1
  12982. +   person_event SPRITE_POKEDEX, 3, 3, $1, 0, 0, -1, -1, 0, 0, 0, PokedexScript_0x7b1e4, -1
  12983. diff --git a/maps/Route26HealSpeechHouse.asm b/maps/Route26HealSpeechHouse.asm
  12984. index 7630808..44e3e90 100644
  12985. --- a/maps/Route26HealSpeechHouse.asm
  12986. +++ b/maps/Route26HealSpeechHouse.asm
  12987. @@ -64,4 +64,4 @@ Route26HealSpeechHouse_MapEventHeader:
  12988.  
  12989.  .PersonEvents:
  12990.     db 1
  12991. -   person_event SPRITE_TEACHER, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7b125, -1
  12992. +   person_event SPRITE_TEACHER, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7b125, -1
  12993. diff --git a/maps/Route27.asm b/maps/Route27.asm
  12994. index d8403e9..3a3d871 100644
  12995. --- a/maps/Route27.asm
  12996. +++ b/maps/Route27.asm
  12997. @@ -479,12 +479,12 @@ Route27_MapEventHeader:
  12998.  
  12999.  .PersonEvents:
  13000.     db 9
  13001. -   person_event SPRITE_COOLTRAINER_M, 7 + 4, 48 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermBlake, -1
  13002. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 58 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainermBrian, -1
  13003. -   person_event SPRITE_COOLTRAINER_F, 10 + 4, 72 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainerfReena, -1
  13004. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 37 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfMegan, -1
  13005. -   person_event SPRITE_YOUNGSTER, 7 + 4, 65 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicGilbert, -1
  13006. -   person_event SPRITE_YOUNGSTER, 13 + 4, 58 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperJose2, -1
  13007. -   person_event SPRITE_POKE_BALL, 12 + 4, 60 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a0a62, EVENT_ROUTE_27_TM_SOLARBEAM
  13008. -   person_event SPRITE_POKE_BALL, 12 + 4, 53 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a0a64, EVENT_ROUTE_27_RARE_CANDY
  13009. -   person_event SPRITE_FISHER, 10 + 4, 21 + 4, $3, 0, 0, -1, -1, 0, 0, 3, FisherScript_0x1a089c, -1
  13010. +   person_event SPRITE_COOLTRAINER_M, 7, 48, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermBlake, -1
  13011. +   person_event SPRITE_COOLTRAINER_M, 6, 58, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainermBrian, -1
  13012. +   person_event SPRITE_COOLTRAINER_F, 10, 72, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerCooltrainerfReena, -1
  13013. +   person_event SPRITE_COOLTRAINER_F, 6, 37, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfMegan, -1
  13014. +   person_event SPRITE_YOUNGSTER, 7, 65, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicGilbert, -1
  13015. +   person_event SPRITE_YOUNGSTER, 13, 58, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperJose2, -1
  13016. +   person_event SPRITE_POKE_BALL, 12, 60, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a0a62, EVENT_ROUTE_27_TM_SOLARBEAM
  13017. +   person_event SPRITE_POKE_BALL, 12, 53, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a0a64, EVENT_ROUTE_27_RARE_CANDY
  13018. +   person_event SPRITE_FISHER, 10, 21, $3, 0, 0, -1, -1, 0, 0, 3, FisherScript_0x1a089c, -1
  13019. diff --git a/maps/Route27SandstormHouse.asm b/maps/Route27SandstormHouse.asm
  13020. index 21939f4..9737ae9 100644
  13021. --- a/maps/Route27SandstormHouse.asm
  13022. +++ b/maps/Route27SandstormHouse.asm
  13023. @@ -109,4 +109,4 @@ Route27SandstormHouse_MapEventHeader:
  13024.  
  13025.  .PersonEvents:
  13026.     db 1
  13027. -   person_event SPRITE_GRANNY, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SandstormHouseWoman, -1
  13028. +   person_event SPRITE_GRANNY, 4, 2, $6, 0, 0, -1, -1, 0, 0, 0, SandstormHouseWoman, -1
  13029. diff --git a/maps/Route28FamousSpeechHouse.asm b/maps/Route28FamousSpeechHouse.asm
  13030. index a7f1721..a0f474b 100644
  13031. --- a/maps/Route28FamousSpeechHouse.asm
  13032. +++ b/maps/Route28FamousSpeechHouse.asm
  13033. @@ -87,5 +87,5 @@ Route28FamousSpeechHouse_MapEventHeader:
  13034.  
  13035.  .PersonEvents:
  13036.     db 2
  13037. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Celebrity, -1
  13038. -   person_event SPRITE_MOLTRES, 5 + 4, 6 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CelebritysFearow, -1
  13039. +   person_event SPRITE_COOLTRAINER_F, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Celebrity, -1
  13040. +   person_event SPRITE_MOLTRES, 5, 6, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CelebritysFearow, -1
  13041. diff --git a/maps/Route29.asm b/maps/Route29.asm
  13042. index 2ac7065..0fa4f76 100644
  13043. --- a/maps/Route29.asm
  13044. +++ b/maps/Route29.asm
  13045. @@ -430,11 +430,11 @@ Route29_MapEventHeader:
  13046.  
  13047.  .PersonEvents:
  13048.     db 8
  13049. -   person_event SPRITE_COOLTRAINER_M, 12 + 4, 50 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x1a0ff1, -1
  13050. -   person_event SPRITE_YOUNGSTER, 16 + 4, 27 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a1028, -1
  13051. -   person_event SPRITE_TEACHER, 11 + 4, 15 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a102b, -1
  13052. -   person_event SPRITE_FRUIT_TREE, 2 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a1089, -1
  13053. -   person_event SPRITE_FISHER, 3 + 4, 25 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x1a102e, -1
  13054. -   person_event SPRITE_COOLTRAINER_M, 4 + 4, 13 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x1a1031, -1
  13055. -   person_event SPRITE_TEACHER, 12 + 4, 29 + 4, $3, 0, 0, -1, -1, 0, 0, 0, TuscanyScript, EVENT_ROUTE_29_TUSCANY_OF_TUESDAY
  13056. -   person_event SPRITE_POKE_BALL, 2 + 4, 48 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a108b, EVENT_ROUTE_29_POTION
  13057. +   person_event SPRITE_COOLTRAINER_M, 12, 50, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x1a0ff1, -1
  13058. +   person_event SPRITE_YOUNGSTER, 16, 27, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a1028, -1
  13059. +   person_event SPRITE_TEACHER, 11, 15, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x1a102b, -1
  13060. +   person_event SPRITE_FRUIT_TREE, 2, 12, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a1089, -1
  13061. +   person_event SPRITE_FISHER, 3, 25, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x1a102e, -1
  13062. +   person_event SPRITE_COOLTRAINER_M, 4, 13, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x1a1031, -1
  13063. +   person_event SPRITE_TEACHER, 12, 29, $3, 0, 0, -1, -1, 0, 0, 0, TuscanyScript, EVENT_ROUTE_29_TUSCANY_OF_TUESDAY
  13064. +   person_event SPRITE_POKE_BALL, 2, 48, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a108b, EVENT_ROUTE_29_POTION
  13065. diff --git a/maps/Route2946Gate.asm b/maps/Route2946Gate.asm
  13066. index 651ddc4..513e8f2 100644
  13067. --- a/maps/Route2946Gate.asm
  13068. +++ b/maps/Route2946Gate.asm
  13069. @@ -51,5 +51,5 @@ Route2946Gate_MapEventHeader:
  13070.  
  13071.  .PersonEvents:
  13072.     db 2
  13073. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x7b5bb, -1
  13074. -   person_event SPRITE_YOUNGSTER, 4 + 4, 6 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x7b5be, -1
  13075. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x7b5bb, -1
  13076. +   person_event SPRITE_YOUNGSTER, 4, 6, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x7b5be, -1
  13077. diff --git a/maps/Route2Gate.asm b/maps/Route2Gate.asm
  13078. index dc2cb4d..a49673d 100644
  13079. --- a/maps/Route2Gate.asm
  13080. +++ b/maps/Route2Gate.asm
  13081. @@ -41,4 +41,4 @@ Route2Gate_MapEventHeader:
  13082.  
  13083.  .PersonEvents:
  13084.     db 1
  13085. -   person_event SPRITE_SCIENTIST, 4 + 4, 6 + 4, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x9b952, -1
  13086. +   person_event SPRITE_SCIENTIST, 4, 6, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x9b952, -1
  13087. diff --git a/maps/Route2NuggetSpeechHouse.asm b/maps/Route2NuggetSpeechHouse.asm
  13088. index 8adafbb..8910846 100644
  13089. --- a/maps/Route2NuggetSpeechHouse.asm
  13090. +++ b/maps/Route2NuggetSpeechHouse.asm
  13091. @@ -66,4 +66,4 @@ Route2NuggetSpeechHouse_MapEventHeader:
  13092.  
  13093.  .PersonEvents:
  13094.     db 1
  13095. -   person_event SPRITE_FISHER, 4 + 4, 2 + 4, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x9b847, -1
  13096. +   person_event SPRITE_FISHER, 4, 2, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FisherScript_0x9b847, -1
  13097. diff --git a/maps/Route3.asm b/maps/Route3.asm
  13098. index bb40a0c..8743543 100644
  13099. --- a/maps/Route3.asm
  13100. +++ b/maps/Route3.asm
  13101. @@ -143,7 +143,7 @@ Route3_MapEventHeader:
  13102.  
  13103.  .PersonEvents:
  13104.     db 4
  13105. -   person_event SPRITE_FISHER, 12 + 4, 26 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherOtis, -1
  13106. -   person_event SPRITE_YOUNGSTER, 7 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterWarren, -1
  13107. -   person_event SPRITE_YOUNGSTER, 3 + 4, 16 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerYoungsterJimmy, -1
  13108. -   person_event SPRITE_FISHER, 5 + 4, 49 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerFirebreatherBurt, -1
  13109. +   person_event SPRITE_FISHER, 12, 26, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherOtis, -1
  13110. +   person_event SPRITE_YOUNGSTER, 7, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterWarren, -1
  13111. +   person_event SPRITE_YOUNGSTER, 3, 16, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerYoungsterJimmy, -1
  13112. +   person_event SPRITE_FISHER, 5, 49, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerFirebreatherBurt, -1
  13113. diff --git a/maps/Route30.asm b/maps/Route30.asm
  13114. index c996723..07667a7 100644
  13115. --- a/maps/Route30.asm
  13116. +++ b/maps/Route30.asm
  13117. @@ -416,14 +416,14 @@ Route30_MapEventHeader:
  13118.  
  13119.  .PersonEvents:
  13120.     db 11
  13121. -   person_event SPRITE_YOUNGSTER, 26 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x1a1673, EVENT_ROUTE_30_BATTLE
  13122. -   person_event SPRITE_YOUNGSTER, 28 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterJoey, EVENT_ROUTE_30_YOUNGSTER_JOEY
  13123. -   person_event SPRITE_YOUNGSTER, 23 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerYoungsterMikey, -1
  13124. -   person_event SPRITE_BUG_CATCHER, 7 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherDon, -1
  13125. -   person_event SPRITE_YOUNGSTER, 30 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x1a17d2, -1
  13126. -   person_event SPRITE_MONSTER, 24 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_ROUTE_30_BATTLE
  13127. -   person_event SPRITE_MONSTER, 25 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_ROUTE_30_BATTLE
  13128. -   person_event SPRITE_FRUIT_TREE, 39 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a17f7, -1
  13129. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 11 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a17f9, -1
  13130. -   person_event SPRITE_COOLTRAINER_F, 13 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x1a17e6, -1
  13131. -   person_event SPRITE_POKE_BALL, 35 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a17f5, EVENT_ROUTE_30_ANTIDOTE
  13132. +   person_event SPRITE_YOUNGSTER, 26, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x1a1673, EVENT_ROUTE_30_BATTLE
  13133. +   person_event SPRITE_YOUNGSTER, 28, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterJoey, EVENT_ROUTE_30_YOUNGSTER_JOEY
  13134. +   person_event SPRITE_YOUNGSTER, 23, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerYoungsterMikey, -1
  13135. +   person_event SPRITE_BUG_CATCHER, 7, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherDon, -1
  13136. +   person_event SPRITE_YOUNGSTER, 30, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x1a17d2, -1
  13137. +   person_event SPRITE_MONSTER, 24, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_ROUTE_30_BATTLE
  13138. +   person_event SPRITE_MONSTER, 25, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_ROUTE_30_BATTLE
  13139. +   person_event SPRITE_FRUIT_TREE, 39, 5, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a17f7, -1
  13140. +   person_event SPRITE_FRUIT_TREE, 5, 11, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a17f9, -1
  13141. +   person_event SPRITE_COOLTRAINER_F, 13, 2, $6, 0, 0, -1, -1, 0, 0, 0, CooltrainerFScript_0x1a17e6, -1
  13142. +   person_event SPRITE_POKE_BALL, 35, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a17f5, EVENT_ROUTE_30_ANTIDOTE
  13143. diff --git a/maps/Route30BerrySpeechHouse.asm b/maps/Route30BerrySpeechHouse.asm
  13144. index a8a09fd..3590efc 100644
  13145. --- a/maps/Route30BerrySpeechHouse.asm
  13146. +++ b/maps/Route30BerrySpeechHouse.asm
  13147. @@ -62,4 +62,4 @@ Route30BerrySpeechHouse_MapEventHeader:
  13148.  
  13149.  .PersonEvents:
  13150.     db 1
  13151. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x196d64, -1
  13152. +   person_event SPRITE_POKEFAN_M, 3, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x196d64, -1
  13153. diff --git a/maps/Route31.asm b/maps/Route31.asm
  13154. index a3c775c..8328591 100644
  13155. --- a/maps/Route31.asm
  13156. +++ b/maps/Route31.asm
  13157. @@ -15,7 +15,7 @@ UnknownScript_0x1a543c:
  13158.     return
  13159.  
  13160.  UnknownScript_0x1a5443:
  13161. -   specialphonecall MOMCALL_WORRIED
  13162. +   specialphonecall SPECIALCALL_WORRIED
  13163.     return
  13164.  
  13165.  TrainerBug_catcherWade1:
  13166. @@ -430,10 +430,10 @@ Route31_MapEventHeader:
  13167.  
  13168.  .PersonEvents:
  13169.     db 7
  13170. -   person_event SPRITE_FISHER, 7 + 4, 17 + 4, $6, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1a5570, -1
  13171. -   person_event SPRITE_YOUNGSTER, 5 + 4, 9 + 4, $2, 1, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1a55ed, -1
  13172. -   person_event SPRITE_BUG_CATCHER, 13 + 4, 21 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 5, TrainerBug_catcherWade1, -1
  13173. -   person_event SPRITE_COOLTRAINER_M, 8 + 4, 33 + 4, $2, 1, 1, -1, -1, 0, 0, 0, CooltrainerMScript_0x1a55f6, -1
  13174. -   person_event SPRITE_FRUIT_TREE, 7 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a55f9, -1
  13175. -   person_event SPRITE_POKE_BALL, 5 + 4, 29 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a55fb, EVENT_ROUTE_31_POTION
  13176. -   person_event SPRITE_POKE_BALL, 15 + 4, 19 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a55fd, EVENT_ROUTE_31_POKE_BALL
  13177. +   person_event SPRITE_FISHER, 7, 17, $6, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1a5570, -1
  13178. +   person_event SPRITE_YOUNGSTER, 5, 9, $2, 1, 1, -1, -1, 0, 0, 0, YoungsterScript_0x1a55ed, -1
  13179. +   person_event SPRITE_BUG_CATCHER, 13, 21, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 5, TrainerBug_catcherWade1, -1
  13180. +   person_event SPRITE_COOLTRAINER_M, 8, 33, $2, 1, 1, -1, -1, 0, 0, 0, CooltrainerMScript_0x1a55f6, -1
  13181. +   person_event SPRITE_FRUIT_TREE, 7, 16, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a55f9, -1
  13182. +   person_event SPRITE_POKE_BALL, 5, 29, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a55fb, EVENT_ROUTE_31_POTION
  13183. +   person_event SPRITE_POKE_BALL, 15, 19, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a55fd, EVENT_ROUTE_31_POKE_BALL
  13184. diff --git a/maps/Route31VioletGate.asm b/maps/Route31VioletGate.asm
  13185. index 88a645c..83fd9ed 100644
  13186. --- a/maps/Route31VioletGate.asm
  13187. +++ b/maps/Route31VioletGate.asm
  13188. @@ -42,5 +42,5 @@ Route31VioletGate_MapEventHeader:
  13189.  
  13190.  .PersonEvents:
  13191.     db 2
  13192. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x197634, -1
  13193. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerFScript_0x197637, -1
  13194. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x197634, -1
  13195. +   person_event SPRITE_COOLTRAINER_F, 2, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerFScript_0x197637, -1
  13196. diff --git a/maps/Route32.asm b/maps/Route32.asm
  13197. index 9ccdbff..9b4bfe5 100644
  13198. --- a/maps/Route32.asm
  13199. +++ b/maps/Route32.asm
  13200. @@ -946,17 +946,17 @@ Route32_MapEventHeader:
  13201.  
  13202.  .PersonEvents:
  13203.     db 14
  13204. -   person_event SPRITE_FISHER, 49 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherJustin, -1
  13205. -   person_event SPRITE_FISHER, 56 + 4, 12 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherRalph1, -1
  13206. -   person_event SPRITE_FISHER, 48 + 4, 6 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherHenry, -1
  13207. -   person_event SPRITE_YOUNGSTER, 22 + 4, 12 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterAlbert, -1
  13208. -   person_event SPRITE_YOUNGSTER, 63 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterGordon, -1
  13209. -   person_event SPRITE_YOUNGSTER, 45 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperRoland, -1
  13210. -   person_event SPRITE_LASS, 30 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerLiz1, -1
  13211. -   person_event SPRITE_COOLTRAINER_M, 8 + 4, 19 + 4, $8, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x19046f, -1
  13212. -   person_event SPRITE_YOUNGSTER, 82 + 4, 11 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperPeter, -1
  13213. -   person_event SPRITE_FISHER, 70 + 4, 7 + 4, $6, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1904f2, EVENT_SLOWPOKE_WELL_ROCKETS
  13214. -   person_event SPRITE_POKE_BALL, 53 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x190773, EVENT_ROUTE_32_GREAT_BALL
  13215. -   person_event SPRITE_FISHER, 13 + 4, 15 + 4, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1904ce, -1
  13216. -   person_event SPRITE_LASS, 67 + 4, 12 + 4, $8, 0, 0, -1, -1, 0, 0, 0, FriedaScript, EVENT_ROUTE_32_FRIEDA_OF_FRIDAY
  13217. -   person_event SPRITE_POKE_BALL, 30 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x190775, EVENT_ROUTE_32_REPEL
  13218. +   person_event SPRITE_FISHER, 49, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherJustin, -1
  13219. +   person_event SPRITE_FISHER, 56, 12, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerFisherRalph1, -1
  13220. +   person_event SPRITE_FISHER, 48, 6, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherHenry, -1
  13221. +   person_event SPRITE_YOUNGSTER, 22, 12, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterAlbert, -1
  13222. +   person_event SPRITE_YOUNGSTER, 63, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterGordon, -1
  13223. +   person_event SPRITE_YOUNGSTER, 45, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperRoland, -1
  13224. +   person_event SPRITE_LASS, 30, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerLiz1, -1
  13225. +   person_event SPRITE_COOLTRAINER_M, 8, 19, $8, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x19046f, -1
  13226. +   person_event SPRITE_YOUNGSTER, 82, 11, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperPeter, -1
  13227. +   person_event SPRITE_FISHER, 70, 7, $6, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1904f2, EVENT_SLOWPOKE_WELL_ROCKETS
  13228. +   person_event SPRITE_POKE_BALL, 53, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x190773, EVENT_ROUTE_32_GREAT_BALL
  13229. +   person_event SPRITE_FISHER, 13, 15, $9, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1904ce, -1
  13230. +   person_event SPRITE_LASS, 67, 12, $8, 0, 0, -1, -1, 0, 0, 0, FriedaScript, EVENT_ROUTE_32_FRIEDA_OF_FRIDAY
  13231. +   person_event SPRITE_POKE_BALL, 30, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x190775, EVENT_ROUTE_32_REPEL
  13232. diff --git a/maps/Route32PokeCenter1F.asm b/maps/Route32PokeCenter1F.asm
  13233. index 77711ff..2ef9c76 100644
  13234. --- a/maps/Route32PokeCenter1F.asm
  13235. +++ b/maps/Route32PokeCenter1F.asm
  13236. @@ -107,6 +107,6 @@ Route32PokeCenter1F_MapEventHeader:
  13237.  
  13238.  .PersonEvents:
  13239.     db 3
  13240. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x69b52, -1
  13241. -   person_event SPRITE_FISHING_GURU, 4 + 4, 1 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x69b55, -1
  13242. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x69b80, -1
  13243. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x69b52, -1
  13244. +   person_event SPRITE_FISHING_GURU, 4, 1, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingGuruScript_0x69b55, -1
  13245. +   person_event SPRITE_COOLTRAINER_F, 2, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x69b80, -1
  13246. diff --git a/maps/Route32RuinsofAlphGate.asm b/maps/Route32RuinsofAlphGate.asm
  13247. index be853d6..2c48582 100644
  13248. --- a/maps/Route32RuinsofAlphGate.asm
  13249. +++ b/maps/Route32RuinsofAlphGate.asm
  13250. @@ -60,6 +60,6 @@ Route32RuinsofAlphGate_MapEventHeader:
  13251.  
  13252.  .PersonEvents:
  13253.     db 3
  13254. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x69a2d, -1
  13255. -   person_event SPRITE_POKEFAN_M, 2 + 4, 8 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x69a30, -1
  13256. -   person_event SPRITE_YOUNGSTER, 6 + 4, 1 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x69a33, -1
  13257. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x69a2d, -1
  13258. +   person_event SPRITE_POKEFAN_M, 2, 8, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x69a30, -1
  13259. +   person_event SPRITE_YOUNGSTER, 6, 1, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x69a33, -1
  13260. diff --git a/maps/Route33.asm b/maps/Route33.asm
  13261. index 1fae7de..e24e1a3 100644
  13262. --- a/maps/Route33.asm
  13263. +++ b/maps/Route33.asm
  13264. @@ -206,6 +206,6 @@ Route33_MapEventHeader:
  13265.  
  13266.  .PersonEvents:
  13267.     db 3
  13268. -   person_event SPRITE_POKEFAN_M, 13 + 4, 6 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerAnthony, -1
  13269. -   person_event SPRITE_LASS, 16 + 4, 13 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x1ac002, -1
  13270. -   person_event SPRITE_FRUIT_TREE, 16 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac0ea, -1
  13271. +   person_event SPRITE_POKEFAN_M, 13, 6, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerAnthony, -1
  13272. +   person_event SPRITE_LASS, 16, 13, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x1ac002, -1
  13273. +   person_event SPRITE_FRUIT_TREE, 16, 14, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1ac0ea, -1
  13274. diff --git a/maps/Route34.asm b/maps/Route34.asm
  13275. index 092acfa..7a9bae1 100644
  13276. --- a/maps/Route34.asm
  13277. +++ b/maps/Route34.asm
  13278. @@ -775,16 +775,16 @@ Route34_MapEventHeader:
  13279.  
  13280.  .PersonEvents:
  13281.     db 13
  13282. -   person_event SPRITE_YOUNGSTER, 7 + 4, 13 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerCamperTodd1, -1
  13283. -   person_event SPRITE_YOUNGSTER, 32 + 4, 15 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterSamuel, -1
  13284. -   person_event SPRITE_YOUNGSTER, 20 + 4, 11 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterIan, -1
  13285. -   person_event SPRITE_LASS, 26 + 4, 10 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerGina1, -1
  13286. -   person_event SPRITE_OFFICER, 11 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7824c, -1
  13287. -   person_event SPRITE_POKEFAN_M, 28 + 4, 18 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmBrandon, -1
  13288. -   person_event SPRITE_GRAMPS, 16 + 4, 15 + 4, $6, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x7803d, EVENT_DAYCARE_MAN_ON_ROUTE_34
  13289. -   person_event SPRITE_DAYCARE_MON_1, 18 + 4, 14 + 4, $16, 2, 2, -1, -1, 0, 0, 0, DaycareMon1Script_0x78065, EVENT_DAYCARE_MON_1
  13290. -   person_event SPRITE_DAYCARE_MON_2, 19 + 4, 17 + 4, $16, 2, 2, -1, -1, 0, 0, 0, DaycareMon2Script_0x7806b, EVENT_DAYCARE_MON_2
  13291. -   person_event SPRITE_COOLTRAINER_F, 48 + 4, 11 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainerfIrene, -1
  13292. -   person_event SPRITE_COOLTRAINER_F, 48 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfJenn, -1
  13293. -   person_event SPRITE_COOLTRAINER_F, 51 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfKate, -1
  13294. -   person_event SPRITE_POKE_BALL, 30 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7832b, EVENT_ROUTE_34_NUGGET
  13295. +   person_event SPRITE_YOUNGSTER, 7, 13, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerCamperTodd1, -1
  13296. +   person_event SPRITE_YOUNGSTER, 32, 15, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterSamuel, -1
  13297. +   person_event SPRITE_YOUNGSTER, 20, 11, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerYoungsterIan, -1
  13298. +   person_event SPRITE_LASS, 26, 10, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerGina1, -1
  13299. +   person_event SPRITE_OFFICER, 11, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7824c, -1
  13300. +   person_event SPRITE_POKEFAN_M, 28, 18, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerPokefanmBrandon, -1
  13301. +   person_event SPRITE_GRAMPS, 16, 15, $6, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x7803d, EVENT_DAYCARE_MAN_ON_ROUTE_34
  13302. +   person_event SPRITE_DAYCARE_MON_1, 18, 14, $16, 2, 2, -1, -1, 0, 0, 0, DaycareMon1Script_0x78065, EVENT_DAYCARE_MON_1
  13303. +   person_event SPRITE_DAYCARE_MON_2, 19, 17, $16, 2, 2, -1, -1, 0, 0, 0, DaycareMon2Script_0x7806b, EVENT_DAYCARE_MON_2
  13304. +   person_event SPRITE_COOLTRAINER_F, 48, 11, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainerfIrene, -1
  13305. +   person_event SPRITE_COOLTRAINER_F, 48, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfJenn, -1
  13306. +   person_event SPRITE_COOLTRAINER_F, 51, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerCooltrainerfKate, -1
  13307. +   person_event SPRITE_POKE_BALL, 30, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7832b, EVENT_ROUTE_34_NUGGET
  13308. diff --git a/maps/Route34IlexForestGate.asm b/maps/Route34IlexForestGate.asm
  13309. index fe1e420..6f6cdd7 100644
  13310. --- a/maps/Route34IlexForestGate.asm
  13311. +++ b/maps/Route34IlexForestGate.asm
  13312. @@ -152,7 +152,7 @@ Route34IlexForestGate_MapEventHeader:
  13313.  
  13314.  .PersonEvents:
  13315.     db 4
  13316. -   person_event SPRITE_TEACHER, 3 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x62d63, EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_BEHIND_COUNTER
  13317. -   person_event SPRITE_BUTTERFREE, 4 + 4, 9 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ButterfreeScript_0x62d8a, -1
  13318. -   person_event SPRITE_LASS, 4 + 4, 3 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x62d94, EVENT_ROUTE_34_ILEX_FOREST_GATE_LASS
  13319. -   person_event SPRITE_TEACHER, 7 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x62d63, EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_IN_WALKWAY
  13320. +   person_event SPRITE_TEACHER, 3, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x62d63, EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_BEHIND_COUNTER
  13321. +   person_event SPRITE_BUTTERFREE, 4, 9, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ButterfreeScript_0x62d8a, -1
  13322. +   person_event SPRITE_LASS, 4, 3, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x62d94, EVENT_ROUTE_34_ILEX_FOREST_GATE_LASS
  13323. +   person_event SPRITE_TEACHER, 7, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x62d63, EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_IN_WALKWAY
  13324. diff --git a/maps/Route35.asm b/maps/Route35.asm
  13325. index 9bce466..6d2c677 100644
  13326. --- a/maps/Route35.asm
  13327. +++ b/maps/Route35.asm
  13328. @@ -469,14 +469,14 @@ Route35_MapEventHeader:
  13329.  
  13330.  .PersonEvents:
  13331.     db 11
  13332. -   person_event SPRITE_YOUNGSTER, 19 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperIvan, -1
  13333. -   person_event SPRITE_YOUNGSTER, 20 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperElliot, -1
  13334. -   person_event SPRITE_LASS, 20 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerBrooke, -1
  13335. -   person_event SPRITE_LASS, 26 + 4, 10 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerKim, -1
  13336. -   person_event SPRITE_YOUNGSTER, 28 + 4, 14 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerBird_keeperBryan, -1
  13337. -   person_event SPRITE_FISHER, 10 + 4, 2 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherWalt, -1
  13338. -   person_event SPRITE_BUG_CATCHER, 7 + 4, 16 + 4, $6, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherArnie1, -1
  13339. -   person_event SPRITE_SUPER_NERD, 10 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerJugglerIrwin, -1
  13340. -   person_event SPRITE_OFFICER, 6 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x19ca49, -1
  13341. -   person_event SPRITE_FRUIT_TREE, 25 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19ca7e, -1
  13342. -   person_event SPRITE_POKE_BALL, 16 + 4, 13 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19ca7c, EVENT_ROUTE_35_TM_ROLLOUT
  13343. +   person_event SPRITE_YOUNGSTER, 19, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperIvan, -1
  13344. +   person_event SPRITE_YOUNGSTER, 20, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperElliot, -1
  13345. +   person_event SPRITE_LASS, 20, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerBrooke, -1
  13346. +   person_event SPRITE_LASS, 26, 10, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerKim, -1
  13347. +   person_event SPRITE_YOUNGSTER, 28, 14, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerBird_keeperBryan, -1
  13348. +   person_event SPRITE_FISHER, 10, 2, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 2, TrainerFirebreatherWalt, -1
  13349. +   person_event SPRITE_BUG_CATCHER, 7, 16, $6, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerBug_catcherArnie1, -1
  13350. +   person_event SPRITE_SUPER_NERD, 10, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerJugglerIrwin, -1
  13351. +   person_event SPRITE_OFFICER, 6, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x19ca49, -1
  13352. +   person_event SPRITE_FRUIT_TREE, 25, 2, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19ca7e, -1
  13353. +   person_event SPRITE_POKE_BALL, 16, 13, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19ca7c, EVENT_ROUTE_35_TM_ROLLOUT
  13354. diff --git a/maps/Route35Goldenrodgate.asm b/maps/Route35Goldenrodgate.asm
  13355. index 2fba562..5a0c370 100644
  13356. --- a/maps/Route35Goldenrodgate.asm
  13357. +++ b/maps/Route35Goldenrodgate.asm
  13358. @@ -209,6 +209,6 @@ Route35Goldenrodgate_MapEventHeader:
  13359.  
  13360.  .PersonEvents:
  13361.     db 3
  13362. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x69d37, -1
  13363. -   person_event SPRITE_POKEFAN_F, 4 + 4, 6 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x69dc6, -1
  13364. -   person_event SPRITE_FISHER, 2 + 4, 3 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x69dda, -1
  13365. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x69d37, -1
  13366. +   person_event SPRITE_POKEFAN_F, 4, 6, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanFScript_0x69dc6, -1
  13367. +   person_event SPRITE_FISHER, 2, 3, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x69dda, -1
  13368. diff --git a/maps/Route35NationalParkgate.asm b/maps/Route35NationalParkgate.asm
  13369. index e9056b8..b631517 100644
  13370. --- a/maps/Route35NationalParkgate.asm
  13371. +++ b/maps/Route35NationalParkgate.asm
  13372. @@ -458,6 +458,6 @@ Route35NationalParkgate_MapEventHeader:
  13373.  
  13374.  .PersonEvents:
  13375.     db 3
  13376. -   person_event SPRITE_OFFICER, 1 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6a204, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
  13377. -   person_event SPRITE_YOUNGSTER, 5 + 4, 6 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6a2d8, EVENT_ROUTE_35_NATIONAL_PARK_GATE_YOUNGSTER
  13378. -   person_event SPRITE_OFFICER, 3 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6a2ca, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
  13379. +   person_event SPRITE_OFFICER, 1, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6a204, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
  13380. +   person_event SPRITE_YOUNGSTER, 5, 6, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6a2d8, EVENT_ROUTE_35_NATIONAL_PARK_GATE_YOUNGSTER
  13381. +   person_event SPRITE_OFFICER, 3, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6a2ca, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
  13382. diff --git a/maps/Route36.asm b/maps/Route36.asm
  13383. index 2947a45..ee24cb6 100644
  13384. --- a/maps/Route36.asm
  13385. +++ b/maps/Route36.asm
  13386. @@ -679,12 +679,12 @@ Route36_MapEventHeader:
  13387.  
  13388.  .PersonEvents:
  13389.     db 9
  13390. -   person_event SPRITE_YOUNGSTER, 13 + 4, 20 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicMark, -1
  13391. -   person_event SPRITE_YOUNGSTER, 14 + 4, 31 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSchoolboyAlan1, -1
  13392. -   person_event SPRITE_WEIRD_TREE, 9 + 4, 35 + 4, $17, 0, 0, -1, -1, 0, 0, 0, WeirdTreeScript_0x19403c, EVENT_ROUTE_36_SUDOWOODO
  13393. -   person_event SPRITE_LASS, 8 + 4, 51 + 4, $5, 0, 2, -1, -1, 0, 0, 0, LassScript_0x1940e0, -1
  13394. -   person_event SPRITE_FISHER, 9 + 4, 44 + 4, $8, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1940b9, -1
  13395. -   person_event SPRITE_FRUIT_TREE, 4 + 4, 21 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x194247, -1
  13396. -   person_event SPRITE_YOUNGSTER, 6 + 4, 46 + 4, $2, 1, 1, -1, -1, 0, 0, 0, ArthurScript, EVENT_ROUTE_36_ARTHUR_OF_THURSDAY
  13397. -   person_event SPRITE_LASS, 12 + 4, 33 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x19408c, EVENT_FLORIA_AT_SUDOWOODO
  13398. -   person_event SPRITE_SUICUNE, 6 + 4, 21 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_36
  13399. +   person_event SPRITE_YOUNGSTER, 13, 20, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicMark, -1
  13400. +   person_event SPRITE_YOUNGSTER, 14, 31, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSchoolboyAlan1, -1
  13401. +   person_event SPRITE_WEIRD_TREE, 9, 35, $17, 0, 0, -1, -1, 0, 0, 0, WeirdTreeScript_0x19403c, EVENT_ROUTE_36_SUDOWOODO
  13402. +   person_event SPRITE_LASS, 8, 51, $5, 0, 2, -1, -1, 0, 0, 0, LassScript_0x1940e0, -1
  13403. +   person_event SPRITE_FISHER, 9, 44, $8, 0, 0, -1, -1, 0, 0, 0, FisherScript_0x1940b9, -1
  13404. +   person_event SPRITE_FRUIT_TREE, 4, 21, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x194247, -1
  13405. +   person_event SPRITE_YOUNGSTER, 6, 46, $2, 1, 1, -1, -1, 0, 0, 0, ArthurScript, EVENT_ROUTE_36_ARTHUR_OF_THURSDAY
  13406. +   person_event SPRITE_LASS, 12, 33, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x19408c, EVENT_FLORIA_AT_SUDOWOODO
  13407. +   person_event SPRITE_SUICUNE, 6, 21, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_36
  13408. diff --git a/maps/Route36NationalParkgate.asm b/maps/Route36NationalParkgate.asm
  13409. index 2d3e219..a157e00 100644
  13410. --- a/maps/Route36NationalParkgate.asm
  13411. +++ b/maps/Route36NationalParkgate.asm
  13412. @@ -862,15 +862,15 @@ Route36NationalParkgate_MapEventHeader:
  13413.  
  13414.  .PersonEvents:
  13415.     db 12
  13416. -   person_event SPRITE_OFFICER, 3 + 4, 0 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Route36OfficerScriptContest, EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
  13417. -   person_event SPRITE_YOUNGSTER, 5 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad06, EVENT_BUG_CATCHING_CONTESTANT_1B
  13418. -   person_event SPRITE_YOUNGSTER, 5 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ad1a, EVENT_BUG_CATCHING_CONTESTANT_2B
  13419. -   person_event SPRITE_ROCKER, 6 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RockerScript_0x6ad2e, EVENT_BUG_CATCHING_CONTESTANT_3B
  13420. -   person_event SPRITE_POKEFAN_M, 5 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x6ad42, EVENT_BUG_CATCHING_CONTESTANT_4B
  13421. -   person_event SPRITE_YOUNGSTER, 7 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad56, EVENT_BUG_CATCHING_CONTESTANT_5B
  13422. -   person_event SPRITE_YOUNGSTER, 6 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ad6a, EVENT_BUG_CATCHING_CONTESTANT_6B
  13423. -   person_event SPRITE_LASS, 6 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x6ad7e, EVENT_BUG_CATCHING_CONTESTANT_7B
  13424. -   person_event SPRITE_YOUNGSTER, 7 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad92, EVENT_BUG_CATCHING_CONTESTANT_8B
  13425. -   person_event SPRITE_YOUNGSTER, 7 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ada6, EVENT_BUG_CATCHING_CONTESTANT_9B
  13426. -   person_event SPRITE_YOUNGSTER, 6 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x6adba, EVENT_BUG_CATCHING_CONTESTANT_10B
  13427. -   person_event SPRITE_OFFICER, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6acf4, EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
  13428. +   person_event SPRITE_OFFICER, 3, 0, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, Route36OfficerScriptContest, EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
  13429. +   person_event SPRITE_YOUNGSTER, 5, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad06, EVENT_BUG_CATCHING_CONTESTANT_1B
  13430. +   person_event SPRITE_YOUNGSTER, 5, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ad1a, EVENT_BUG_CATCHING_CONTESTANT_2B
  13431. +   person_event SPRITE_ROCKER, 6, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, RockerScript_0x6ad2e, EVENT_BUG_CATCHING_CONTESTANT_3B
  13432. +   person_event SPRITE_POKEFAN_M, 5, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x6ad42, EVENT_BUG_CATCHING_CONTESTANT_4B
  13433. +   person_event SPRITE_YOUNGSTER, 7, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad56, EVENT_BUG_CATCHING_CONTESTANT_5B
  13434. +   person_event SPRITE_YOUNGSTER, 6, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ad6a, EVENT_BUG_CATCHING_CONTESTANT_6B
  13435. +   person_event SPRITE_LASS, 6, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x6ad7e, EVENT_BUG_CATCHING_CONTESTANT_7B
  13436. +   person_event SPRITE_YOUNGSTER, 7, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x6ad92, EVENT_BUG_CATCHING_CONTESTANT_8B
  13437. +   person_event SPRITE_YOUNGSTER, 7, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x6ada6, EVENT_BUG_CATCHING_CONTESTANT_9B
  13438. +   person_event SPRITE_YOUNGSTER, 6, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x6adba, EVENT_BUG_CATCHING_CONTESTANT_10B
  13439. +   person_event SPRITE_OFFICER, 2, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, OfficerScript_0x6acf4, EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
  13440. diff --git a/maps/Route36RuinsofAlphgate.asm b/maps/Route36RuinsofAlphgate.asm
  13441. index a126d45..7d6dbbd 100644
  13442. --- a/maps/Route36RuinsofAlphgate.asm
  13443. +++ b/maps/Route36RuinsofAlphgate.asm
  13444. @@ -49,5 +49,5 @@ Route36RuinsofAlphgate_MapEventHeader:
  13445.  
  13446.  .PersonEvents:
  13447.     db 2
  13448. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x6aa1a, -1
  13449. -   person_event SPRITE_GRAMPS, 5 + 4, 7 + 4, $2, 2, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x6aa1d, -1
  13450. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x6aa1a, -1
  13451. +   person_event SPRITE_GRAMPS, 5, 7, $2, 2, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x6aa1d, -1
  13452. diff --git a/maps/Route37.asm b/maps/Route37.asm
  13453. index ca8ecaa..a6e49b3 100644
  13454. --- a/maps/Route37.asm
  13455. +++ b/maps/Route37.asm
  13456. @@ -249,10 +249,10 @@ Route37_MapEventHeader:
  13457.  
  13458.  .PersonEvents:
  13459.     db 7
  13460. -   person_event SPRITE_WEIRD_TREE, 12 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAnnandanne1, -1
  13461. -   person_event SPRITE_WEIRD_TREE, 12 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAnnandanne2, -1
  13462. -   person_event SPRITE_YOUNGSTER, 6 + 4, 6 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicGreg, -1
  13463. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 13 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e09, -1
  13464. -   person_event SPRITE_BUG_CATCHER, 8 + 4, 16 + 4, $2, 1, 1, -1, -1, 0, 0, 0, SunnyScript, EVENT_ROUTE_37_SUNNY_OF_SUNDAY
  13465. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e0b, -1
  13466. -   person_event SPRITE_FRUIT_TREE, 7 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e0d, -1
  13467. +   person_event SPRITE_WEIRD_TREE, 12, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAnnandanne1, -1
  13468. +   person_event SPRITE_WEIRD_TREE, 12, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerTwinsAnnandanne2, -1
  13469. +   person_event SPRITE_YOUNGSTER, 6, 6, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicGreg, -1
  13470. +   person_event SPRITE_FRUIT_TREE, 5, 13, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e09, -1
  13471. +   person_event SPRITE_BUG_CATCHER, 8, 16, $2, 1, 1, -1, -1, 0, 0, 0, SunnyScript, EVENT_ROUTE_37_SUNNY_OF_SUNDAY
  13472. +   person_event SPRITE_FRUIT_TREE, 5, 16, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e0b, -1
  13473. +   person_event SPRITE_FRUIT_TREE, 7, 15, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8e0d, -1
  13474. diff --git a/maps/Route38.asm b/maps/Route38.asm
  13475. index dc03ddd..4c6ffa6 100644
  13476. --- a/maps/Route38.asm
  13477. +++ b/maps/Route38.asm
  13478. @@ -482,10 +482,10 @@ Route38_MapEventHeader:
  13479.  
  13480.  .PersonEvents:
  13481.     db 7
  13482. -   person_event SPRITE_STANDING_YOUNGSTER, 1 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyChad1, -1
  13483. -   person_event SPRITE_LASS, 3 + 4, 15 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerLassDana1, -1
  13484. -   person_event SPRITE_STANDING_YOUNGSTER, 15 + 4, 12 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBird_keeperToby, -1
  13485. -   person_event SPRITE_BUENA, 9 + 4, 19 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBeautyValerie, -1
  13486. -   person_event SPRITE_SAILOR, 5 + 4, 24 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerSailorHarry, -1
  13487. -   person_event SPRITE_FRUIT_TREE, 10 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a1f33, -1
  13488. -   person_event SPRITE_BUENA, 8 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBeautyOlivia, -1
  13489. +   person_event SPRITE_STANDING_YOUNGSTER, 1, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerSchoolboyChad1, -1
  13490. +   person_event SPRITE_LASS, 3, 15, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerLassDana1, -1
  13491. +   person_event SPRITE_STANDING_YOUNGSTER, 15, 12, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBird_keeperToby, -1
  13492. +   person_event SPRITE_BUENA, 9, 19, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBeautyValerie, -1
  13493. +   person_event SPRITE_SAILOR, 5, 24, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerSailorHarry, -1
  13494. +   person_event SPRITE_FRUIT_TREE, 10, 12, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a1f33, -1
  13495. +   person_event SPRITE_BUENA, 8, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerBeautyOlivia, -1
  13496. diff --git a/maps/Route38EcruteakGate.asm b/maps/Route38EcruteakGate.asm
  13497. index 927ceec..1be28e2 100644
  13498. --- a/maps/Route38EcruteakGate.asm
  13499. +++ b/maps/Route38EcruteakGate.asm
  13500. @@ -40,4 +40,4 @@ Route38EcruteakGate_MapEventHeader:
  13501.  
  13502.  .PersonEvents:
  13503.     db 1
  13504. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x9cbd7, -1
  13505. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x9cbd7, -1
  13506. diff --git a/maps/Route39.asm b/maps/Route39.asm
  13507. index 9079dc1..2afc322 100644
  13508. --- a/maps/Route39.asm
  13509. +++ b/maps/Route39.asm
  13510. @@ -353,13 +353,13 @@ Route39_MapEventHeader:
  13511.  
  13512.  .PersonEvents:
  13513.     db 10
  13514. -   person_event SPRITE_SAILOR, 29 + 4, 13 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSailorEugene, -1
  13515. -   person_event SPRITE_POKEFAN_M, 22 + 4, 10 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanmDerek1, -1
  13516. -   person_event SPRITE_POKEFAN_F, 19 + 4, 11 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanfRuth, -1
  13517. -   person_event SPRITE_TAUROS, 12 + 4, 3 + 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13518. -   person_event SPRITE_TAUROS, 11 + 4, 6 + 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13519. -   person_event SPRITE_TAUROS, 15 + 4, 4 + 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13520. -   person_event SPRITE_TAUROS, 13 + 4, 8 + 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13521. -   person_event SPRITE_STANDING_YOUNGSTER, 7 + 4, 13 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicNorman, -1
  13522. -   person_event SPRITE_FRUIT_TREE, 3 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a5bf4, -1
  13523. -   person_event SPRITE_POKEFAN_F, 22 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x1a5bbe, -1
  13524. +   person_event SPRITE_SAILOR, 29, 13, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSailorEugene, -1
  13525. +   person_event SPRITE_POKEFAN_M, 22, 10, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanmDerek1, -1
  13526. +   person_event SPRITE_POKEFAN_F, 19, 11, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerPokefanfRuth, -1
  13527. +   person_event SPRITE_TAUROS, 12, 3, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13528. +   person_event SPRITE_TAUROS, 11, 6, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13529. +   person_event SPRITE_TAUROS, 15, 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13530. +   person_event SPRITE_TAUROS, 13, 8, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x1a5af5, -1
  13531. +   person_event SPRITE_STANDING_YOUNGSTER, 7, 13, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 1, TrainerPsychicNorman, -1
  13532. +   person_event SPRITE_FRUIT_TREE, 3, 9, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a5bf4, -1
  13533. +   person_event SPRITE_POKEFAN_F, 22, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanFScript_0x1a5bbe, -1
  13534. diff --git a/maps/Route39Barn.asm b/maps/Route39Barn.asm
  13535. index 5f74384..e2420e1 100644
  13536. --- a/maps/Route39Barn.asm
  13537. +++ b/maps/Route39Barn.asm
  13538. @@ -200,6 +200,6 @@ Route39Barn_MapEventHeader:
  13539.  
  13540.  .PersonEvents:
  13541.     db 3
  13542. -   person_event SPRITE_TWIN, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x9cc76, -1
  13543. -   person_event SPRITE_TWIN, 3 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x9cc90, -1
  13544. -   person_event SPRITE_TAUROS, 3 + 4, 3 + 4, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x9ccaa, -1
  13545. +   person_event SPRITE_TWIN, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, TwinScript_0x9cc76, -1
  13546. +   person_event SPRITE_TWIN, 3, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TwinScript_0x9cc90, -1
  13547. +   person_event SPRITE_TAUROS, 3, 3, $16, 0, 0, -1, -1, 0, 0, 0, TaurosScript_0x9ccaa, -1
  13548. diff --git a/maps/Route39Farmhouse.asm b/maps/Route39Farmhouse.asm
  13549. index 78a57aa..16ad6ca 100644
  13550. --- a/maps/Route39Farmhouse.asm
  13551. +++ b/maps/Route39Farmhouse.asm
  13552. @@ -207,5 +207,5 @@ Route39Farmhouse_MapEventHeader:
  13553.  
  13554.  .PersonEvents:
  13555.     db 2
  13556. -   person_event SPRITE_POKEFAN_M, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanMScript_0x9ceb4, -1
  13557. -   person_event SPRITE_POKEFAN_F, 4 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanFScript_0x9cf0e, -1
  13558. +   person_event SPRITE_POKEFAN_M, 2, 3, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, PokefanMScript_0x9ceb4, -1
  13559. +   person_event SPRITE_POKEFAN_F, 4, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanFScript_0x9cf0e, -1
  13560. diff --git a/maps/Route4.asm b/maps/Route4.asm
  13561. index 93b4ae3..d0d8704 100644
  13562. --- a/maps/Route4.asm
  13563. +++ b/maps/Route4.asm
  13564. @@ -133,7 +133,7 @@ Route4_MapEventHeader:
  13565.  
  13566.  .PersonEvents:
  13567.     db 4
  13568. -   person_event SPRITE_YOUNGSTER, 9 + 4, 17 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperHank, -1
  13569. -   person_event SPRITE_LASS, 8 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerPicnickerHope, -1
  13570. -   person_event SPRITE_LASS, 6 + 4, 21 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerPicnickerSharon, -1
  13571. -   person_event SPRITE_POKE_BALL, 3 + 4, 26 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ae20f, EVENT_ROUTE_4_HP_UP
  13572. +   person_event SPRITE_YOUNGSTER, 9, 17, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperHank, -1
  13573. +   person_event SPRITE_LASS, 8, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerPicnickerHope, -1
  13574. +   person_event SPRITE_LASS, 6, 21, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerPicnickerSharon, -1
  13575. +   person_event SPRITE_POKE_BALL, 3, 26, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1ae20f, EVENT_ROUTE_4_HP_UP
  13576. diff --git a/maps/Route40.asm b/maps/Route40.asm
  13577. index 8756381..09f92f1 100644
  13578. --- a/maps/Route40.asm
  13579. +++ b/maps/Route40.asm
  13580. @@ -344,15 +344,15 @@ Route40_MapEventHeader:
  13581.  
  13582.  .PersonEvents:
  13583.     db 12
  13584. -   person_event SPRITE_OLIVINE_RIVAL, 15 + 4, 14 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerSwimmermSimon, -1
  13585. -   person_event SPRITE_OLIVINE_RIVAL, 30 + 4, 18 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerSwimmermRandall, -1
  13586. -   person_event SPRITE_SWIMMER_GIRL, 19 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerSwimmerfElaine, -1
  13587. -   person_event SPRITE_SWIMMER_GIRL, 25 + 4, 10 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfPaula, -1
  13588. -   person_event SPRITE_ROCK, 11 + 4, 7 + 4, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13589. -   person_event SPRITE_ROCK, 9 + 4, 6 + 4, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13590. -   person_event SPRITE_ROCK, 8 + 4, 7 + 4, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13591. -   person_event SPRITE_LASS, 13 + 4, 11 + 4, $6, 0, 0, -1, -1, 0, 0, 0, LassScript_0x1a61c4, -1
  13592. -   person_event SPRITE_BUENA, 10 + 4, 8 + 4, $3, 0, 0, -1, -1, 0, 0, 0, MonicaScript, EVENT_ROUTE_40_MONICA_OF_MONDAY
  13593. -   person_event SPRITE_POKEFAN_M, 6 + 4, 7 + 4, $9, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x1a61c7, -1
  13594. -   person_event SPRITE_LASS, 4 + 4, 13 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x1a61d3, -1
  13595. -   person_event SPRITE_STANDING_YOUNGSTER, 9 + 4, 16 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, StandingYoungsterScript_0x1a61d6, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  13596. +   person_event SPRITE_OLIVINE_RIVAL, 15, 14, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerSwimmermSimon, -1
  13597. +   person_event SPRITE_OLIVINE_RIVAL, 30, 18, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerSwimmermRandall, -1
  13598. +   person_event SPRITE_SWIMMER_GIRL, 19, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerSwimmerfElaine, -1
  13599. +   person_event SPRITE_SWIMMER_GIRL, 25, 10, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfPaula, -1
  13600. +   person_event SPRITE_ROCK, 11, 7, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13601. +   person_event SPRITE_ROCK, 9, 6, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13602. +   person_event SPRITE_ROCK, 8, 7, $18, 0, 0, -1, -1, 0, 0, 0, Route40Rock, -1
  13603. +   person_event SPRITE_LASS, 13, 11, $6, 0, 0, -1, -1, 0, 0, 0, LassScript_0x1a61c4, -1
  13604. +   person_event SPRITE_BUENA, 10, 8, $3, 0, 0, -1, -1, 0, 0, 0, MonicaScript, EVENT_ROUTE_40_MONICA_OF_MONDAY
  13605. +   person_event SPRITE_POKEFAN_M, 6, 7, $9, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x1a61c7, -1
  13606. +   person_event SPRITE_LASS, 4, 13, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x1a61d3, -1
  13607. +   person_event SPRITE_STANDING_YOUNGSTER, 9, 16, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, StandingYoungsterScript_0x1a61d6, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  13608. diff --git a/maps/Route40BattleTowerGate.asm b/maps/Route40BattleTowerGate.asm
  13609. index 0dde14f..f99b652 100644
  13610. --- a/maps/Route40BattleTowerGate.asm
  13611. +++ b/maps/Route40BattleTowerGate.asm
  13612. @@ -88,5 +88,5 @@ Route40BattleTowerGate_MapEventHeader:
  13613.  
  13614.  .PersonEvents:
  13615.     db 2
  13616. -   person_event SPRITE_ROCKER, 3 + 4, 3 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, RockerScript_0x9f669, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  13617. -   person_event SPRITE_TWIN, 5 + 4, 7 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TwinScript_0x9f66c, -1
  13618. +   person_event SPRITE_ROCKER, 3, 3, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, RockerScript_0x9f669, EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
  13619. +   person_event SPRITE_TWIN, 5, 7, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TwinScript_0x9f66c, -1
  13620. diff --git a/maps/Route41.asm b/maps/Route41.asm
  13621. index f80116b..872fb53 100644
  13622. --- a/maps/Route41.asm
  13623. +++ b/maps/Route41.asm
  13624. @@ -349,13 +349,13 @@ Route41_MapEventHeader:
  13625.  
  13626.  .PersonEvents:
  13627.     db 10
  13628. -   person_event SPRITE_OLIVINE_RIVAL, 6 + 4, 32 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermCharlie, -1
  13629. -   person_event SPRITE_OLIVINE_RIVAL, 8 + 4, 46 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermGeorge, -1
  13630. -   person_event SPRITE_OLIVINE_RIVAL, 26 + 4, 20 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermBerke, -1
  13631. -   person_event SPRITE_OLIVINE_RIVAL, 30 + 4, 32 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermKirk, -1
  13632. -   person_event SPRITE_OLIVINE_RIVAL, 46 + 4, 19 + 4, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermMathew, -1
  13633. -   person_event SPRITE_SWIMMER_GIRL, 4 + 4, 17 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfKaylee, -1
  13634. -   person_event SPRITE_SWIMMER_GIRL, 19 + 4, 23 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfSusie, -1
  13635. -   person_event SPRITE_SWIMMER_GIRL, 34 + 4, 27 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfDenise, -1
  13636. -   person_event SPRITE_SWIMMER_GIRL, 28 + 4, 44 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerSwimmerfKara, -1
  13637. -   person_event SPRITE_SWIMMER_GIRL, 50 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerSwimmerfWendy, -1
  13638. +   person_event SPRITE_OLIVINE_RIVAL, 6, 32, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermCharlie, -1
  13639. +   person_event SPRITE_OLIVINE_RIVAL, 8, 46, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermGeorge, -1
  13640. +   person_event SPRITE_OLIVINE_RIVAL, 26, 20, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermBerke, -1
  13641. +   person_event SPRITE_OLIVINE_RIVAL, 30, 32, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermKirk, -1
  13642. +   person_event SPRITE_OLIVINE_RIVAL, 46, 19, $1e, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerSwimmermMathew, -1
  13643. +   person_event SPRITE_SWIMMER_GIRL, 4, 17, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfKaylee, -1
  13644. +   person_event SPRITE_SWIMMER_GIRL, 19, 23, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfSusie, -1
  13645. +   person_event SPRITE_SWIMMER_GIRL, 34, 27, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerSwimmerfDenise, -1
  13646. +   person_event SPRITE_SWIMMER_GIRL, 28, 44, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerSwimmerfKara, -1
  13647. +   person_event SPRITE_SWIMMER_GIRL, 50, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerSwimmerfWendy, -1
  13648. diff --git a/maps/Route42.asm b/maps/Route42.asm
  13649. index a7c24a4..04a5088 100644
  13650. --- a/maps/Route42.asm
  13651. +++ b/maps/Route42.asm
  13652. @@ -336,12 +336,12 @@ Route42_MapEventHeader:
  13653.  
  13654.  .PersonEvents:
  13655.     db 9
  13656. -   person_event SPRITE_FISHER, 10 + 4, 40 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherTully1, -1
  13657. -   person_event SPRITE_POKEFAN_M, 9 + 4, 51 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerBenjamin, -1
  13658. -   person_event SPRITE_SUPER_NERD, 8 + 4, 47 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacShane, -1
  13659. -   person_event SPRITE_FRUIT_TREE, 16 + 4, 27 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a934d, -1
  13660. -   person_event SPRITE_FRUIT_TREE, 16 + 4, 28 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a934f, -1
  13661. -   person_event SPRITE_FRUIT_TREE, 16 + 4, 29 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a9351, -1
  13662. -   person_event SPRITE_POKE_BALL, 4 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a9349, EVENT_ROUTE_42_ULTRA_BALL
  13663. -   person_event SPRITE_POKE_BALL, 8 + 4, 33 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a934b, EVENT_ROUTE_42_SUPER_POTION
  13664. -   person_event SPRITE_SUICUNE, 16 + 4, 26 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_42
  13665. +   person_event SPRITE_FISHER, 10, 40, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherTully1, -1
  13666. +   person_event SPRITE_POKEFAN_M, 9, 51, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerBenjamin, -1
  13667. +   person_event SPRITE_SUPER_NERD, 8, 47, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacShane, -1
  13668. +   person_event SPRITE_FRUIT_TREE, 16, 27, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a934d, -1
  13669. +   person_event SPRITE_FRUIT_TREE, 16, 28, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a934f, -1
  13670. +   person_event SPRITE_FRUIT_TREE, 16, 29, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a9351, -1
  13671. +   person_event SPRITE_POKE_BALL, 4, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a9349, EVENT_ROUTE_42_ULTRA_BALL
  13672. +   person_event SPRITE_POKE_BALL, 8, 33, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a934b, EVENT_ROUTE_42_SUPER_POTION
  13673. +   person_event SPRITE_SUICUNE, 16, 26, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_42
  13674. diff --git a/maps/Route42EcruteakGate.asm b/maps/Route42EcruteakGate.asm
  13675. index f43fc25..e23810d 100644
  13676. --- a/maps/Route42EcruteakGate.asm
  13677. +++ b/maps/Route42EcruteakGate.asm
  13678. @@ -35,4 +35,4 @@ Route42EcruteakGate_MapEventHeader:
  13679.  
  13680.  .PersonEvents:
  13681.     db 1
  13682. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19a4b5, -1
  13683. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19a4b5, -1
  13684. diff --git a/maps/Route43.asm b/maps/Route43.asm
  13685. index f9d72db..a4fb28f 100644
  13686. --- a/maps/Route43.asm
  13687. +++ b/maps/Route43.asm
  13688. @@ -516,11 +516,11 @@ Route43_MapEventHeader:
  13689.  
  13690.  .PersonEvents:
  13691.     db 8
  13692. -   person_event SPRITE_SUPER_NERD, 5 + 4, 13 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacBen, -1
  13693. -   person_event SPRITE_SUPER_NERD, 20 + 4, 13 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacBrent1, -1
  13694. -   person_event SPRITE_SUPER_NERD, 7 + 4, 14 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacRon, -1
  13695. -   person_event SPRITE_FISHER, 16 + 4, 4 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerFisherMarvin, -1
  13696. -   person_event SPRITE_LASS, 25 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerTiffany3, -1
  13697. -   person_event SPRITE_YOUNGSTER, 40 + 4, 13 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperSpencer, -1
  13698. -   person_event SPRITE_FRUIT_TREE, 26 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19d266, -1
  13699. -   person_event SPRITE_POKE_BALL, 32 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19d268, EVENT_ROUTE_43_MAX_ETHER
  13700. +   person_event SPRITE_SUPER_NERD, 5, 13, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacBen, -1
  13701. +   person_event SPRITE_SUPER_NERD, 20, 13, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacBrent1, -1
  13702. +   person_event SPRITE_SUPER_NERD, 7, 14, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacRon, -1
  13703. +   person_event SPRITE_FISHER, 16, 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 4, TrainerFisherMarvin, -1
  13704. +   person_event SPRITE_LASS, 25, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerTiffany3, -1
  13705. +   person_event SPRITE_YOUNGSTER, 40, 13, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperSpencer, -1
  13706. +   person_event SPRITE_FRUIT_TREE, 26, 1, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19d266, -1
  13707. +   person_event SPRITE_POKE_BALL, 32, 12, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19d268, EVENT_ROUTE_43_MAX_ETHER
  13708. diff --git a/maps/Route43Gate.asm b/maps/Route43Gate.asm
  13709. index e904068..4fe15be 100644
  13710. --- a/maps/Route43Gate.asm
  13711. +++ b/maps/Route43Gate.asm
  13712. @@ -264,6 +264,6 @@ Route43Gate_MapEventHeader:
  13713.  
  13714.  .PersonEvents:
  13715.     db 3
  13716. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19ac85, EVENT_LAKE_OF_RAGE_CIVILIANS
  13717. -   person_event SPRITE_ROCKET, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x19ac82, EVENT_ROUTE_43_GATE_ROCKETS
  13718. -   person_event SPRITE_ROCKET, 4 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x19ac82, EVENT_ROUTE_43_GATE_ROCKETS
  13719. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19ac85, EVENT_LAKE_OF_RAGE_CIVILIANS
  13720. +   person_event SPRITE_ROCKET, 4, 2, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x19ac82, EVENT_ROUTE_43_GATE_ROCKETS
  13721. +   person_event SPRITE_ROCKET, 4, 7, $7, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x19ac82, EVENT_ROUTE_43_GATE_ROCKETS
  13722. diff --git a/maps/Route43MahoganyGate.asm b/maps/Route43MahoganyGate.asm
  13723. index d1282a1..588fa92 100644
  13724. --- a/maps/Route43MahoganyGate.asm
  13725. +++ b/maps/Route43MahoganyGate.asm
  13726. @@ -54,4 +54,4 @@ Route43MahoganyGate_MapEventHeader:
  13727.  
  13728.  .PersonEvents:
  13729.     db 1
  13730. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19ab0b, -1
  13731. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, OfficerScript_0x19ab0b, -1
  13732. diff --git a/maps/Route44.asm b/maps/Route44.asm
  13733. index 7baf601..b2a08a7 100644
  13734. --- a/maps/Route44.asm
  13735. +++ b/maps/Route44.asm
  13736. @@ -513,14 +513,14 @@ Route44_MapEventHeader:
  13737.  
  13738.  .PersonEvents:
  13739.     db 11
  13740. -   person_event SPRITE_FISHER, 3 + 4, 35 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherWilton1, -1
  13741. -   person_event SPRITE_FISHER, 13 + 4, 19 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherEdgar, -1
  13742. -   person_event SPRITE_YOUNGSTER, 9 + 4, 10 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicPhil, -1
  13743. -   person_event SPRITE_SUPER_NERD, 2 + 4, 43 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPokemaniacZach, -1
  13744. -   person_event SPRITE_YOUNGSTER, 5 + 4, 51 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBird_keeperVance1, -1
  13745. -   person_event SPRITE_COOLTRAINER_M, 15 + 4, 41 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainermAllen, -1
  13746. -   person_event SPRITE_COOLTRAINER_F, 14 + 4, 31 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainerfCybil, -1
  13747. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19da40, -1
  13748. -   person_event SPRITE_POKE_BALL, 8 + 4, 30 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da42, EVENT_ROUTE_44_MAX_REVIVE
  13749. -   person_event SPRITE_POKE_BALL, 4 + 4, 45 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da44, EVENT_ROUTE_44_ULTRA_BALL
  13750. -   person_event SPRITE_POKE_BALL, 9 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da46, EVENT_ROUTE_44_MAX_REPEL
  13751. +   person_event SPRITE_FISHER, 3, 35, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherWilton1, -1
  13752. +   person_event SPRITE_FISHER, 13, 19, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerFisherEdgar, -1
  13753. +   person_event SPRITE_YOUNGSTER, 9, 10, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicPhil, -1
  13754. +   person_event SPRITE_SUPER_NERD, 2, 43, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPokemaniacZach, -1
  13755. +   person_event SPRITE_YOUNGSTER, 5, 51, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBird_keeperVance1, -1
  13756. +   person_event SPRITE_COOLTRAINER_M, 15, 41, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainermAllen, -1
  13757. +   person_event SPRITE_COOLTRAINER_F, 14, 31, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerCooltrainerfCybil, -1
  13758. +   person_event SPRITE_FRUIT_TREE, 5, 9, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19da40, -1
  13759. +   person_event SPRITE_POKE_BALL, 8, 30, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da42, EVENT_ROUTE_44_MAX_REVIVE
  13760. +   person_event SPRITE_POKE_BALL, 4, 45, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da44, EVENT_ROUTE_44_ULTRA_BALL
  13761. +   person_event SPRITE_POKE_BALL, 9, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19da46, EVENT_ROUTE_44_MAX_REPEL
  13762. diff --git a/maps/Route45.asm b/maps/Route45.asm
  13763. index c7a03af..19f4312 100644
  13764. --- a/maps/Route45.asm
  13765. +++ b/maps/Route45.asm
  13766. @@ -16,7 +16,7 @@ BlackbeltKenji3Script:
  13767.     iftrue UnknownScript_0x19e0e4
  13768.     checkevent EVENT_KENJI_ASKED_FOR_PHONE_NUMBER
  13769.     iftrue UnknownScript_0x19e0cd
  13770. -   special Function11485
  13771. +   special Special_SampleKenjiBreakCountdown
  13772.     writetext UnknownText_0x19e5e2
  13773.     closetext
  13774.     setevent EVENT_KENJI_ASKED_FOR_PHONE_NUMBER
  13775. @@ -46,7 +46,7 @@ UnknownScript_0x19e0e4:
  13776.     verbosegiveitem PP_UP, 1
  13777.     iffalse UnknownScript_0x19e118
  13778.     clearevent EVENT_KENJI_ON_BREAK
  13779. -   special Function11485
  13780. +   special Special_SampleKenjiBreakCountdown
  13781.     jump UnknownScript_0x19e127
  13782.  
  13783.  UnknownScript_0x19e10c:
  13784. @@ -535,16 +535,16 @@ Route45_MapEventHeader:
  13785.  
  13786.  .PersonEvents:
  13787.     db 13
  13788. -   person_event SPRITE_POKEFAN_M, 16 + 4, 10 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerErik, -1
  13789. -   person_event SPRITE_POKEFAN_M, 65 + 4, 15 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerMichael, -1
  13790. -   person_event SPRITE_POKEFAN_M, 28 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerParry, -1
  13791. -   person_event SPRITE_POKEFAN_M, 65 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerTimothy, -1
  13792. -   person_event SPRITE_BLACK_BELT, 50 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBlackbeltKenji, -1
  13793. -   person_event SPRITE_COOLTRAINER_M, 18 + 4, 17 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermRyan, -1
  13794. -   person_event SPRITE_COOLTRAINER_F, 36 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfKelly, -1
  13795. -   person_event SPRITE_FRUIT_TREE, 82 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19e294, -1
  13796. -   person_event SPRITE_POKE_BALL, 51 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e296, EVENT_ROUTE_45_NUGGET
  13797. -   person_event SPRITE_POKE_BALL, 66 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e298, EVENT_ROUTE_45_REVIVE
  13798. -   person_event SPRITE_POKE_BALL, 20 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e29a, EVENT_ROUTE_45_ELIXER
  13799. -   person_event SPRITE_POKE_BALL, 33 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e29c, EVENT_ROUTE_45_MAX_POTION
  13800. -   person_event SPRITE_YOUNGSTER, 70 + 4, 4 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x19e269, -1
  13801. +   person_event SPRITE_POKEFAN_M, 16, 10, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerErik, -1
  13802. +   person_event SPRITE_POKEFAN_M, 65, 15, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerMichael, -1
  13803. +   person_event SPRITE_POKEFAN_M, 28, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerParry, -1
  13804. +   person_event SPRITE_POKEFAN_M, 65, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerTimothy, -1
  13805. +   person_event SPRITE_BLACK_BELT, 50, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerBlackbeltKenji, -1
  13806. +   person_event SPRITE_COOLTRAINER_M, 18, 17, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainermRyan, -1
  13807. +   person_event SPRITE_COOLTRAINER_F, 36, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfKelly, -1
  13808. +   person_event SPRITE_FRUIT_TREE, 82, 16, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x19e294, -1
  13809. +   person_event SPRITE_POKE_BALL, 51, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e296, EVENT_ROUTE_45_NUGGET
  13810. +   person_event SPRITE_POKE_BALL, 66, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e298, EVENT_ROUTE_45_REVIVE
  13811. +   person_event SPRITE_POKE_BALL, 20, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e29a, EVENT_ROUTE_45_ELIXER
  13812. +   person_event SPRITE_POKE_BALL, 33, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x19e29c, EVENT_ROUTE_45_MAX_POTION
  13813. +   person_event SPRITE_YOUNGSTER, 70, 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x19e269, -1
  13814. diff --git a/maps/Route46.asm b/maps/Route46.asm
  13815. index 0029a5f..bda4cc9 100644
  13816. --- a/maps/Route46.asm
  13817. +++ b/maps/Route46.asm
  13818. @@ -261,9 +261,9 @@ Route46_MapEventHeader:
  13819.  
  13820.  .PersonEvents:
  13821.     db 6
  13822. -   person_event SPRITE_POKEFAN_M, 19 + 4, 12 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerBailey, -1
  13823. -   person_event SPRITE_YOUNGSTER, 14 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperTed, -1
  13824. -   person_event SPRITE_LASS, 13 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerErin1, -1
  13825. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a978f, -1
  13826. -   person_event SPRITE_FRUIT_TREE, 6 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a9791, -1
  13827. -   person_event SPRITE_POKE_BALL, 15 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a978d, EVENT_ROUTE_46_X_SPEED
  13828. +   person_event SPRITE_POKEFAN_M, 19, 12, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerBailey, -1
  13829. +   person_event SPRITE_YOUNGSTER, 14, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerCamperTed, -1
  13830. +   person_event SPRITE_LASS, 13, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerPicnickerErin1, -1
  13831. +   person_event SPRITE_FRUIT_TREE, 5, 7, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a978f, -1
  13832. +   person_event SPRITE_FRUIT_TREE, 6, 8, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a9791, -1
  13833. +   person_event SPRITE_POKE_BALL, 15, 1, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a978d, EVENT_ROUTE_46_X_SPEED
  13834. diff --git a/maps/Route5.asm b/maps/Route5.asm
  13835. index 76856e6..2335dd3 100644
  13836. --- a/maps/Route5.asm
  13837. +++ b/maps/Route5.asm
  13838. @@ -57,4 +57,4 @@ Route5_MapEventHeader:
  13839.  
  13840.  .PersonEvents:
  13841.     db 1
  13842. -   person_event SPRITE_POKEFAN_M, 16 + 4, 17 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1adb19, EVENT_ROUTE_5_6_POKEFAN_M_BLOCKS_UNDERGROUND_PATH
  13843. +   person_event SPRITE_POKEFAN_M, 16, 17, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x1adb19, EVENT_ROUTE_5_6_POKEFAN_M_BLOCKS_UNDERGROUND_PATH
  13844. diff --git a/maps/Route5CleanseTagSpeechHouse.asm b/maps/Route5CleanseTagSpeechHouse.asm
  13845. index 3ca0e10..200e4ec 100644
  13846. --- a/maps/Route5CleanseTagSpeechHouse.asm
  13847. +++ b/maps/Route5CleanseTagSpeechHouse.asm
  13848. @@ -75,5 +75,5 @@ Route5CleanseTagSpeechHouse_MapEventHeader:
  13849.  
  13850.  .PersonEvents:
  13851.     db 2
  13852. -   person_event SPRITE_GRANNY, 5 + 4, 2 + 4, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x18b634, -1
  13853. -   person_event SPRITE_TEACHER, 3 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x18b64f, -1
  13854. +   person_event SPRITE_GRANNY, 5, 2, $1f, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x18b634, -1
  13855. +   person_event SPRITE_TEACHER, 3, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, TeacherScript_0x18b64f, -1
  13856. diff --git a/maps/Route5SaffronCityGate.asm b/maps/Route5SaffronCityGate.asm
  13857. index 19c50a4..ee40d6d 100644
  13858. --- a/maps/Route5SaffronCityGate.asm
  13859. +++ b/maps/Route5SaffronCityGate.asm
  13860. @@ -36,4 +36,4 @@ Route5SaffronCityGate_MapEventHeader:
  13861.  
  13862.  .PersonEvents:
  13863.     db 1
  13864. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x18b5b9, -1
  13865. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x18b5b9, -1
  13866. diff --git a/maps/Route5UndergroundEntrance.asm b/maps/Route5UndergroundEntrance.asm
  13867. index 0e6cd75..5029df0 100644
  13868. --- a/maps/Route5UndergroundEntrance.asm
  13869. +++ b/maps/Route5UndergroundEntrance.asm
  13870. @@ -34,4 +34,4 @@ Route5UndergroundEntrance_MapEventHeader:
  13871.  
  13872.  .PersonEvents:
  13873.     db 1
  13874. -   person_event SPRITE_TEACHER, 2 + 4, 2 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x18b555, -1
  13875. +   person_event SPRITE_TEACHER, 2, 2, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x18b555, -1
  13876. diff --git a/maps/Route6.asm b/maps/Route6.asm
  13877. index db000c2..50b8990 100644
  13878. --- a/maps/Route6.asm
  13879. +++ b/maps/Route6.asm
  13880. @@ -104,6 +104,6 @@ Route6_MapEventHeader:
  13881.  
  13882.  .PersonEvents:
  13883.     db 3
  13884. -   person_event SPRITE_POKEFAN_M, 4 + 4, 17 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 2, PokefanMScript_0x1ad951, EVENT_ROUTE_5_6_POKEFAN_M_BLOCKS_UNDERGROUND_PATH
  13885. -   person_event SPRITE_POKEFAN_M, 12 + 4, 9 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerPokefanmRex, -1
  13886. -   person_event SPRITE_POKEFAN_M, 12 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerPokefanmAllan, -1
  13887. +   person_event SPRITE_POKEFAN_M, 4, 17, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 2, PokefanMScript_0x1ad951, EVENT_ROUTE_5_6_POKEFAN_M_BLOCKS_UNDERGROUND_PATH
  13888. +   person_event SPRITE_POKEFAN_M, 12, 9, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerPokefanmRex, -1
  13889. +   person_event SPRITE_POKEFAN_M, 12, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerPokefanmAllan, -1
  13890. diff --git a/maps/Route6SaffronGate.asm b/maps/Route6SaffronGate.asm
  13891. index 1cee55b..ab457f5 100644
  13892. --- a/maps/Route6SaffronGate.asm
  13893. +++ b/maps/Route6SaffronGate.asm
  13894. @@ -75,4 +75,4 @@ Route6SaffronGate_MapEventHeader:
  13895.  
  13896.  .PersonEvents:
  13897.     db 1
  13898. -   person_event SPRITE_OFFICER, 4 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x1926ea, -1
  13899. +   person_event SPRITE_OFFICER, 4, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x1926ea, -1
  13900. diff --git a/maps/Route7SaffronGate.asm b/maps/Route7SaffronGate.asm
  13901. index 1fa0916..05b09f0 100644
  13902. --- a/maps/Route7SaffronGate.asm
  13903. +++ b/maps/Route7SaffronGate.asm
  13904. @@ -61,4 +61,4 @@ Route7SaffronGate_MapEventHeader:
  13905.  
  13906.  .PersonEvents:
  13907.     db 1
  13908. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x73518, -1
  13909. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x73518, -1
  13910. diff --git a/maps/Route8.asm b/maps/Route8.asm
  13911. index e934f0e..c8dab80 100644
  13912. --- a/maps/Route8.asm
  13913. +++ b/maps/Route8.asm
  13914. @@ -183,9 +183,9 @@ Route8_MapEventHeader:
  13915.  
  13916.  .PersonEvents:
  13917.     db 6
  13918. -   person_event SPRITE_BIKER, 8 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerBikerDwayne, -1
  13919. -   person_event SPRITE_BIKER, 9 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerBikerHarris, -1
  13920. -   person_event SPRITE_BIKER, 10 + 4, 10 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerBikerZeke, -1
  13921. -   person_event SPRITE_SUPER_NERD, 2 + 4, 23 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdSam, -1
  13922. -   person_event SPRITE_SUPER_NERD, 12 + 4, 31 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerSupernerdTom, -1
  13923. -   person_event SPRITE_FRUIT_TREE, 5 + 4, 33 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x6c06c, -1
  13924. +   person_event SPRITE_BIKER, 8, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 5, TrainerBikerDwayne, -1
  13925. +   person_event SPRITE_BIKER, 9, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerBikerHarris, -1
  13926. +   person_event SPRITE_BIKER, 10, 10, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerBikerZeke, -1
  13927. +   person_event SPRITE_SUPER_NERD, 2, 23, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdSam, -1
  13928. +   person_event SPRITE_SUPER_NERD, 12, 31, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerSupernerdTom, -1
  13929. +   person_event SPRITE_FRUIT_TREE, 5, 33, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x6c06c, -1
  13930. diff --git a/maps/Route8SaffronGate.asm b/maps/Route8SaffronGate.asm
  13931. index 44acb59..607909e 100644
  13932. --- a/maps/Route8SaffronGate.asm
  13933. +++ b/maps/Route8SaffronGate.asm
  13934. @@ -35,4 +35,4 @@ Route8SaffronGate_MapEventHeader:
  13935.  
  13936.  .PersonEvents:
  13937.     db 1
  13938. -   person_event SPRITE_OFFICER, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7f416, -1
  13939. +   person_event SPRITE_OFFICER, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x7f416, -1
  13940. diff --git a/maps/Route9.asm b/maps/Route9.asm
  13941. index c9d6b64..6f760ff 100644
  13942. --- a/maps/Route9.asm
  13943. +++ b/maps/Route9.asm
  13944. @@ -216,9 +216,9 @@ Route9_MapEventHeader:
  13945.  
  13946.  .PersonEvents:
  13947.     db 6
  13948. -   person_event SPRITE_YOUNGSTER, 11 + 4, 23 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperDean, -1
  13949. -   person_event SPRITE_LASS, 8 + 4, 39 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerHeidi, -1
  13950. -   person_event SPRITE_YOUNGSTER, 4 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerCamperSid, -1
  13951. -   person_event SPRITE_LASS, 15 + 4, 12 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerEdna, -1
  13952. -   person_event SPRITE_POKEFAN_M, 3 + 4, 28 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerTim, -1
  13953. -   person_event SPRITE_POKEFAN_M, 15 + 4, 36 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerHikerSidney, -1
  13954. +   person_event SPRITE_YOUNGSTER, 11, 23, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerCamperDean, -1
  13955. +   person_event SPRITE_LASS, 8, 39, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 3, TrainerPicnickerHeidi, -1
  13956. +   person_event SPRITE_YOUNGSTER, 4, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 5, TrainerCamperSid, -1
  13957. +   person_event SPRITE_LASS, 15, 12, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 1, TrainerPicnickerEdna, -1
  13958. +   person_event SPRITE_POKEFAN_M, 3, 28, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerTim, -1
  13959. +   person_event SPRITE_POKEFAN_M, 15, 36, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 4, TrainerHikerSidney, -1
  13960. diff --git a/maps/RuinsofAlphAerodactylItemRoom.asm b/maps/RuinsofAlphAerodactylItemRoom.asm
  13961. index 1d7a66f..2ddcd70 100644
  13962. --- a/maps/RuinsofAlphAerodactylItemRoom.asm
  13963. +++ b/maps/RuinsofAlphAerodactylItemRoom.asm
  13964. @@ -47,7 +47,7 @@ RuinsofAlphAerodactylItemRoom_MapEventHeader:
  13965.  
  13966.  .PersonEvents:
  13967.     db 4
  13968. -   person_event SPRITE_POKE_BALL, 6 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59ab6, EVENT_PICKED_UP_GOLD_BERRY_FROM_AERODACTYL_ITEM_ROOM
  13969. -   person_event SPRITE_POKE_BALL, 6 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59ab8, EVENT_PICKED_UP_MOON_STONE_FROM_AERODACTYL_ITEM_ROOM
  13970. -   person_event SPRITE_POKE_BALL, 4 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59aba, EVENT_PICKED_UP_HEAL_POWDER_FROM_AERODACTYL_ITEM_ROOM
  13971. -   person_event SPRITE_POKE_BALL, 4 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59abc, EVENT_PICKED_UP_ENERGY_ROOT_FROM_AERODACTYL_ITEM_ROOM
  13972. +   person_event SPRITE_POKE_BALL, 6, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59ab6, EVENT_PICKED_UP_GOLD_BERRY_FROM_AERODACTYL_ITEM_ROOM
  13973. +   person_event SPRITE_POKE_BALL, 6, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59ab8, EVENT_PICKED_UP_MOON_STONE_FROM_AERODACTYL_ITEM_ROOM
  13974. +   person_event SPRITE_POKE_BALL, 4, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59aba, EVENT_PICKED_UP_HEAL_POWDER_FROM_AERODACTYL_ITEM_ROOM
  13975. +   person_event SPRITE_POKE_BALL, 4, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59abc, EVENT_PICKED_UP_ENERGY_ROOT_FROM_AERODACTYL_ITEM_ROOM
  13976. diff --git a/maps/RuinsofAlphHoOhItemRoom.asm b/maps/RuinsofAlphHoOhItemRoom.asm
  13977. index 8007093..c3af94b 100644
  13978. --- a/maps/RuinsofAlphHoOhItemRoom.asm
  13979. +++ b/maps/RuinsofAlphHoOhItemRoom.asm
  13980. @@ -47,7 +47,7 @@ RuinsofAlphHoOhItemRoom_MapEventHeader:
  13981.  
  13982.  .PersonEvents:
  13983.     db 4
  13984. -   person_event SPRITE_POKE_BALL, 6 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59918, EVENT_PICKED_UP_GOLD_BERRY_FROM_HO_OH_ITEM_ROOM
  13985. -   person_event SPRITE_POKE_BALL, 6 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991a, EVENT_PICKED_UP_MYSTERYBERRY_FROM_HO_OH_ITEM_ROOM
  13986. -   person_event SPRITE_POKE_BALL, 4 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991c, EVENT_PICKED_UP_REVIVAL_HERB_FROM_HO_OH_ITEM_ROOM
  13987. -   person_event SPRITE_POKE_BALL, 4 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991e, EVENT_PICKED_UP_CHARCOAL_FROM_HO_OH_ITEM_ROOM
  13988. +   person_event SPRITE_POKE_BALL, 6, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59918, EVENT_PICKED_UP_GOLD_BERRY_FROM_HO_OH_ITEM_ROOM
  13989. +   person_event SPRITE_POKE_BALL, 6, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991a, EVENT_PICKED_UP_MYSTERYBERRY_FROM_HO_OH_ITEM_ROOM
  13990. +   person_event SPRITE_POKE_BALL, 4, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991c, EVENT_PICKED_UP_REVIVAL_HERB_FROM_HO_OH_ITEM_ROOM
  13991. +   person_event SPRITE_POKE_BALL, 4, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5991e, EVENT_PICKED_UP_CHARCOAL_FROM_HO_OH_ITEM_ROOM
  13992. diff --git a/maps/RuinsofAlphInnerChamber.asm b/maps/RuinsofAlphInnerChamber.asm
  13993. index 6b280bc..ae8bed5 100644
  13994. --- a/maps/RuinsofAlphInnerChamber.asm
  13995. +++ b/maps/RuinsofAlphInnerChamber.asm
  13996. @@ -125,6 +125,6 @@ RuinsofAlphInnerChamber_MapEventHeader:
  13997.  
  13998.  .PersonEvents:
  13999.     db 3
  14000. -   person_event SPRITE_FISHER, 7 + 4, 3 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x58f7d, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14001. -   person_event SPRITE_TEACHER, 13 + 4, 14 + 4, $2, 1, 1, -1, -1, 0, 0, 0, TeacherScript_0x58f80, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14002. -   person_event SPRITE_GRAMPS, 19 + 4, 11 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x58f83, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14003. +   person_event SPRITE_FISHER, 7, 3, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x58f7d, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14004. +   person_event SPRITE_TEACHER, 13, 14, $2, 1, 1, -1, -1, 0, 0, 0, TeacherScript_0x58f80, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14005. +   person_event SPRITE_GRAMPS, 19, 11, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x58f83, EVENT_RUINS_OF_ALPH_INNER_CHAMBER_TOURISTS
  14006. diff --git a/maps/RuinsofAlphKabutoChamber.asm b/maps/RuinsofAlphKabutoChamber.asm
  14007. index 444f168..e20eaf7 100644
  14008. --- a/maps/RuinsofAlphKabutoChamber.asm
  14009. +++ b/maps/RuinsofAlphKabutoChamber.asm
  14010. @@ -284,5 +284,5 @@ RuinsofAlphKabutoChamber_MapEventHeader:
  14011.  
  14012.  .PersonEvents:
  14013.     db 2
  14014. -   person_event SPRITE_RECEPTIONIST, 5 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x58769, EVENT_RUINS_OF_ALPH_KABUTO_CHAMBER_RECEPTIONIST
  14015. -   person_event SPRITE_SCIENTIST, 1 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x587a8, -1
  14016. +   person_event SPRITE_RECEPTIONIST, 5, 5, $6, 0, 0, -1, -1, 0, 0, 0, ReceptionistScript_0x58769, EVENT_RUINS_OF_ALPH_KABUTO_CHAMBER_RECEPTIONIST
  14017. +   person_event SPRITE_SCIENTIST, 1, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x587a8, -1
  14018. diff --git a/maps/RuinsofAlphKabutoItemRoom.asm b/maps/RuinsofAlphKabutoItemRoom.asm
  14019. index c319ba7..02f9242 100644
  14020. --- a/maps/RuinsofAlphKabutoItemRoom.asm
  14021. +++ b/maps/RuinsofAlphKabutoItemRoom.asm
  14022. @@ -47,7 +47,7 @@ RuinsofAlphKabutoItemRoom_MapEventHeader:
  14023.  
  14024.  .PersonEvents:
  14025.     db 4
  14026. -   person_event SPRITE_POKE_BALL, 6 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a2, EVENT_PICKED_UP_BERRY_FROM_KABUTO_ITEM_ROOM
  14027. -   person_event SPRITE_POKE_BALL, 6 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a4, EVENT_PICKED_UP_PSNCUREBERRY_FROM_KABUTO_ITEM_ROOM
  14028. -   person_event SPRITE_POKE_BALL, 4 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a6, EVENT_PICKED_UP_HEAL_POWDER_FROM_KABUTO_ITEM_ROOM
  14029. -   person_event SPRITE_POKE_BALL, 4 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a8, EVENT_PICKED_UP_ENERGYPOWDER_FROM_KABUTO_ITEM_ROOM
  14030. +   person_event SPRITE_POKE_BALL, 6, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a2, EVENT_PICKED_UP_BERRY_FROM_KABUTO_ITEM_ROOM
  14031. +   person_event SPRITE_POKE_BALL, 6, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a4, EVENT_PICKED_UP_PSNCUREBERRY_FROM_KABUTO_ITEM_ROOM
  14032. +   person_event SPRITE_POKE_BALL, 4, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a6, EVENT_PICKED_UP_HEAL_POWDER_FROM_KABUTO_ITEM_ROOM
  14033. +   person_event SPRITE_POKE_BALL, 4, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x599a8, EVENT_PICKED_UP_ENERGYPOWDER_FROM_KABUTO_ITEM_ROOM
  14034. diff --git a/maps/RuinsofAlphOmanyteItemRoom.asm b/maps/RuinsofAlphOmanyteItemRoom.asm
  14035. index 3059e13..5fb6227 100644
  14036. --- a/maps/RuinsofAlphOmanyteItemRoom.asm
  14037. +++ b/maps/RuinsofAlphOmanyteItemRoom.asm
  14038. @@ -47,7 +47,7 @@ RuinsofAlphOmanyteItemRoom_MapEventHeader:
  14039.  
  14040.  .PersonEvents:
  14041.     db 4
  14042. -   person_event SPRITE_POKE_BALL, 6 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a2c, EVENT_PICKED_UP_MYSTERYBERRY_FROM_OMANYTE_ITEM_ROOM
  14043. -   person_event SPRITE_POKE_BALL, 6 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a2e, EVENT_PICKED_UP_MYSTIC_WATER_FROM_OMANYTE_ITEM_ROOM
  14044. -   person_event SPRITE_POKE_BALL, 4 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a30, EVENT_PICKED_UP_STARDUST_FROM_OMANYTE_ITEM_ROOM
  14045. -   person_event SPRITE_POKE_BALL, 4 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a32, EVENT_PICKED_UP_STAR_PIECE_FROM_OMANYTE_ITEM_ROOM
  14046. +   person_event SPRITE_POKE_BALL, 6, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a2c, EVENT_PICKED_UP_MYSTERYBERRY_FROM_OMANYTE_ITEM_ROOM
  14047. +   person_event SPRITE_POKE_BALL, 6, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a2e, EVENT_PICKED_UP_MYSTIC_WATER_FROM_OMANYTE_ITEM_ROOM
  14048. +   person_event SPRITE_POKE_BALL, 4, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a30, EVENT_PICKED_UP_STARDUST_FROM_OMANYTE_ITEM_ROOM
  14049. +   person_event SPRITE_POKE_BALL, 4, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59a32, EVENT_PICKED_UP_STAR_PIECE_FROM_OMANYTE_ITEM_ROOM
  14050. diff --git a/maps/RuinsofAlphOutside.asm b/maps/RuinsofAlphOutside.asm
  14051. index b20c0fa..e4748d9 100644
  14052. --- a/maps/RuinsofAlphOutside.asm
  14053. +++ b/maps/RuinsofAlphOutside.asm
  14054. @@ -311,8 +311,8 @@ RuinsofAlphOutside_MapEventHeader:
  14055.  
  14056.  .PersonEvents:
  14057.     db 5
  14058. -   person_event SPRITE_YOUNGSTER, 20 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 2, 1, TrainerPsychicNathan, -1
  14059. -   person_event SPRITE_SCIENTIST, 15 + 4, 11 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ScientistScript_0x58043, EVENT_RUINS_OF_ALPH_OUTSIDE_SCIENTIST
  14060. -   person_event SPRITE_FISHER, 17 + 4, 13 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x58061, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_FISHER
  14061. -   person_event SPRITE_YOUNGSTER, 11 + 4, 14 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, YoungsterScript_0x58076, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
  14062. -   person_event SPRITE_YOUNGSTER, 8 + 4, 12 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5807e, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
  14063. +   person_event SPRITE_YOUNGSTER, 20, 4, $6, 0, 0, -1, -1, 0, 2, 1, TrainerPsychicNathan, -1
  14064. +   person_event SPRITE_SCIENTIST, 15, 11, $7, 0, 0, -1, -1, 0, 0, 0, ScientistScript_0x58043, EVENT_RUINS_OF_ALPH_OUTSIDE_SCIENTIST
  14065. +   person_event SPRITE_FISHER, 17, 13, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x58061, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_FISHER
  14066. +   person_event SPRITE_YOUNGSTER, 11, 14, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, YoungsterScript_0x58076, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
  14067. +   person_event SPRITE_YOUNGSTER, 8, 12, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x5807e, EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
  14068. diff --git a/maps/RuinsofAlphResearchCenter.asm b/maps/RuinsofAlphResearchCenter.asm
  14069. index 9304fd1..47aa063 100644
  14070. --- a/maps/RuinsofAlphResearchCenter.asm
  14071. +++ b/maps/RuinsofAlphResearchCenter.asm
  14072. @@ -412,6 +412,6 @@ RuinsofAlphResearchCenter_MapEventHeader:
  14073.  
  14074.  .PersonEvents:
  14075.     db 3
  14076. -   person_event SPRITE_SCIENTIST, 5 + 4, 4 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x591e5, -1
  14077. -   person_event SPRITE_SCIENTIST, 2 + 4, 5 + 4, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x59214, -1
  14078. -   person_event SPRITE_SCIENTIST, 5 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x591d1, EVENT_RUINS_OF_ALPH_RESEARCH_CENTER_SCIENTIST
  14079. +   person_event SPRITE_SCIENTIST, 5, 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x591e5, -1
  14080. +   person_event SPRITE_SCIENTIST, 2, 5, $2, 1, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x59214, -1
  14081. +   person_event SPRITE_SCIENTIST, 5, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x591d1, EVENT_RUINS_OF_ALPH_RESEARCH_CENTER_SCIENTIST
  14082. diff --git a/maps/SafariZoneWardensHome.asm b/maps/SafariZoneWardensHome.asm
  14083. index d91805c..911da54 100644
  14084. --- a/maps/SafariZoneWardensHome.asm
  14085. +++ b/maps/SafariZoneWardensHome.asm
  14086. @@ -94,4 +94,4 @@ SafariZoneWardensHome_MapEventHeader:
  14087.  
  14088.  .PersonEvents:
  14089.     db 1
  14090. -   person_event SPRITE_LASS, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, WardensGranddaughter, -1
  14091. +   person_event SPRITE_LASS, 4, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, WardensGranddaughter, -1
  14092. diff --git a/maps/SaffronCity.asm b/maps/SaffronCity.asm
  14093. index 72d5476..363f930 100644
  14094. --- a/maps/SaffronCity.asm
  14095. +++ b/maps/SaffronCity.asm
  14096. @@ -295,11 +295,11 @@ SaffronCity_MapEventHeader:
  14097.  
  14098.  .PersonEvents:
  14099.     db 8
  14100. -   person_event SPRITE_LASS, 14 + 4, 7 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x19932a, -1
  14101. -   person_event SPRITE_POKEFAN_M, 30 + 4, 19 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x19933e, -1
  14102. -   person_event SPRITE_COOLTRAINER_M, 7 + 4, 32 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerMScript_0x199352, -1
  14103. -   person_event SPRITE_COOLTRAINER_F, 24 + 4, 20 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x199355, -1
  14104. -   person_event SPRITE_FISHER, 12 + 4, 27 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x199358, -1
  14105. -   person_event SPRITE_YOUNGSTER, 19 + 4, 15 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x19936c, -1
  14106. -   person_event SPRITE_YOUNGSTER, 22 + 4, 35 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x19936f, -1
  14107. -   person_event SPRITE_LASS, 8 + 4, 19 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x199372, -1
  14108. +   person_event SPRITE_LASS, 14, 7, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, LassScript_0x19932a, -1
  14109. +   person_event SPRITE_POKEFAN_M, 30, 19, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, PokefanMScript_0x19933e, -1
  14110. +   person_event SPRITE_COOLTRAINER_M, 7, 32, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerMScript_0x199352, -1
  14111. +   person_event SPRITE_COOLTRAINER_F, 24, 20, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x199355, -1
  14112. +   person_event SPRITE_FISHER, 12, 27, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x199358, -1
  14113. +   person_event SPRITE_YOUNGSTER, 19, 15, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x19936c, -1
  14114. +   person_event SPRITE_YOUNGSTER, 22, 35, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x19936f, -1
  14115. +   person_event SPRITE_LASS, 8, 19, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x199372, -1
  14116. diff --git a/maps/SaffronGym.asm b/maps/SaffronGym.asm
  14117. index 47d6322..8e7bb10 100644
  14118. --- a/maps/SaffronGym.asm
  14119. +++ b/maps/SaffronGym.asm
  14120. @@ -330,9 +330,9 @@ SaffronGym_MapEventHeader:
  14121.  
  14122.  .PersonEvents:
  14123.     db 6
  14124. -   person_event SPRITE_SABRINA, 8 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SabrinaScript_0x189c2e, -1
  14125. -   person_event SPRITE_GRANNY, 16 + 4, 17 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerMediumRebecca, -1
  14126. -   person_event SPRITE_YOUNGSTER, 16 + 4, 3 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicFranklin, -1
  14127. -   person_event SPRITE_GRANNY, 4 + 4, 3 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerMediumDoris, -1
  14128. -   person_event SPRITE_YOUNGSTER, 4 + 4, 17 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPsychicJared, -1
  14129. -   person_event SPRITE_GYM_GUY, 14 + 4, 9 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SaffronGymGuyScript, -1
  14130. +   person_event SPRITE_SABRINA, 8, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SabrinaScript_0x189c2e, -1
  14131. +   person_event SPRITE_GRANNY, 16, 17, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerMediumRebecca, -1
  14132. +   person_event SPRITE_YOUNGSTER, 16, 3, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPsychicFranklin, -1
  14133. +   person_event SPRITE_GRANNY, 4, 3, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerMediumDoris, -1
  14134. +   person_event SPRITE_YOUNGSTER, 4, 17, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPsychicJared, -1
  14135. +   person_event SPRITE_GYM_GUY, 14, 9, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SaffronGymGuyScript, -1
  14136. diff --git a/maps/SaffronMart.asm b/maps/SaffronMart.asm
  14137. index 8480879..6a68113 100644
  14138. --- a/maps/SaffronMart.asm
  14139. +++ b/maps/SaffronMart.asm
  14140. @@ -49,6 +49,6 @@ SaffronMart_MapEventHeader:
  14141.  
  14142.  .PersonEvents:
  14143.     db 3
  14144. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18a3bf, -1
  14145. -   person_event SPRITE_COOLTRAINER_M, 2 + 4, 7 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CooltrainerMScript_0x18a3c6, -1
  14146. -   person_event SPRITE_COOLTRAINER_F, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18a3c9, -1
  14147. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x18a3bf, -1
  14148. +   person_event SPRITE_COOLTRAINER_M, 2, 7, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, CooltrainerMScript_0x18a3c6, -1
  14149. +   person_event SPRITE_COOLTRAINER_F, 6, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, CooltrainerFScript_0x18a3c9, -1
  14150. diff --git a/maps/SaffronPokeCenter1F.asm b/maps/SaffronPokeCenter1F.asm
  14151. index 31f7c09..125e796 100644
  14152. --- a/maps/SaffronPokeCenter1F.asm
  14153. +++ b/maps/SaffronPokeCenter1F.asm
  14154. @@ -123,7 +123,7 @@ SaffronPokeCenter1F_MapEventHeader:
  14155.  
  14156.  .PersonEvents:
  14157.     db 4
  14158. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18a47d, -1
  14159. -   person_event SPRITE_TEACHER, 2 + 4, 7 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x18a480, -1
  14160. -   person_event SPRITE_FISHER, 6 + 4, 8 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x18a48c, -1
  14161. -   person_event SPRITE_YOUNGSTER, 4 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x18a4a0, -1
  14162. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x18a47d, -1
  14163. +   person_event SPRITE_TEACHER, 2, 7, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, TeacherScript_0x18a480, -1
  14164. +   person_event SPRITE_FISHER, 6, 8, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x18a48c, -1
  14165. +   person_event SPRITE_YOUNGSTER, 4, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, YoungsterScript_0x18a4a0, -1
  14166. diff --git a/maps/SaffronTrainStation.asm b/maps/SaffronTrainStation.asm
  14167. index 5795464..55587b1 100644
  14168. --- a/maps/SaffronTrainStation.asm
  14169. +++ b/maps/SaffronTrainStation.asm
  14170. @@ -231,7 +231,7 @@ SaffronTrainStation_MapEventHeader:
  14171.  
  14172.  .PersonEvents:
  14173.     db 4
  14174. -   person_event SPRITE_OFFICER, 9 + 4, 9 + 4, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x18a81e, -1
  14175. -   person_event SPRITE_GYM_GUY, 14 + 4, 10 + 4, $2, 1, 1, -1, -1, 0, 0, 0, GymGuyScript_0x18a875, -1
  14176. -   person_event SPRITE_TEACHER, 11 + 4, 6 + 4, $9, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x18a889, EVENT_SAFFRON_TRAIN_STATION_POPULATION
  14177. -   person_event SPRITE_LASS, 10 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x18a88c, EVENT_SAFFRON_TRAIN_STATION_POPULATION
  14178. +   person_event SPRITE_OFFICER, 9, 9, $6, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x18a81e, -1
  14179. +   person_event SPRITE_GYM_GUY, 14, 10, $2, 1, 1, -1, -1, 0, 0, 0, GymGuyScript_0x18a875, -1
  14180. +   person_event SPRITE_TEACHER, 11, 6, $9, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x18a889, EVENT_SAFFRON_TRAIN_STATION_POPULATION
  14181. +   person_event SPRITE_LASS, 10, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x18a88c, EVENT_SAFFRON_TRAIN_STATION_POPULATION
  14182. diff --git a/maps/SeafoamGym.asm b/maps/SeafoamGym.asm
  14183. index 353d2b8..558a979 100644
  14184. --- a/maps/SeafoamGym.asm
  14185. +++ b/maps/SeafoamGym.asm
  14186. @@ -171,5 +171,5 @@ SeafoamGym_MapEventHeader:
  14187.  
  14188.  .PersonEvents:
  14189.     db 2
  14190. -   person_event SPRITE_BLAINE, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BlaineScript_0x1ab4fb, -1
  14191. -   person_event SPRITE_GYM_GUY, 5 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SeafoamGymGuyScript, EVENT_SEAFOAM_GYM_GYM_GUY
  14192. +   person_event SPRITE_BLAINE, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BlaineScript_0x1ab4fb, -1
  14193. +   person_event SPRITE_GYM_GUY, 5, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SeafoamGymGuyScript, EVENT_SEAFOAM_GYM_GYM_GUY
  14194. diff --git a/maps/SilphCo1F.asm b/maps/SilphCo1F.asm
  14195. index d5c8ec1..0acff40 100644
  14196. --- a/maps/SilphCo1F.asm
  14197. +++ b/maps/SilphCo1F.asm
  14198. @@ -68,5 +68,5 @@ SilphCo1F_MapEventHeader:
  14199.  
  14200.  .PersonEvents:
  14201.     db 2
  14202. -   person_event SPRITE_RECEPTIONIST, 2 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ReceptionistScript_0x18abe5, -1
  14203. -   person_event SPRITE_OFFICER, 1 + 4, 13 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x18abe8, -1
  14204. +   person_event SPRITE_RECEPTIONIST, 2, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ReceptionistScript_0x18abe5, -1
  14205. +   person_event SPRITE_OFFICER, 1, 13, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OfficerScript_0x18abe8, -1
  14206. diff --git a/maps/SilverCaveItemRooms.asm b/maps/SilverCaveItemRooms.asm
  14207. index bc64725..e421dd7 100644
  14208. --- a/maps/SilverCaveItemRooms.asm
  14209. +++ b/maps/SilverCaveItemRooms.asm
  14210. @@ -28,5 +28,5 @@ SilverCaveItemRooms_MapEventHeader:
  14211.  
  14212.  .PersonEvents:
  14213.     db 2
  14214. -   person_event SPRITE_POKE_BALL, 3 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c65e, EVENT_SILVER_CAVE_ITEM_ROOMS_MAX_REVIVE
  14215. -   person_event SPRITE_POKE_BALL, 11 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c660, EVENT_SILVER_CAVE_ITEM_ROOMS_FULL_RESTORE
  14216. +   person_event SPRITE_POKE_BALL, 3, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c65e, EVENT_SILVER_CAVE_ITEM_ROOMS_MAX_REVIVE
  14217. +   person_event SPRITE_POKE_BALL, 11, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c660, EVENT_SILVER_CAVE_ITEM_ROOMS_FULL_RESTORE
  14218. diff --git a/maps/SilverCavePokeCenter1F.asm b/maps/SilverCavePokeCenter1F.asm
  14219. index 35318a7..1b53d49 100644
  14220. --- a/maps/SilverCavePokeCenter1F.asm
  14221. +++ b/maps/SilverCavePokeCenter1F.asm
  14222. @@ -43,5 +43,5 @@ SilverCavePokeCenter1F_MapEventHeader:
  14223.  
  14224.  .PersonEvents:
  14225.     db 2
  14226. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1ae59a, -1
  14227. -   person_event SPRITE_GRANNY, 5 + 4, 1 + 4, $8, 1, 2, -1, -1, 0, 0, 0, GrannyScript_0x1ae59d, -1
  14228. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x1ae59a, -1
  14229. +   person_event SPRITE_GRANNY, 5, 1, $8, 1, 2, -1, -1, 0, 0, 0, GrannyScript_0x1ae59d, -1
  14230. diff --git a/maps/SilverCaveRoom1.asm b/maps/SilverCaveRoom1.asm
  14231. index ee56106..97546a7 100644
  14232. --- a/maps/SilverCaveRoom1.asm
  14233. +++ b/maps/SilverCaveRoom1.asm
  14234. @@ -44,7 +44,7 @@ SilverCaveRoom1_MapEventHeader:
  14235.  
  14236.  .PersonEvents:
  14237.     db 4
  14238. -   person_event SPRITE_POKE_BALL, 9 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c554, EVENT_SILVER_CAVE_ROOM_1_MAX_ELIXER
  14239. -   person_event SPRITE_POKE_BALL, 29 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c556, EVENT_SILVER_CAVE_ROOM_1_PROTEIN
  14240. -   person_event SPRITE_POKE_BALL, 30 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c558, EVENT_SILVER_CAVE_ROOM_1_ESCAPE_ROPE
  14241. -   person_event SPRITE_POKE_BALL, 18 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c55a, EVENT_SILVER_CAVE_ROOM_1_ULTRA_BALL
  14242. +   person_event SPRITE_POKE_BALL, 9, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c554, EVENT_SILVER_CAVE_ROOM_1_MAX_ELIXER
  14243. +   person_event SPRITE_POKE_BALL, 29, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c556, EVENT_SILVER_CAVE_ROOM_1_PROTEIN
  14244. +   person_event SPRITE_POKE_BALL, 30, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c558, EVENT_SILVER_CAVE_ROOM_1_ESCAPE_ROPE
  14245. +   person_event SPRITE_POKE_BALL, 18, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c55a, EVENT_SILVER_CAVE_ROOM_1_ULTRA_BALL
  14246. diff --git a/maps/SilverCaveRoom2.asm b/maps/SilverCaveRoom2.asm
  14247. index e589bb8..ff0e18d 100644
  14248. --- a/maps/SilverCaveRoom2.asm
  14249. +++ b/maps/SilverCaveRoom2.asm
  14250. @@ -38,6 +38,6 @@ SilverCaveRoom2_MapEventHeader:
  14251.  
  14252.  .PersonEvents:
  14253.     db 3
  14254. -   person_event SPRITE_POKE_BALL, 10 + 4, 24 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b2, EVENT_SILVER_CAVE_ROOM_2_CALCIUM
  14255. -   person_event SPRITE_POKE_BALL, 24 + 4, 22 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b4, EVENT_SILVER_CAVE_ROOM_2_ULTRA_BALL
  14256. -   person_event SPRITE_POKE_BALL, 20 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b6, EVENT_SILVER_CAVE_ROOM_2_PP_UP
  14257. +   person_event SPRITE_POKE_BALL, 10, 24, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b2, EVENT_SILVER_CAVE_ROOM_2_CALCIUM
  14258. +   person_event SPRITE_POKE_BALL, 24, 22, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b4, EVENT_SILVER_CAVE_ROOM_2_ULTRA_BALL
  14259. +   person_event SPRITE_POKE_BALL, 20, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c5b6, EVENT_SILVER_CAVE_ROOM_2_PP_UP
  14260. diff --git a/maps/SilverCaveRoom3.asm b/maps/SilverCaveRoom3.asm
  14261. index 945b999..4b61090 100644
  14262. --- a/maps/SilverCaveRoom3.asm
  14263. +++ b/maps/SilverCaveRoom3.asm
  14264. @@ -63,4 +63,4 @@ SilverCaveRoom3_MapEventHeader:
  14265.  
  14266.  .PersonEvents:
  14267.     db 1
  14268. -   person_event SPRITE_RED, 10 + 4, 9 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, RedScript_0x18c603, EVENT_RED_IN_MT_SILVER
  14269. +   person_event SPRITE_RED, 10, 9, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, RedScript_0x18c603, EVENT_RED_IN_MT_SILVER
  14270. diff --git a/maps/SlowpokeWellB1F.asm b/maps/SlowpokeWellB1F.asm
  14271. index b6c22ee..9ace60a 100644
  14272. --- a/maps/SlowpokeWellB1F.asm
  14273. +++ b/maps/SlowpokeWellB1F.asm
  14274. @@ -326,12 +326,12 @@ SlowpokeWellB1F_MapEventHeader:
  14275.  
  14276.  .PersonEvents:
  14277.     db 9
  14278. -   person_event SPRITE_ROCKET, 7 + 4, 15 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM29, EVENT_SLOWPOKE_WELL_ROCKETS
  14279. -   person_event SPRITE_ROCKET, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 2, 1, TrainerGruntM1, EVENT_SLOWPOKE_WELL_ROCKETS
  14280. -   person_event SPRITE_ROCKET, 6 + 4, 5 + 4, $9, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM2, EVENT_SLOWPOKE_WELL_ROCKETS
  14281. -   person_event SPRITE_ROCKET_GIRL, 4 + 4, 10 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerGruntF1, EVENT_SLOWPOKE_WELL_ROCKETS
  14282. -   person_event SPRITE_SLOWPOKE, 4 + 4, 7 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SlowpokeScript_0x5a681, EVENT_SLOWPOKE_WELL_SLOWPOKES
  14283. -   person_event SPRITE_SLOWPOKE, 2 + 4, 6 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SlowpokeScript_0x5a695, EVENT_SLOWPOKE_WELL_SLOWPOKES
  14284. -   person_event SPRITE_KURT, 14 + 4, 16 + 4, $7, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x5a5d5, EVENT_SLOWPOKE_WELL_KURT
  14285. -   person_event SPRITE_BOULDER, 2 + 4, 3 + 4, $19, 0, 0, -1, -1, 0, 0, 0, SlowpokeWellB1FBoulder, -1
  14286. -   person_event SPRITE_POKE_BALL, 3 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a6a3, EVENT_SLOWPOKE_WELL_B1F_SUPER_POTION
  14287. +   person_event SPRITE_ROCKET, 7, 15, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM29, EVENT_SLOWPOKE_WELL_ROCKETS
  14288. +   person_event SPRITE_ROCKET, 2, 5, $6, 0, 0, -1, -1, 0, 2, 1, TrainerGruntM1, EVENT_SLOWPOKE_WELL_ROCKETS
  14289. +   person_event SPRITE_ROCKET, 6, 5, $9, 0, 0, -1, -1, 0, 2, 2, TrainerGruntM2, EVENT_SLOWPOKE_WELL_ROCKETS
  14290. +   person_event SPRITE_ROCKET_GIRL, 4, 10, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerGruntF1, EVENT_SLOWPOKE_WELL_ROCKETS
  14291. +   person_event SPRITE_SLOWPOKE, 4, 7, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SlowpokeScript_0x5a681, EVENT_SLOWPOKE_WELL_SLOWPOKES
  14292. +   person_event SPRITE_SLOWPOKE, 2, 6, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SlowpokeScript_0x5a695, EVENT_SLOWPOKE_WELL_SLOWPOKES
  14293. +   person_event SPRITE_KURT, 14, 16, $7, 0, 0, -1, -1, 0, 0, 0, KurtScript_0x5a5d5, EVENT_SLOWPOKE_WELL_KURT
  14294. +   person_event SPRITE_BOULDER, 2, 3, $19, 0, 0, -1, -1, 0, 0, 0, SlowpokeWellB1FBoulder, -1
  14295. +   person_event SPRITE_POKE_BALL, 3, 10, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a6a3, EVENT_SLOWPOKE_WELL_B1F_SUPER_POTION
  14296. diff --git a/maps/SlowpokeWellB2F.asm b/maps/SlowpokeWellB2F.asm
  14297. index c21ec9f..fcf207b 100644
  14298. --- a/maps/SlowpokeWellB2F.asm
  14299. +++ b/maps/SlowpokeWellB2F.asm
  14300. @@ -73,5 +73,5 @@ SlowpokeWellB2F_MapEventHeader:
  14301.  
  14302.  .PersonEvents:
  14303.     db 2
  14304. -   person_event SPRITE_GYM_GUY, 4 + 4, 5 + 4, $2, 2, 1, -1, -1, 0, 0, 1, GymGuyScript_0x5ad0b, -1
  14305. -   person_event SPRITE_POKE_BALL, 5 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5ad28, EVENT_SLOWPOKE_WELL_B2F_TM_RAIN_DANCE
  14306. +   person_event SPRITE_GYM_GUY, 4, 5, $2, 2, 1, -1, -1, 0, 0, 1, GymGuyScript_0x5ad0b, -1
  14307. +   person_event SPRITE_POKE_BALL, 5, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5ad28, EVENT_SLOWPOKE_WELL_B2F_TM_RAIN_DANCE
  14308. diff --git a/maps/SoulHouse.asm b/maps/SoulHouse.asm
  14309. index e03b07c..f315a3b 100644
  14310. --- a/maps/SoulHouse.asm
  14311. +++ b/maps/SoulHouse.asm
  14312. @@ -83,7 +83,7 @@ SoulHouse_MapEventHeader:
  14313.  
  14314.  .PersonEvents:
  14315.     db 4
  14316. -   person_event SPRITE_GRAMPS, 2 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x7ec47, -1
  14317. -   person_event SPRITE_TEACHER, 3 + 4, 7 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7ec4a, -1
  14318. -   person_event SPRITE_LASS, 5 + 4, 2 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x7ec4d, -1
  14319. -   person_event SPRITE_GRANNY, 3 + 4, 1 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrannyScript_0x7ec50, -1
  14320. +   person_event SPRITE_GRAMPS, 2, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x7ec47, -1
  14321. +   person_event SPRITE_TEACHER, 3, 7, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, TeacherScript_0x7ec4a, -1
  14322. +   person_event SPRITE_LASS, 5, 2, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LassScript_0x7ec4d, -1
  14323. +   person_event SPRITE_GRANNY, 3, 1, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrannyScript_0x7ec50, -1
  14324. diff --git a/maps/SproutTower1F.asm b/maps/SproutTower1F.asm
  14325. index e19c3fa..ee4eef4 100644
  14326. --- a/maps/SproutTower1F.asm
  14327. +++ b/maps/SproutTower1F.asm
  14328. @@ -116,9 +116,9 @@ SproutTower1F_MapEventHeader:
  14329.  
  14330.  .PersonEvents:
  14331.     db 6
  14332. -   person_event SPRITE_SAGE, 4 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageScript_0x1844fe, -1
  14333. -   person_event SPRITE_SAGE, 7 + 4, 6 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageScript_0x184501, -1
  14334. -   person_event SPRITE_GRANNY, 12 + 4, 11 + 4, $8, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x184504, -1
  14335. -   person_event SPRITE_TEACHER, 9 + 4, 9 + 4, $7, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x184507, -1
  14336. -   person_event SPRITE_SAGE, 5 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSageChow, -1
  14337. -   person_event SPRITE_POKE_BALL, 7 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18451e, EVENT_SPROUT_TOWER1F_PARLYZ_HEAL
  14338. +   person_event SPRITE_SAGE, 4, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageScript_0x1844fe, -1
  14339. +   person_event SPRITE_SAGE, 7, 6, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageScript_0x184501, -1
  14340. +   person_event SPRITE_GRANNY, 12, 11, $8, 0, 0, -1, -1, 0, 0, 0, GrannyScript_0x184504, -1
  14341. +   person_event SPRITE_TEACHER, 9, 9, $7, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x184507, -1
  14342. +   person_event SPRITE_SAGE, 5, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSageChow, -1
  14343. +   person_event SPRITE_POKE_BALL, 7, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18451e, EVENT_SPROUT_TOWER1F_PARLYZ_HEAL
  14344. diff --git a/maps/SproutTower2F.asm b/maps/SproutTower2F.asm
  14345. index 6c051cc..946f57d 100644
  14346. --- a/maps/SproutTower2F.asm
  14347. +++ b/maps/SproutTower2F.asm
  14348. @@ -99,6 +99,6 @@ SproutTower2F_MapEventHeader:
  14349.  
  14350.  .PersonEvents:
  14351.     db 3
  14352. -   person_event SPRITE_SAGE, 3 + 4, 12 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSageNico, -1
  14353. -   person_event SPRITE_SAGE, 14 + 4, 9 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSageEdmond, -1
  14354. -   person_event SPRITE_POKE_BALL, 1 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1847a7, EVENT_SPROUT_TOWER2F_X_ACCURACY
  14355. +   person_event SPRITE_SAGE, 3, 12, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerSageNico, -1
  14356. +   person_event SPRITE_SAGE, 14, 9, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 5, TrainerSageEdmond, -1
  14357. +   person_event SPRITE_POKE_BALL, 1, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1847a7, EVENT_SPROUT_TOWER2F_X_ACCURACY
  14358. diff --git a/maps/SproutTower3F.asm b/maps/SproutTower3F.asm
  14359. index fb098e8..7656bde 100644
  14360. --- a/maps/SproutTower3F.asm
  14361. +++ b/maps/SproutTower3F.asm
  14362. @@ -345,10 +345,10 @@ SproutTower3F_MapEventHeader:
  14363.  
  14364.  .PersonEvents:
  14365.     db 7
  14366. -   person_event SPRITE_SAGE, 13 + 4, 8 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSageJin, -1
  14367. -   person_event SPRITE_SAGE, 8 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerSageTroy, -1
  14368. -   person_event SPRITE_SAGE, 2 + 4, 10 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageLiScript, -1
  14369. -   person_event SPRITE_SAGE, 11 + 4, 11 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSageNeal, -1
  14370. -   person_event SPRITE_POKE_BALL, 14 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x184a19, EVENT_SPROUT_TOWER_3F_POTION
  14371. -   person_event SPRITE_POKE_BALL, 1 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x184a1b, EVENT_SPROUT_TOWER_3F_ESCAPE_ROPE
  14372. -   person_event SPRITE_SILVER, 4 + 4, 10 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_SPROUT_TOWER
  14373. +   person_event SPRITE_SAGE, 13, 8, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSageJin, -1
  14374. +   person_event SPRITE_SAGE, 8, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerSageTroy, -1
  14375. +   person_event SPRITE_SAGE, 2, 10, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SageLiScript, -1
  14376. +   person_event SPRITE_SAGE, 11, 11, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerSageNeal, -1
  14377. +   person_event SPRITE_POKE_BALL, 14, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x184a19, EVENT_SPROUT_TOWER_3F_POTION
  14378. +   person_event SPRITE_POKE_BALL, 1, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x184a1b, EVENT_SPROUT_TOWER_3F_ESCAPE_ROPE
  14379. +   person_event SPRITE_SILVER, 4, 10, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_SPROUT_TOWER
  14380. diff --git a/maps/TeamRocketBaseB1F.asm b/maps/TeamRocketBaseB1F.asm
  14381. index 0cd05e1..3f7f1f3 100644
  14382. --- a/maps/TeamRocketBaseB1F.asm
  14383. +++ b/maps/TeamRocketBaseB1F.asm
  14384. @@ -786,9 +786,9 @@ TeamRocketBaseB1F_MapEventHeader:
  14385.  
  14386.  .PersonEvents:
  14387.     db 6
  14388. -   person_event SPRITE_ROCKET, 0 + 4, 0 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_SECURITY_GRUNTS
  14389. -   person_event SPRITE_ROCKET, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM16, EVENT_TEAM_ROCKET_BASE_POPULATION
  14390. -   person_event SPRITE_SCIENTIST, 12 + 4, 18 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerScientistJed, EVENT_TEAM_ROCKET_BASE_POPULATION
  14391. -   person_event SPRITE_POKE_BALL, 6 + 4, 27 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac4, EVENT_TEAM_ROCKET_BASE_B1F_HYPER_POTION
  14392. -   person_event SPRITE_POKE_BALL, 15 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac6, EVENT_TEAM_ROCKET_BASE_B1F_NUGGET
  14393. -   person_event SPRITE_POKE_BALL, 12 + 4, 21 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac8, EVENT_TEAM_ROCKET_BASE_B1F_GUARD_SPEC
  14394. +   person_event SPRITE_ROCKET, 0, 0, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_SECURITY_GRUNTS
  14395. +   person_event SPRITE_ROCKET, 4, 2, $9, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM16, EVENT_TEAM_ROCKET_BASE_POPULATION
  14396. +   person_event SPRITE_SCIENTIST, 12, 18, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerScientistJed, EVENT_TEAM_ROCKET_BASE_POPULATION
  14397. +   person_event SPRITE_POKE_BALL, 6, 27, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac4, EVENT_TEAM_ROCKET_BASE_B1F_HYPER_POTION
  14398. +   person_event SPRITE_POKE_BALL, 15, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac6, EVENT_TEAM_ROCKET_BASE_B1F_NUGGET
  14399. +   person_event SPRITE_POKE_BALL, 12, 21, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6cac8, EVENT_TEAM_ROCKET_BASE_B1F_GUARD_SPEC
  14400. diff --git a/maps/TeamRocketBaseB2F.asm b/maps/TeamRocketBaseB2F.asm
  14401. index 7172287..b6363cb 100644
  14402. --- a/maps/TeamRocketBaseB2F.asm
  14403. +++ b/maps/TeamRocketBaseB2F.asm
  14404. @@ -952,17 +952,17 @@ TeamRocketBaseB2F_MapEventHeader:
  14405.  
  14406.  .PersonEvents:
  14407.     db 14
  14408. -   person_event SPRITE_ROCKET, 16 + 4, 20 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_GRUNT_WITH_EXECUTIVE
  14409. -   person_event SPRITE_ROCKET_GIRL, 16 + 4, 20 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_EXECUTIVE
  14410. -   person_event SPRITE_LANCE, 13 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_LANCE
  14411. -   person_event SPRITE_DRAGON, 13 + 4, 9 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_DRAGONITE
  14412. -   person_event SPRITE_VOLTORB, 5 + 4, 7 + 4, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d101, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_1
  14413. -   person_event SPRITE_VOLTORB, 7 + 4, 7 + 4, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d12c, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_2
  14414. -   person_event SPRITE_VOLTORB, 9 + 4, 7 + 4, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d157, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3
  14415. -   person_event SPRITE_VOLTORB, 5 + 4, 22 + 4, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_1
  14416. -   person_event SPRITE_VOLTORB, 7 + 4, 22 + 4, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_2
  14417. -   person_event SPRITE_VOLTORB, 9 + 4, 22 + 4, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3
  14418. -   person_event SPRITE_ROCKET, 13 + 4, 25 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM17, EVENT_TEAM_ROCKET_BASE_POPULATION
  14419. -   person_event SPRITE_ROCKET, 1 + 4, 4 + 4, $a, 0, 0, -1, -1, 0, 2, 1, TrainerGruntM18, EVENT_TEAM_ROCKET_BASE_POPULATION
  14420. -   person_event SPRITE_ROCKET, 14 + 4, 21 + 4, $8, 0, 0, -1, -1, 0, 2, 4, TrainerGruntM19, EVENT_TEAM_ROCKET_BASE_POPULATION
  14421. -   person_event SPRITE_POKE_BALL, 10 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6d20d, EVENT_TEAM_ROCKET_BASE_B2F_TM_THIEF
  14422. +   person_event SPRITE_ROCKET, 16, 20, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_GRUNT_WITH_EXECUTIVE
  14423. +   person_event SPRITE_ROCKET_GIRL, 16, 20, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_EXECUTIVE
  14424. +   person_event SPRITE_LANCE, 13, 5, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_LANCE
  14425. +   person_event SPRITE_DRAGON, 13, 9, $9, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_DRAGONITE
  14426. +   person_event SPRITE_VOLTORB, 5, 7, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d101, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_1
  14427. +   person_event SPRITE_VOLTORB, 7, 7, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d12c, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_2
  14428. +   person_event SPRITE_VOLTORB, 9, 7, $16, 0, 0, -1, -1, 0, 0, 0, VoltorbScript_0x6d157, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3
  14429. +   person_event SPRITE_VOLTORB, 5, 22, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_1
  14430. +   person_event SPRITE_VOLTORB, 7, 22, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_2
  14431. +   person_event SPRITE_VOLTORB, 9, 22, $16, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3
  14432. +   person_event SPRITE_ROCKET, 13, 25, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM17, EVENT_TEAM_ROCKET_BASE_POPULATION
  14433. +   person_event SPRITE_ROCKET, 1, 4, $a, 0, 0, -1, -1, 0, 2, 1, TrainerGruntM18, EVENT_TEAM_ROCKET_BASE_POPULATION
  14434. +   person_event SPRITE_ROCKET, 14, 21, $8, 0, 0, -1, -1, 0, 2, 4, TrainerGruntM19, EVENT_TEAM_ROCKET_BASE_POPULATION
  14435. +   person_event SPRITE_POKE_BALL, 10, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6d20d, EVENT_TEAM_ROCKET_BASE_B2F_TM_THIEF
  14436. diff --git a/maps/TeamRocketBaseB3F.asm b/maps/TeamRocketBaseB3F.asm
  14437. index 9531879..91b2a83 100644
  14438. --- a/maps/TeamRocketBaseB3F.asm
  14439. +++ b/maps/TeamRocketBaseB3F.asm
  14440. @@ -587,17 +587,17 @@ TeamRocketBaseB3F_MapEventHeader:
  14441.  
  14442.  .PersonEvents:
  14443.     db 14
  14444. -   person_event SPRITE_LANCE, 14 + 4, 25 + 4, $6, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x6dffc, EVENT_TEAM_ROCKET_BASE_B3F_LANCE_PASSWORDS
  14445. -   person_event SPRITE_ROCKET, 3 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B3F_EXECUTIVE
  14446. -   person_event SPRITE_MOLTRES, 2 + 4, 7 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MoltresScript_0x6e091, EVENT_TEAM_ROCKET_BASE_POPULATION
  14447. -   person_event SPRITE_ROCKET_GIRL, 7 + 4, 21 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerGruntF5, EVENT_TEAM_ROCKET_BASE_POPULATION
  14448. -   person_event SPRITE_ROCKET, 14 + 4, 5 + 4, $a, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM28, EVENT_TEAM_ROCKET_BASE_POPULATION
  14449. -   person_event SPRITE_SCIENTIST, 11 + 4, 23 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerScientistRoss, EVENT_TEAM_ROCKET_BASE_POPULATION
  14450. -   person_event SPRITE_SCIENTIST, 15 + 4, 11 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerScientistMitch, EVENT_TEAM_ROCKET_BASE_POPULATION
  14451. -   person_event SPRITE_ROCKET, 14 + 4, 24 + 4, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x6e048, EVENT_TEAM_ROCKET_BASE_POPULATION
  14452. -   person_event SPRITE_SILVER, 5 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_TEAM_ROCKET_BASE
  14453. -   person_event SPRITE_POKE_BALL, 12 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e120, EVENT_TEAM_ROCKET_BASE_B3F_PROTEIN
  14454. -   person_event SPRITE_POKE_BALL, 12 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e122, EVENT_TEAM_ROCKET_BASE_B3F_X_SPECIAL
  14455. -   person_event SPRITE_POKE_BALL, 9 + 4, 28 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e124, EVENT_TEAM_ROCKET_BASE_B3F_FULL_HEAL
  14456. -   person_event SPRITE_POKE_BALL, 2 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e126, EVENT_TEAM_ROCKET_BASE_B3F_ICE_HEAL
  14457. -   person_event SPRITE_POKE_BALL, 10 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e128, EVENT_TEAM_ROCKET_BASE_B3F_ULTRA_BALL
  14458. +   person_event SPRITE_LANCE, 14, 25, $6, 0, 0, -1, -1, 0, 0, 0, LanceScript_0x6dffc, EVENT_TEAM_ROCKET_BASE_B3F_LANCE_PASSWORDS
  14459. +   person_event SPRITE_ROCKET, 3, 8, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_TEAM_ROCKET_BASE_B3F_EXECUTIVE
  14460. +   person_event SPRITE_MOLTRES, 2, 7, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, MoltresScript_0x6e091, EVENT_TEAM_ROCKET_BASE_POPULATION
  14461. +   person_event SPRITE_ROCKET_GIRL, 7, 21, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 0, TrainerGruntF5, EVENT_TEAM_ROCKET_BASE_POPULATION
  14462. +   person_event SPRITE_ROCKET, 14, 5, $a, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM28, EVENT_TEAM_ROCKET_BASE_POPULATION
  14463. +   person_event SPRITE_SCIENTIST, 11, 23, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 0, TrainerScientistRoss, EVENT_TEAM_ROCKET_BASE_POPULATION
  14464. +   person_event SPRITE_SCIENTIST, 15, 11, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerScientistMitch, EVENT_TEAM_ROCKET_BASE_POPULATION
  14465. +   person_event SPRITE_ROCKET, 14, 24, $6, 0, 0, -1, -1, 0, 0, 0, RocketScript_0x6e048, EVENT_TEAM_ROCKET_BASE_POPULATION
  14466. +   person_event SPRITE_SILVER, 5, 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_TEAM_ROCKET_BASE
  14467. +   person_event SPRITE_POKE_BALL, 12, 1, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e120, EVENT_TEAM_ROCKET_BASE_B3F_PROTEIN
  14468. +   person_event SPRITE_POKE_BALL, 12, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e122, EVENT_TEAM_ROCKET_BASE_B3F_X_SPECIAL
  14469. +   person_event SPRITE_POKE_BALL, 9, 28, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e124, EVENT_TEAM_ROCKET_BASE_B3F_FULL_HEAL
  14470. +   person_event SPRITE_POKE_BALL, 2, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e126, EVENT_TEAM_ROCKET_BASE_B3F_ICE_HEAL
  14471. +   person_event SPRITE_POKE_BALL, 10, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x6e128, EVENT_TEAM_ROCKET_BASE_B3F_ULTRA_BALL
  14472. diff --git a/maps/TimeCapsule.asm b/maps/TimeCapsule.asm
  14473. index 64c7aa4..c568f3f 100644
  14474. --- a/maps/TimeCapsule.asm
  14475. +++ b/maps/TimeCapsule.asm
  14476. @@ -73,5 +73,5 @@ TimeCapsule_MapEventHeader:
  14477.  
  14478.  .PersonEvents:
  14479.     db 2
  14480. -   person_event SPRITE_CHRIS, 4 + 4, 3 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x19351a, EVENT_GAVE_KURT_APRICORNS
  14481. -   person_event SPRITE_CHRIS, 4 + 4, 6 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x19351a, EVENT_RECEIVED_BALLS_FROM_KURT
  14482. +   person_event SPRITE_CHRIS, 4, 3, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x19351a, EVENT_GAVE_KURT_APRICORNS
  14483. +   person_event SPRITE_CHRIS, 4, 6, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x19351a, EVENT_RECEIVED_BALLS_FROM_KURT
  14484. diff --git a/maps/TinTower1F.asm b/maps/TinTower1F.asm
  14485. index 5b16496..f9bd586 100644
  14486. --- a/maps/TinTower1F.asm
  14487. +++ b/maps/TinTower1F.asm
  14488. @@ -534,13 +534,13 @@ TinTower1F_MapEventHeader:
  14489.  
  14490.  .PersonEvents:
  14491.     db 10
  14492. -   person_event SPRITE_SUICUNE, 9 + 4, 9 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_SUICUNE
  14493. -   person_event SPRITE_RAIKOU, 9 + 4, 7 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_RAIKOU
  14494. -   person_event SPRITE_ENTEI, 9 + 4, 12 + 4, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_ENTEI
  14495. -   person_event SPRITE_SUPER_NERD, 3 + 4, 8 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x1851c8, EVENT_TIN_TOWER_1F_EUSINE
  14496. -   person_event SPRITE_SAGE, 9 + 4, 5 + 4, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185173, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14497. -   person_event SPRITE_SAGE, 11 + 4, 11 + 4, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185176, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14498. -   person_event SPRITE_SAGE, 6 + 4, 14 + 4, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185179, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14499. -   person_event SPRITE_SAGE, 2 + 4, 4 + 4, $4, 1, 0, -1, -1, 0, 0, 0, SageScript_0x18517c, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14500. -   person_event SPRITE_SAGE, 1 + 4, 9 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185188, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14501. -   person_event SPRITE_SAGE, 2 + 4, 14 + 4, $5, 0, 1, -1, -1, 0, 0, 0, SageScript_0x1851bc, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14502. +   person_event SPRITE_SUICUNE, 9, 9, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_SUICUNE
  14503. +   person_event SPRITE_RAIKOU, 9, 7, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_RAIKOU
  14504. +   person_event SPRITE_ENTEI, 9, 12, $1, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, EVENT_TIN_TOWER_1F_ENTEI
  14505. +   person_event SPRITE_SUPER_NERD, 3, 8, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SuperNerdScript_0x1851c8, EVENT_TIN_TOWER_1F_EUSINE
  14506. +   person_event SPRITE_SAGE, 9, 5, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185173, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14507. +   person_event SPRITE_SAGE, 11, 11, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185176, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14508. +   person_event SPRITE_SAGE, 6, 14, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185179, EVENT_TIN_TOWER_1F_WISE_TRIO_1
  14509. +   person_event SPRITE_SAGE, 2, 4, $4, 1, 0, -1, -1, 0, 0, 0, SageScript_0x18517c, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14510. +   person_event SPRITE_SAGE, 1, 9, $6, 0, 0, -1, -1, 0, 0, 0, SageScript_0x185188, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14511. +   person_event SPRITE_SAGE, 2, 14, $5, 0, 1, -1, -1, 0, 0, 0, SageScript_0x1851bc, EVENT_TIN_TOWER_1F_WISE_TRIO_2
  14512. diff --git a/maps/TinTower3F.asm b/maps/TinTower3F.asm
  14513. index df4d85d..308dac3 100644
  14514. --- a/maps/TinTower3F.asm
  14515. +++ b/maps/TinTower3F.asm
  14516. @@ -25,4 +25,4 @@ TinTower3F_MapEventHeader:
  14517.  
  14518.  .PersonEvents:
  14519.     db 1
  14520. -   person_event SPRITE_POKE_BALL, 14 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a37, EVENT_TIN_TOWER_3F_FULL_HEAL
  14521. +   person_event SPRITE_POKE_BALL, 14, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a37, EVENT_TIN_TOWER_3F_FULL_HEAL
  14522. diff --git a/maps/TinTower4F.asm b/maps/TinTower4F.asm
  14523. index 7021b75..9532ad7 100644
  14524. --- a/maps/TinTower4F.asm
  14525. +++ b/maps/TinTower4F.asm
  14526. @@ -38,6 +38,6 @@ TinTower4F_MapEventHeader:
  14527.  
  14528.  .PersonEvents:
  14529.     db 3
  14530. -   person_event SPRITE_POKE_BALL, 10 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a58, EVENT_TIN_TOWER_4F_ULTRA_BALL
  14531. -   person_event SPRITE_POKE_BALL, 14 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a5a, EVENT_TIN_TOWER_4F_PP_UP
  14532. -   person_event SPRITE_POKE_BALL, 12 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a5c, EVENT_TIN_TOWER_4F_ESCAPE_ROPE
  14533. +   person_event SPRITE_POKE_BALL, 10, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a58, EVENT_TIN_TOWER_4F_ULTRA_BALL
  14534. +   person_event SPRITE_POKE_BALL, 14, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a5a, EVENT_TIN_TOWER_4F_PP_UP
  14535. +   person_event SPRITE_POKE_BALL, 12, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185a5c, EVENT_TIN_TOWER_4F_ESCAPE_ROPE
  14536. diff --git a/maps/TinTower5F.asm b/maps/TinTower5F.asm
  14537. index 05a65e6..1425010 100644
  14538. --- a/maps/TinTower5F.asm
  14539. +++ b/maps/TinTower5F.asm
  14540. @@ -37,4 +37,4 @@ TinTower5F_MapEventHeader:
  14541.  
  14542.  .PersonEvents:
  14543.     db 1
  14544. -   person_event SPRITE_POKE_BALL, 9 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185aa9, EVENT_TIN_TOWER_5F_RARE_CANDY
  14545. +   person_event SPRITE_POKE_BALL, 9, 9, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185aa9, EVENT_TIN_TOWER_5F_RARE_CANDY
  14546. diff --git a/maps/TinTower6F.asm b/maps/TinTower6F.asm
  14547. index 43b0234..3084eea 100644
  14548. --- a/maps/TinTower6F.asm
  14549. +++ b/maps/TinTower6F.asm
  14550. @@ -25,4 +25,4 @@ TinTower6F_MapEventHeader:
  14551.  
  14552.  .PersonEvents:
  14553.     db 1
  14554. -   person_event SPRITE_POKE_BALL, 8 + 4, 8 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185ae4, EVENT_TIN_TOWER_6F_MAX_POTION
  14555. +   person_event SPRITE_POKE_BALL, 8, 8, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185ae4, EVENT_TIN_TOWER_6F_MAX_POTION
  14556. diff --git a/maps/TinTower7F.asm b/maps/TinTower7F.asm
  14557. index 49cd7e3..868539f 100644
  14558. --- a/maps/TinTower7F.asm
  14559. +++ b/maps/TinTower7F.asm
  14560. @@ -28,4 +28,4 @@ TinTower7F_MapEventHeader:
  14561.  
  14562.  .PersonEvents:
  14563.     db 1
  14564. -   person_event SPRITE_POKE_BALL, 1 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b05, EVENT_TIN_TOWER_7F_MAX_REVIVE
  14565. +   person_event SPRITE_POKE_BALL, 1, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b05, EVENT_TIN_TOWER_7F_MAX_REVIVE
  14566. diff --git a/maps/TinTower8F.asm b/maps/TinTower8F.asm
  14567. index d400732..59cce2a 100644
  14568. --- a/maps/TinTower8F.asm
  14569. +++ b/maps/TinTower8F.asm
  14570. @@ -35,6 +35,6 @@ TinTower8F_MapEventHeader:
  14571.  
  14572.  .PersonEvents:
  14573.     db 3
  14574. -   person_event SPRITE_POKE_BALL, 13 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b35, EVENT_TIN_TOWER_8F_NUGGET
  14575. -   person_event SPRITE_POKE_BALL, 6 + 4, 11 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b37, EVENT_TIN_TOWER_8F_MAX_ELIXER
  14576. -   person_event SPRITE_POKE_BALL, 1 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b39, EVENT_TIN_TOWER_8F_FULL_RESTORE
  14577. +   person_event SPRITE_POKE_BALL, 13, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b35, EVENT_TIN_TOWER_8F_NUGGET
  14578. +   person_event SPRITE_POKE_BALL, 6, 11, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b37, EVENT_TIN_TOWER_8F_MAX_ELIXER
  14579. +   person_event SPRITE_POKE_BALL, 1, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b39, EVENT_TIN_TOWER_8F_FULL_RESTORE
  14580. diff --git a/maps/TinTower9F.asm b/maps/TinTower9F.asm
  14581. index 0e3e5b3..c76deab 100644
  14582. --- a/maps/TinTower9F.asm
  14583. +++ b/maps/TinTower9F.asm
  14584. @@ -38,4 +38,4 @@ TinTower9F_MapEventHeader:
  14585.  
  14586.  .PersonEvents:
  14587.     db 1
  14588. -   person_event SPRITE_POKE_BALL, 1 + 4, 9 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b88, EVENT_TIN_TOWER_9F_HP_UP
  14589. +   person_event SPRITE_POKE_BALL, 1, 9, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x185b88, EVENT_TIN_TOWER_9F_HP_UP
  14590. diff --git a/maps/TinTowerRoof.asm b/maps/TinTowerRoof.asm
  14591. index 0dbf79e..f9aaa2f 100644
  14592. --- a/maps/TinTowerRoof.asm
  14593. +++ b/maps/TinTowerRoof.asm
  14594. @@ -60,4 +60,4 @@ TinTowerRoof_MapEventHeader:
  14595.  
  14596.  .PersonEvents:
  14597.     db 1
  14598. -   person_event SPRITE_HO_OH, 5 + 4, 9 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, HoOhScript_0x77244, EVENT_TIN_TOWER_ROOF_HO_OH
  14599. +   person_event SPRITE_HO_OH, 5, 9, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, HoOhScript_0x77244, EVENT_TIN_TOWER_ROOF_HO_OH
  14600. diff --git a/maps/TohjoFalls.asm b/maps/TohjoFalls.asm
  14601. index 5a1855e..7d6cc15 100644
  14602. --- a/maps/TohjoFalls.asm
  14603. +++ b/maps/TohjoFalls.asm
  14604. @@ -25,4 +25,4 @@ TohjoFalls_MapEventHeader:
  14605.  
  14606.  .PersonEvents:
  14607.     db 1
  14608. -   person_event SPRITE_POKE_BALL, 6 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18db02, EVENT_TOHJO_FALLS_MOON_STONE
  14609. +   person_event SPRITE_POKE_BALL, 6, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18db02, EVENT_TOHJO_FALLS_MOON_STONE
  14610. diff --git a/maps/TradeCenter.asm b/maps/TradeCenter.asm
  14611. index 4f15118..8df21cb 100644
  14612. --- a/maps/TradeCenter.asm
  14613. +++ b/maps/TradeCenter.asm
  14614. @@ -73,5 +73,5 @@ TradeCenter_MapEventHeader:
  14615.  
  14616.  .PersonEvents:
  14617.     db 2
  14618. -   person_event SPRITE_CHRIS, 4 + 4, 3 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_GAVE_KURT_APRICORNS
  14619. -   person_event SPRITE_CHRIS, 4 + 4, 6 + 4, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_RECEIVED_BALLS_FROM_KURT
  14620. +   person_event SPRITE_CHRIS, 4, 3, $9, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_GAVE_KURT_APRICORNS
  14621. +   person_event SPRITE_CHRIS, 4, 6, $8, 0, 0, -1, -1, 0, 0, 0, ChrisScript_0x193499, EVENT_RECEIVED_BALLS_FROM_KURT
  14622. diff --git a/maps/TrainerHouse1F.asm b/maps/TrainerHouse1F.asm
  14623. index b07cc85..fbed606 100644
  14624. --- a/maps/TrainerHouse1F.asm
  14625. +++ b/maps/TrainerHouse1F.asm
  14626. @@ -151,8 +151,8 @@ TrainerHouse1F_MapEventHeader:
  14627.  
  14628.  .PersonEvents:
  14629.     db 5
  14630. -   person_event SPRITE_RECEPTIONIST, 11 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x9af67, -1
  14631. -   person_event SPRITE_COOLTRAINER_M, 11 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x9af6a, -1
  14632. -   person_event SPRITE_COOLTRAINER_F, 2 + 4, 6 + 4, $6, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x9af6d, -1
  14633. -   person_event SPRITE_YOUNGSTER, 8 + 4, 4 + 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x9af70, -1
  14634. -   person_event SPRITE_GENTLEMAN, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x9af73, -1
  14635. +   person_event SPRITE_RECEPTIONIST, 11, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ReceptionistScript_0x9af67, -1
  14636. +   person_event SPRITE_COOLTRAINER_M, 11, 7, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x9af6a, -1
  14637. +   person_event SPRITE_COOLTRAINER_F, 2, 6, $6, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerFScript_0x9af6d, -1
  14638. +   person_event SPRITE_YOUNGSTER, 8, 4, $5, 0, 2, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x9af70, -1
  14639. +   person_event SPRITE_GENTLEMAN, 4, 2, $9, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x9af73, -1
  14640. diff --git a/maps/TrainerHouseB1F.asm b/maps/TrainerHouseB1F.asm
  14641. index 99a1723..7f58cdf 100644
  14642. --- a/maps/TrainerHouseB1F.asm
  14643. +++ b/maps/TrainerHouseB1F.asm
  14644. @@ -184,5 +184,5 @@ TrainerHouseB1F_MapEventHeader:
  14645.  
  14646.  .PersonEvents:
  14647.     db 2
  14648. -   person_event SPRITE_RECEPTIONIST, 1 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, -1
  14649. -   person_event SPRITE_CHRIS, 11 + 4, 6 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, -1
  14650. +   person_event SPRITE_RECEPTIONIST, 1, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, ObjectEvent, -1
  14651. +   person_event SPRITE_CHRIS, 11, 6, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, ObjectEvent, -1
  14652. diff --git a/maps/UndergroundPathSwitchRoomEntrances.asm b/maps/UndergroundPathSwitchRoomEntrances.asm
  14653. index dec260f..63222b8 100644
  14654. --- a/maps/UndergroundPathSwitchRoomEntrances.asm
  14655. +++ b/maps/UndergroundPathSwitchRoomEntrances.asm
  14656. @@ -923,14 +923,14 @@ UndergroundPathSwitchRoomEntrances_MapEventHeader:
  14657.  
  14658.  .PersonEvents:
  14659.     db 11
  14660. -   person_event SPRITE_PHARMACIST, 12 + 4, 9 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBurglarDuncan, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14661. -   person_event SPRITE_PHARMACIST, 8 + 4, 4 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBurglarEddie, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14662. -   person_event SPRITE_ROCKET, 2 + 4, 17 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM13, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14663. -   person_event SPRITE_ROCKET, 2 + 4, 11 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM11, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14664. -   person_event SPRITE_ROCKET, 2 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM25, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14665. -   person_event SPRITE_ROCKET_GIRL, 12 + 4, 19 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerGruntF3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14666. -   person_event SPRITE_TEACHER, 27 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x7ca7d, -1
  14667. -   person_event SPRITE_SUPER_NERD, 27 + 4, 19 + 4, $6, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7ca7a, -1
  14668. -   person_event SPRITE_POKE_BALL, 12 + 4, 1 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ce7d, EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_SMOKE_BALL
  14669. -   person_event SPRITE_POKE_BALL, 9 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ce7f, EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_FULL_HEAL
  14670. -   person_event SPRITE_SILVER, 3 + 4, 23 + 4, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_UNDERGROUND_PATH
  14671. +   person_event SPRITE_PHARMACIST, 12, 9, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBurglarDuncan, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14672. +   person_event SPRITE_PHARMACIST, 8, 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 2, 2, TrainerBurglarEddie, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14673. +   person_event SPRITE_ROCKET, 2, 17, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM13, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14674. +   person_event SPRITE_ROCKET, 2, 11, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM11, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14675. +   person_event SPRITE_ROCKET, 2, 3, $6, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM25, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14676. +   person_event SPRITE_ROCKET_GIRL, 12, 19, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerGruntF3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14677. +   person_event SPRITE_TEACHER, 27, 3, $6, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x7ca7d, -1
  14678. +   person_event SPRITE_SUPER_NERD, 27, 19, $6, 0, 0, -1, -1, 0, 0, 0, SuperNerdScript_0x7ca7a, -1
  14679. +   person_event SPRITE_POKE_BALL, 12, 1, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ce7d, EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_SMOKE_BALL
  14680. +   person_event SPRITE_POKE_BALL, 9, 14, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7ce7f, EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_FULL_HEAL
  14681. +   person_event SPRITE_SILVER, 3, 23, $6, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_UNDERGROUND_PATH
  14682. diff --git a/maps/UndergroundWarehouse.asm b/maps/UndergroundWarehouse.asm
  14683. index 3419eba..3f73eed 100644
  14684. --- a/maps/UndergroundWarehouse.asm
  14685. +++ b/maps/UndergroundWarehouse.asm
  14686. @@ -222,10 +222,10 @@ UndergroundWarehouse_MapEventHeader:
  14687.  
  14688.  .PersonEvents:
  14689.     db 7
  14690. -   person_event SPRITE_ROCKET, 8 + 4, 9 + 4, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM24, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14691. -   person_event SPRITE_ROCKET, 15 + 4, 8 + 4, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM14, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14692. -   person_event SPRITE_ROCKET, 3 + 4, 14 + 4, $9, 0, 0, -1, -1, 0, 2, 4, TrainerGruntM15, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14693. -   person_event SPRITE_GENTLEMAN, 8 + 4, 12 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x7d9bf, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14694. -   person_event SPRITE_POKE_BALL, 15 + 4, 18 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e4, EVENT_UNDERGROUND_WAREHOUSE_MAX_ETHER
  14695. -   person_event SPRITE_POKE_BALL, 9 + 4, 13 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e6, EVENT_UNDERGROUND_WAREHOUSE_TM_SLEEP_TALK
  14696. -   person_event SPRITE_POKE_BALL, 1 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e8, EVENT_UNDERGROUND_WAREHOUSE_ULTRA_BALL
  14697. +   person_event SPRITE_ROCKET, 8, 9, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM24, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14698. +   person_event SPRITE_ROCKET, 15, 8, $7, 0, 0, -1, -1, 0, 2, 3, TrainerGruntM14, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14699. +   person_event SPRITE_ROCKET, 3, 14, $9, 0, 0, -1, -1, 0, 2, 4, TrainerGruntM15, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14700. +   person_event SPRITE_GENTLEMAN, 8, 12, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x7d9bf, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
  14701. +   person_event SPRITE_POKE_BALL, 15, 18, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e4, EVENT_UNDERGROUND_WAREHOUSE_MAX_ETHER
  14702. +   person_event SPRITE_POKE_BALL, 9, 13, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e6, EVENT_UNDERGROUND_WAREHOUSE_TM_SLEEP_TALK
  14703. +   person_event SPRITE_POKE_BALL, 1, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7d9e8, EVENT_UNDERGROUND_WAREHOUSE_ULTRA_BALL
  14704. diff --git a/maps/UnionCave1F.asm b/maps/UnionCave1F.asm
  14705. index dfb3383..d663d2f 100644
  14706. --- a/maps/UnionCave1F.asm
  14707. +++ b/maps/UnionCave1F.asm
  14708. @@ -207,12 +207,12 @@ UnionCave1F_MapEventHeader:
  14709.  
  14710.  .PersonEvents:
  14711.     db 9
  14712. -   person_event SPRITE_POKEFAN_M, 6 + 4, 3 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerDaniel, -1
  14713. -   person_event SPRITE_SUPER_NERD, 21 + 4, 4 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacLarry, -1
  14714. -   person_event SPRITE_POKEFAN_M, 8 + 4, 11 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerRussell, -1
  14715. -   person_event SPRITE_FISHER, 27 + 4, 15 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerFirebreatherRay, -1
  14716. -   person_event SPRITE_FISHER, 19 + 4, 14 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerFirebreatherBill, -1
  14717. -   person_event SPRITE_POKE_BALL, 21 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c00, EVENT_UNION_CAVE_1F_GREAT_BALL
  14718. -   person_event SPRITE_POKE_BALL, 2 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c02, EVENT_UNION_CAVE_1F_X_ATTACK
  14719. -   person_event SPRITE_POKE_BALL, 17 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c04, EVENT_UNION_CAVE_1F_POTION
  14720. -   person_event SPRITE_POKE_BALL, 33 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c06, EVENT_UNION_CAVE_1F_AWAKENING
  14721. +   person_event SPRITE_POKEFAN_M, 6, 3, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerHikerDaniel, -1
  14722. +   person_event SPRITE_SUPER_NERD, 21, 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacLarry, -1
  14723. +   person_event SPRITE_POKEFAN_M, 8, 11, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 1, TrainerHikerRussell, -1
  14724. +   person_event SPRITE_FISHER, 27, 15, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerFirebreatherRay, -1
  14725. +   person_event SPRITE_FISHER, 19, 14, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 4, TrainerFirebreatherBill, -1
  14726. +   person_event SPRITE_POKE_BALL, 21, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c00, EVENT_UNION_CAVE_1F_GREAT_BALL
  14727. +   person_event SPRITE_POKE_BALL, 2, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c02, EVENT_UNION_CAVE_1F_X_ATTACK
  14728. +   person_event SPRITE_POKE_BALL, 17, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c04, EVENT_UNION_CAVE_1F_POTION
  14729. +   person_event SPRITE_POKE_BALL, 33, 12, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x59c06, EVENT_UNION_CAVE_1F_AWAKENING
  14730. diff --git a/maps/UnionCaveB1F.asm b/maps/UnionCaveB1F.asm
  14731. index aa84b1b..44f6669 100644
  14732. --- a/maps/UnionCaveB1F.asm
  14733. +++ b/maps/UnionCaveB1F.asm
  14734. @@ -163,10 +163,10 @@ UnionCaveB1F_MapEventHeader:
  14735.  
  14736.  .PersonEvents:
  14737.     db 7
  14738. -   person_event SPRITE_POKEFAN_M, 4 + 4, 9 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerPhillip, -1
  14739. -   person_event SPRITE_POKEFAN_M, 7 + 4, 16 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerLeonard, -1
  14740. -   person_event SPRITE_SUPER_NERD, 32 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacAndrew, -1
  14741. -   person_event SPRITE_SUPER_NERD, 30 + 4, 17 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacCalvin, -1
  14742. -   person_event SPRITE_POKE_BALL, 16 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a016, EVENT_UNION_CAVE_B1F_TM_SWIFT
  14743. -   person_event SPRITE_BOULDER, 10 + 4, 7 + 4, $19, 0, 0, -1, -1, 0, 0, 0, UnionCaveB1FBoulder, -1
  14744. -   person_event SPRITE_POKE_BALL, 23 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a018, EVENT_UNION_CAVE_B1F_X_DEFEND
  14745. +   person_event SPRITE_POKEFAN_M, 4, 9, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerPhillip, -1
  14746. +   person_event SPRITE_POKEFAN_M, 7, 16, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerHikerLeonard, -1
  14747. +   person_event SPRITE_SUPER_NERD, 32, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacAndrew, -1
  14748. +   person_event SPRITE_SUPER_NERD, 30, 17, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacCalvin, -1
  14749. +   person_event SPRITE_POKE_BALL, 16, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a016, EVENT_UNION_CAVE_B1F_TM_SWIFT
  14750. +   person_event SPRITE_BOULDER, 10, 7, $19, 0, 0, -1, -1, 0, 0, 0, UnionCaveB1FBoulder, -1
  14751. +   person_event SPRITE_POKE_BALL, 23, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a018, EVENT_UNION_CAVE_B1F_X_DEFEND
  14752. diff --git a/maps/UnionCaveB2F.asm b/maps/UnionCaveB2F.asm
  14753. index f14ef53..34f0b61 100644
  14754. --- a/maps/UnionCaveB2F.asm
  14755. +++ b/maps/UnionCaveB2F.asm
  14756. @@ -152,9 +152,9 @@ UnionCaveB2F_MapEventHeader:
  14757.  
  14758.  .PersonEvents:
  14759.     db 6
  14760. -   person_event SPRITE_ROCKER, 19 + 4, 15 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermNick, -1
  14761. -   person_event SPRITE_COOLTRAINER_F, 13 + 4, 5 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfGwen, -1
  14762. -   person_event SPRITE_COOLTRAINER_F, 30 + 4, 3 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfEmma, -1
  14763. -   person_event SPRITE_POKE_BALL, 2 + 4, 16 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a36a, EVENT_UNION_CAVE_B2F_ELIXER
  14764. -   person_event SPRITE_POKE_BALL, 19 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a36c, EVENT_UNION_CAVE_B2F_HYPER_POTION
  14765. -   person_event SPRITE_SURF, 31 + 4, 11 + 4, $24, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SurfScript_0x5a31f, EVENT_UNION_CAVE_B2F_LAPRAS
  14766. +   person_event SPRITE_ROCKER, 19, 15, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainermNick, -1
  14767. +   person_event SPRITE_COOLTRAINER_F, 13, 5, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 1, TrainerCooltrainerfGwen, -1
  14768. +   person_event SPRITE_COOLTRAINER_F, 30, 3, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerCooltrainerfEmma, -1
  14769. +   person_event SPRITE_POKE_BALL, 2, 16, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a36a, EVENT_UNION_CAVE_B2F_ELIXER
  14770. +   person_event SPRITE_POKE_BALL, 19, 12, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x5a36c, EVENT_UNION_CAVE_B2F_HYPER_POTION
  14771. +   person_event SPRITE_SURF, 31, 11, $24, 1, 1, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SurfScript_0x5a31f, EVENT_UNION_CAVE_B2F_LAPRAS
  14772. diff --git a/maps/VermilionCity.asm b/maps/VermilionCity.asm
  14773. index 640de85..aeb998a 100644
  14774. --- a/maps/VermilionCity.asm
  14775. +++ b/maps/VermilionCity.asm
  14776. @@ -294,9 +294,9 @@ VermilionCity_MapEventHeader:
  14777.  
  14778.  .PersonEvents:
  14779.     db 6
  14780. -   person_event SPRITE_TEACHER, 9 + 4, 18 + 4, $2, 1, 1, -1, -1, 0, 0, 0, TeacherScript_0x1aa983, -1
  14781. -   person_event SPRITE_GRAMPS, 6 + 4, 23 + 4, $9, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1aa986, -1
  14782. -   person_event SPRITE_MACHOP, 7 + 4, 26 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, VermilionMachop, -1
  14783. -   person_event SPRITE_SUPER_NERD, 16 + 4, 14 + 4, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x1aa99b, -1
  14784. -   person_event SPRITE_BIG_SNORLAX, 8 + 4, 34 + 4, $15, 0, 0, -1, -1, 0, 0, 0, VermilionSnorlax, EVENT_VERMILION_CITY_SNORLAX
  14785. -   person_event SPRITE_POKEFAN_M, 12 + 4, 31 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, VermilionGymBadgeGuy, -1
  14786. +   person_event SPRITE_TEACHER, 9, 18, $2, 1, 1, -1, -1, 0, 0, 0, TeacherScript_0x1aa983, -1
  14787. +   person_event SPRITE_GRAMPS, 6, 23, $9, 0, 0, -1, -1, 0, 0, 0, GrampsScript_0x1aa986, -1
  14788. +   person_event SPRITE_MACHOP, 7, 26, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, VermilionMachop, -1
  14789. +   person_event SPRITE_SUPER_NERD, 16, 14, $2, 1, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, SuperNerdScript_0x1aa99b, -1
  14790. +   person_event SPRITE_BIG_SNORLAX, 8, 34, $15, 0, 0, -1, -1, 0, 0, 0, VermilionSnorlax, EVENT_VERMILION_CITY_SNORLAX
  14791. +   person_event SPRITE_POKEFAN_M, 12, 31, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, VermilionGymBadgeGuy, -1
  14792. diff --git a/maps/VermilionGym.asm b/maps/VermilionGym.asm
  14793. index 2178c50..911f1e6 100644
  14794. --- a/maps/VermilionGym.asm
  14795. +++ b/maps/VermilionGym.asm
  14796. @@ -287,8 +287,8 @@ VermilionGym_MapEventHeader:
  14797.  
  14798.  .PersonEvents:
  14799.     db 5
  14800. -   person_event SPRITE_SURGE, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, SurgeScript_0x1920a5, -1
  14801. -   person_event SPRITE_GENTLEMAN, 8 + 4, 8 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerGentlemanGregory, -1
  14802. -   person_event SPRITE_ROCKER, 7 + 4, 4 + 4, $6, 0, 3, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerGuitaristVincent, -1
  14803. -   person_event SPRITE_SUPER_NERD, 10 + 4, 0 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerJugglerHorton, -1
  14804. -   person_event SPRITE_GYM_GUY, 15 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, VermilionGymGuyScript, -1
  14805. +   person_event SPRITE_SURGE, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, SurgeScript_0x1920a5, -1
  14806. +   person_event SPRITE_GENTLEMAN, 8, 8, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerGentlemanGregory, -1
  14807. +   person_event SPRITE_ROCKER, 7, 4, $6, 0, 3, -1, -1, (1 << 3) | PAL_OW_RED, 2, 3, TrainerGuitaristVincent, -1
  14808. +   person_event SPRITE_SUPER_NERD, 10, 0, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 4, TrainerJugglerHorton, -1
  14809. +   person_event SPRITE_GYM_GUY, 15, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 1, VermilionGymGuyScript, -1
  14810. diff --git a/maps/VermilionHouseDiglettsCaveSpeechHouse.asm b/maps/VermilionHouseDiglettsCaveSpeechHouse.asm
  14811. index f664bad..9aec5f3 100644
  14812. --- a/maps/VermilionHouseDiglettsCaveSpeechHouse.asm
  14813. +++ b/maps/VermilionHouseDiglettsCaveSpeechHouse.asm
  14814. @@ -34,4 +34,4 @@ VermilionHouseDiglettsCaveSpeechHouse_MapEventHeader:
  14815.  
  14816.  .PersonEvents:
  14817.     db 1
  14818. -   person_event SPRITE_GENTLEMAN, 3 + 4, 1 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x192031, -1
  14819. +   person_event SPRITE_GENTLEMAN, 3, 1, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, GentlemanScript_0x192031, -1
  14820. diff --git a/maps/VermilionHouseFishingSpeechHouse.asm b/maps/VermilionHouseFishingSpeechHouse.asm
  14821. index 69ad85a..0081bac 100644
  14822. --- a/maps/VermilionHouseFishingSpeechHouse.asm
  14823. +++ b/maps/VermilionHouseFishingSpeechHouse.asm
  14824. @@ -65,4 +65,4 @@ VermilionHouseFishingSpeechHouse_MapEventHeader:
  14825.  
  14826.  .PersonEvents:
  14827.     db 1
  14828. -   person_event SPRITE_FISHING_GURU, 4 + 4, 2 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingDude, -1
  14829. +   person_event SPRITE_FISHING_GURU, 4, 2, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FishingDude, -1
  14830. diff --git a/maps/VermilionMagnetTrainSpeechHouse.asm b/maps/VermilionMagnetTrainSpeechHouse.asm
  14831. index 6214e05..6dbee12 100644
  14832. --- a/maps/VermilionMagnetTrainSpeechHouse.asm
  14833. +++ b/maps/VermilionMagnetTrainSpeechHouse.asm
  14834. @@ -48,5 +48,5 @@ VermilionMagnetTrainSpeechHouse_MapEventHeader:
  14835.  
  14836.  .PersonEvents:
  14837.     db 2
  14838. -   person_event SPRITE_POKEFAN_F, 3 + 4, 2 + 4, $8, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x191eb7, -1
  14839. -   person_event SPRITE_YOUNGSTER, 3 + 4, 0 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x191eba, -1
  14840. +   person_event SPRITE_POKEFAN_F, 3, 2, $8, 0, 0, -1, -1, 0, 0, 0, PokefanFScript_0x191eb7, -1
  14841. +   person_event SPRITE_YOUNGSTER, 3, 0, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x191eba, -1
  14842. diff --git a/maps/VermilionMart.asm b/maps/VermilionMart.asm
  14843. index 6c92d81..21ea465 100644
  14844. --- a/maps/VermilionMart.asm
  14845. +++ b/maps/VermilionMart.asm
  14846. @@ -48,6 +48,6 @@ VermilionMart_MapEventHeader:
  14847.  
  14848.  .PersonEvents:
  14849.     db 3
  14850. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x191f7e, -1
  14851. -   person_event SPRITE_SUPER_NERD, 2 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x191f85, -1
  14852. -   person_event SPRITE_BUENA, 6 + 4, 8 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BuenaScript_0x191f88, -1
  14853. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x191f7e, -1
  14854. +   person_event SPRITE_SUPER_NERD, 2, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x191f85, -1
  14855. +   person_event SPRITE_BUENA, 6, 8, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BuenaScript_0x191f88, -1
  14856. diff --git a/maps/VermilionPokeCenter1F.asm b/maps/VermilionPokeCenter1F.asm
  14857. index 2c4b302..428c85d 100644
  14858. --- a/maps/VermilionPokeCenter1F.asm
  14859. +++ b/maps/VermilionPokeCenter1F.asm
  14860. @@ -88,7 +88,7 @@ VermilionPokeCenter1F_MapEventHeader:
  14861.  
  14862.  .PersonEvents:
  14863.     db 4
  14864. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x191603, -1
  14865. -   person_event SPRITE_FISHING_GURU, 2 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x191606, -1
  14866. -   person_event SPRITE_SAILOR, 5 + 4, 6 + 4, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x19161a, -1
  14867. -   person_event SPRITE_BUG_CATCHER, 5 + 4, 1 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x19161d, -1
  14868. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x191603, -1
  14869. +   person_event SPRITE_FISHING_GURU, 2, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FishingGuruScript_0x191606, -1
  14870. +   person_event SPRITE_SAILOR, 5, 6, $4, 1, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, SailorScript_0x19161a, -1
  14871. +   person_event SPRITE_BUG_CATCHER, 5, 1, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x19161d, -1
  14872. diff --git a/maps/VermilionPort.asm b/maps/VermilionPort.asm
  14873. index 8abc250..93543dc 100644
  14874. --- a/maps/VermilionPort.asm
  14875. +++ b/maps/VermilionPort.asm
  14876. @@ -317,6 +317,6 @@ VermilionPort_MapEventHeader:
  14877.  
  14878.  .PersonEvents:
  14879.     db 3
  14880. -   person_event SPRITE_SAILOR, 17 + 4, 7 + 4, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x74dc4, EVENT_VERMILION_PORT_SAILOR_AT_GANGWAY
  14881. -   person_event SPRITE_SAILOR, 11 + 4, 6 + 4, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x74e97, -1
  14882. -   person_event SPRITE_SUPER_NERD, 11 + 4, 11 + 4, $5, 0, 2, -1, -1, 0, 0, 0, SuperNerdScript_0x74ee6, -1
  14883. +   person_event SPRITE_SAILOR, 17, 7, $7, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x74dc4, EVENT_VERMILION_PORT_SAILOR_AT_GANGWAY
  14884. +   person_event SPRITE_SAILOR, 11, 6, $9, 0, 0, -1, -1, 0, 0, 0, SailorScript_0x74e97, -1
  14885. +   person_event SPRITE_SUPER_NERD, 11, 11, $5, 0, 2, -1, -1, 0, 0, 0, SuperNerdScript_0x74ee6, -1
  14886. diff --git a/maps/VermilionPortPassage.asm b/maps/VermilionPortPassage.asm
  14887. index e9c3831..2910622 100644
  14888. --- a/maps/VermilionPortPassage.asm
  14889. +++ b/maps/VermilionPortPassage.asm
  14890. @@ -35,4 +35,4 @@ VermilionPortPassage_MapEventHeader:
  14891.  
  14892.  .PersonEvents:
  14893.     db 1
  14894. -   person_event SPRITE_TEACHER, 1 + 4, 17 + 4, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x7701a, -1
  14895. +   person_event SPRITE_TEACHER, 1, 17, $8, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x7701a, -1
  14896. diff --git a/maps/VictoryRoad.asm b/maps/VictoryRoad.asm
  14897. index 4567486..dbcfef7 100644
  14898. --- a/maps/VictoryRoad.asm
  14899. +++ b/maps/VictoryRoad.asm
  14900. @@ -263,9 +263,9 @@ VictoryRoad_MapEventHeader:
  14901.  
  14902.  .PersonEvents:
  14903.     db 6
  14904. -   person_event SPRITE_SILVER, 13 + 4, 18 + 4, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_VICTORY_ROAD
  14905. -   person_event SPRITE_POKE_BALL, 28 + 4, 3 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74529, EVENT_VICTORY_ROAD_TM_EARTHQUAKE
  14906. -   person_event SPRITE_POKE_BALL, 48 + 4, 12 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452b, EVENT_VICTORY_ROAD_MAX_REVIVE
  14907. -   person_event SPRITE_POKE_BALL, 29 + 4, 18 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452d, EVENT_VICTORY_ROAD_FULL_RESTORE
  14908. -   person_event SPRITE_POKE_BALL, 48 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452f, EVENT_VICTORY_ROAD_FULL_HEAL
  14909. -   person_event SPRITE_POKE_BALL, 38 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74531, EVENT_VICTORY_ROAD_HP_UP
  14910. +   person_event SPRITE_SILVER, 13, 18, $7, 0, 0, -1, -1, 0, 0, 0, ObjectEvent, EVENT_RIVAL_VICTORY_ROAD
  14911. +   person_event SPRITE_POKE_BALL, 28, 3, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74529, EVENT_VICTORY_ROAD_TM_EARTHQUAKE
  14912. +   person_event SPRITE_POKE_BALL, 48, 12, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452b, EVENT_VICTORY_ROAD_MAX_REVIVE
  14913. +   person_event SPRITE_POKE_BALL, 29, 18, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452d, EVENT_VICTORY_ROAD_FULL_RESTORE
  14914. +   person_event SPRITE_POKE_BALL, 48, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7452f, EVENT_VICTORY_ROAD_FULL_HEAL
  14915. +   person_event SPRITE_POKE_BALL, 38, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x74531, EVENT_VICTORY_ROAD_HP_UP
  14916. diff --git a/maps/VictoryRoadGate.asm b/maps/VictoryRoadGate.asm
  14917. index 94210fd..8562ccf 100644
  14918. --- a/maps/VictoryRoadGate.asm
  14919. +++ b/maps/VictoryRoadGate.asm
  14920. @@ -118,6 +118,6 @@ VictoryRoadGate_MapEventHeader:
  14921.  
  14922.  .PersonEvents:
  14923.     db 3
  14924. -   person_event SPRITE_OFFICER, 11 + 4, 8 + 4, $9, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x9ba03, -1
  14925. -   person_event SPRITE_BLACK_BELT, 5 + 4, 7 + 4, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x9ba21, EVENT_OPENED_MT_SILVER
  14926. -   person_event SPRITE_BLACK_BELT, 5 + 4, 12 + 4, $8, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x9ba24, EVENT_FOUGHT_SNORLAX
  14927. +   person_event SPRITE_OFFICER, 11, 8, $9, 0, 0, -1, -1, 0, 0, 0, OfficerScript_0x9ba03, -1
  14928. +   person_event SPRITE_BLACK_BELT, 5, 7, $9, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x9ba21, EVENT_OPENED_MT_SILVER
  14929. +   person_event SPRITE_BLACK_BELT, 5, 12, $8, 0, 0, -1, -1, 0, 0, 0, BlackBeltScript_0x9ba24, EVENT_FOUGHT_SNORLAX
  14930. diff --git a/maps/VioletCity.asm b/maps/VioletCity.asm
  14931. index d968bd6..18207d9 100644
  14932. --- a/maps/VioletCity.asm
  14933. +++ b/maps/VioletCity.asm
  14934. @@ -301,11 +301,11 @@ VioletCity_MapEventHeader:
  14935.  
  14936.  .PersonEvents:
  14937.     db 8
  14938. -   person_event SPRITE_FISHER, 16 + 4, 13 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a83bb, EVENT_VIOLET_CITY_EARL
  14939. -   person_event SPRITE_LASS, 28 + 4, 28 + 4, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x1a8403, -1
  14940. -   person_event SPRITE_SUPER_NERD, 14 + 4, 24 + 4, $2, 2, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a8406, -1
  14941. -   person_event SPRITE_GRAMPS, 20 + 4, 17 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x1a8409, -1
  14942. -   person_event SPRITE_YOUNGSTER, 18 + 4, 5 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a840c, -1
  14943. -   person_event SPRITE_FRUIT_TREE, 29 + 4, 14 + 4, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8425, -1
  14944. -   person_event SPRITE_POKE_BALL, 1 + 4, 4 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a8421, EVENT_VIOLET_CITY_PP_UP
  14945. -   person_event SPRITE_POKE_BALL, 5 + 4, 35 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a8423, EVENT_VIOLET_CITY_RARE_CANDY
  14946. +   person_event SPRITE_FISHER, 16, 13, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, FisherScript_0x1a83bb, EVENT_VIOLET_CITY_EARL
  14947. +   person_event SPRITE_LASS, 28, 28, $2, 2, 2, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x1a8403, -1
  14948. +   person_event SPRITE_SUPER_NERD, 14, 24, $2, 2, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, SuperNerdScript_0x1a8406, -1
  14949. +   person_event SPRITE_GRAMPS, 20, 17, $5, 0, 1, -1, -1, 0, 0, 0, GrampsScript_0x1a8409, -1
  14950. +   person_event SPRITE_YOUNGSTER, 18, 5, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a840c, -1
  14951. +   person_event SPRITE_FRUIT_TREE, 29, 14, $1, 0, 0, -1, -1, 0, 0, 0, FruitTreeScript_0x1a8425, -1
  14952. +   person_event SPRITE_POKE_BALL, 1, 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a8421, EVENT_VIOLET_CITY_PP_UP
  14953. +   person_event SPRITE_POKE_BALL, 5, 35, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x1a8423, EVENT_VIOLET_CITY_RARE_CANDY
  14954. diff --git a/maps/VioletGym.asm b/maps/VioletGym.asm
  14955. index 8e9da85..a3b0515 100644
  14956. --- a/maps/VioletGym.asm
  14957. +++ b/maps/VioletGym.asm
  14958. @@ -31,7 +31,7 @@ FalknerScript_0x683c2:
  14959.     setevent EVENT_BEAT_BIRD_KEEPER_ROD
  14960.     setevent EVENT_BEAT_BIRD_KEEPER_ABE
  14961.     domaptrigger ELMS_LAB, $2
  14962. -   specialphonecall ELMCALL_ASSISTANT
  14963. +   specialphonecall SPECIALCALL_ASSISTANT
  14964.     writetext UnknownText_0x685c8
  14965.     keeptextopen
  14966.     verbosegiveitem TM_MUD_SLAP, 1
  14967. @@ -294,7 +294,7 @@ VioletGym_MapEventHeader:
  14968.  
  14969.  .PersonEvents:
  14970.     db 4
  14971. -   person_event SPRITE_FALKNER, 1 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FalknerScript_0x683c2, -1
  14972. -   person_event SPRITE_YOUNGSTER, 6 + 4, 7 + 4, $8, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperRod, -1
  14973. -   person_event SPRITE_YOUNGSTER, 10 + 4, 2 + 4, $9, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperAbe, -1
  14974. -   person_event SPRITE_GYM_GUY, 13 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, VioletGymGuyScript, -1
  14975. +   person_event SPRITE_FALKNER, 1, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, FalknerScript_0x683c2, -1
  14976. +   person_event SPRITE_YOUNGSTER, 6, 7, $8, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperRod, -1
  14977. +   person_event SPRITE_YOUNGSTER, 10, 2, $9, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerBird_keeperAbe, -1
  14978. +   person_event SPRITE_GYM_GUY, 13, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, VioletGymGuyScript, -1
  14979. diff --git a/maps/VioletMart.asm b/maps/VioletMart.asm
  14980. index 95cd6c2..cd878e8 100644
  14981. --- a/maps/VioletMart.asm
  14982. +++ b/maps/VioletMart.asm
  14983. @@ -60,6 +60,6 @@ VioletMart_MapEventHeader:
  14984.  
  14985.  .PersonEvents:
  14986.     db 3
  14987. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x68295, -1
  14988. -   person_event SPRITE_GRANNY, 6 + 4, 7 + 4, $5, 0, 1, -1, -1, 0, 0, 0, GrannyScript_0x6829c, -1
  14989. -   person_event SPRITE_COOLTRAINER_M, 2 + 4, 5 + 4, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x6829f, -1
  14990. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x68295, -1
  14991. +   person_event SPRITE_GRANNY, 6, 7, $5, 0, 1, -1, -1, 0, 0, 0, GrannyScript_0x6829c, -1
  14992. +   person_event SPRITE_COOLTRAINER_M, 2, 5, $3, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x6829f, -1
  14993. diff --git a/maps/VioletNicknameSpeechHouse.asm b/maps/VioletNicknameSpeechHouse.asm
  14994. index 7245afc..5447e30 100644
  14995. --- a/maps/VioletNicknameSpeechHouse.asm
  14996. +++ b/maps/VioletNicknameSpeechHouse.asm
  14997. @@ -56,6 +56,6 @@ VioletNicknameSpeechHouse_MapEventHeader:
  14998.  
  14999.  .PersonEvents:
  15000.     db 3
  15001. -   person_event SPRITE_TEACHER, 3 + 4, 2 + 4, $9, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x693e9, -1
  15002. -   person_event SPRITE_LASS, 4 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x693ec, -1
  15003. -   person_event SPRITE_BIRD, 2 + 4, 5 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BirdScript_0x693ef, -1
  15004. +   person_event SPRITE_TEACHER, 3, 2, $9, 0, 0, -1, -1, 0, 0, 0, TeacherScript_0x693e9, -1
  15005. +   person_event SPRITE_LASS, 4, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x693ec, -1
  15006. +   person_event SPRITE_BIRD, 2, 5, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, BirdScript_0x693ef, -1
  15007. diff --git a/maps/VioletOnixTradeHouse.asm b/maps/VioletOnixTradeHouse.asm
  15008. index d031957..134c561 100644
  15009. --- a/maps/VioletOnixTradeHouse.asm
  15010. +++ b/maps/VioletOnixTradeHouse.asm
  15011. @@ -45,5 +45,5 @@ VioletOnixTradeHouse_MapEventHeader:
  15012.  
  15013.  .PersonEvents:
  15014.     db 2
  15015. -   person_event SPRITE_POKEFAN_M, 3 + 4, 2 + 4, $3, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x6998d, -1
  15016. -   person_event SPRITE_YOUNGSTER, 5 + 4, 6 + 4, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x69990, -1
  15017. +   person_event SPRITE_POKEFAN_M, 3, 2, $3, 0, 0, -1, -1, 0, 0, 0, PokefanMScript_0x6998d, -1
  15018. +   person_event SPRITE_YOUNGSTER, 5, 6, $4, 2, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x69990, -1
  15019. diff --git a/maps/VioletPokeCenter1F.asm b/maps/VioletPokeCenter1F.asm
  15020. index b343cf6..3172efb 100644
  15021. --- a/maps/VioletPokeCenter1F.asm
  15022. +++ b/maps/VioletPokeCenter1F.asm
  15023. @@ -226,8 +226,8 @@ VioletPokeCenter1F_MapEventHeader:
  15024.  
  15025.  .PersonEvents:
  15026.     db 5
  15027. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x694c9, -1
  15028. -   person_event SPRITE_GAMEBOY_KID, 6 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GameboyKidScript_0x69540, -1
  15029. -   person_event SPRITE_GENTLEMAN, 4 + 4, 1 + 4, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x69543, -1
  15030. -   person_event SPRITE_YOUNGSTER, 1 + 4, 8 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x69546, -1
  15031. -   person_event SPRITE_SCIENTIST, 3 + 4, 4 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x694cc, EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
  15032. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x694c9, -1
  15033. +   person_event SPRITE_GAMEBOY_KID, 6, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, GameboyKidScript_0x69540, -1
  15034. +   person_event SPRITE_GENTLEMAN, 4, 1, $3, 0, 0, -1, -1, 0, 0, 0, GentlemanScript_0x69543, -1
  15035. +   person_event SPRITE_YOUNGSTER, 1, 8, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, YoungsterScript_0x69546, -1
  15036. +   person_event SPRITE_SCIENTIST, 3, 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ScientistScript_0x694cc, EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
  15037. diff --git a/maps/ViridianCity.asm b/maps/ViridianCity.asm
  15038. index d06a187..2ebd02c 100644
  15039. --- a/maps/ViridianCity.asm
  15040. +++ b/maps/ViridianCity.asm
  15041. @@ -237,7 +237,7 @@ ViridianCity_MapEventHeader:
  15042.  
  15043.  .PersonEvents:
  15044.     db 4
  15045. -   person_event SPRITE_GRAMPS, 5 + 4, 18 + 4, $2, 2, 2, -1, -1, 0, 0, 0, GrampsScript_0x1a9a4c, -1
  15046. -   person_event SPRITE_GRAMPS, 8 + 4, 30 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x1a9a61, -1
  15047. -   person_event SPRITE_FISHER, 23 + 4, 6 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x1a9a75, -1
  15048. -   person_event SPRITE_YOUNGSTER, 21 + 4, 17 + 4, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a9a90, -1
  15049. +   person_event SPRITE_GRAMPS, 5, 18, $2, 2, 2, -1, -1, 0, 0, 0, GrampsScript_0x1a9a4c, -1
  15050. +   person_event SPRITE_GRAMPS, 8, 30, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrampsScript_0x1a9a61, -1
  15051. +   person_event SPRITE_FISHER, 23, 6, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, FisherScript_0x1a9a75, -1
  15052. +   person_event SPRITE_YOUNGSTER, 21, 17, $2, 3, 3, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungsterScript_0x1a9a90, -1
  15053. diff --git a/maps/ViridianGym.asm b/maps/ViridianGym.asm
  15054. index 2db8a47..2508938 100644
  15055. --- a/maps/ViridianGym.asm
  15056. +++ b/maps/ViridianGym.asm
  15057. @@ -183,5 +183,5 @@ ViridianGym_MapEventHeader:
  15058.  
  15059.  .PersonEvents:
  15060.     db 2
  15061. -   person_event SPRITE_BLUE, 3 + 4, 5 + 4, $6, 0, 0, -1, -1, 0, 0, 0, BlueScript_0x9aa26, EVENT_VIRIDIAN_GYM_BLUE
  15062. -   person_event SPRITE_GYM_GUY, 13 + 4, 7 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ViridianGymGuyScript, EVENT_VIRIDIAN_GYM_BLUE
  15063. +   person_event SPRITE_BLUE, 3, 5, $6, 0, 0, -1, -1, 0, 0, 0, BlueScript_0x9aa26, EVENT_VIRIDIAN_GYM_BLUE
  15064. +   person_event SPRITE_GYM_GUY, 13, 7, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, ViridianGymGuyScript, EVENT_VIRIDIAN_GYM_BLUE
  15065. diff --git a/maps/ViridianMart.asm b/maps/ViridianMart.asm
  15066. index 23f3bd3..8ca273c 100644
  15067. --- a/maps/ViridianMart.asm
  15068. +++ b/maps/ViridianMart.asm
  15069. @@ -48,6 +48,6 @@ ViridianMart_MapEventHeader:
  15070.  
  15071.  .PersonEvents:
  15072.     db 3
  15073. -   person_event SPRITE_CLERK, 3 + 4, 1 + 4, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x9b5e7, -1
  15074. -   person_event SPRITE_LASS, 2 + 4, 7 + 4, $5, 0, 2, -1, -1, 0, 0, 0, LassScript_0x9b5ee, -1
  15075. -   person_event SPRITE_COOLTRAINER_M, 6 + 4, 1 + 4, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x9b5f1, -1
  15076. +   person_event SPRITE_CLERK, 3, 1, $9, 0, 0, -1, -1, 0, 0, 0, ClerkScript_0x9b5e7, -1
  15077. +   person_event SPRITE_LASS, 2, 7, $5, 0, 2, -1, -1, 0, 0, 0, LassScript_0x9b5ee, -1
  15078. +   person_event SPRITE_COOLTRAINER_M, 6, 1, $7, 0, 0, -1, -1, 0, 0, 0, CooltrainerMScript_0x9b5f1, -1
  15079. diff --git a/maps/ViridianNicknameSpeechHouse.asm b/maps/ViridianNicknameSpeechHouse.asm
  15080. index 644e03e..c7aa1e0 100644
  15081. --- a/maps/ViridianNicknameSpeechHouse.asm
  15082. +++ b/maps/ViridianNicknameSpeechHouse.asm
  15083. @@ -72,7 +72,7 @@ ViridianNicknameSpeechHouse_MapEventHeader:
  15084.  
  15085.  .PersonEvents:
  15086.     db 4
  15087. -   person_event SPRITE_POKEFAN_M, 4 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x9ae3a, -1
  15088. -   person_event SPRITE_LASS, 4 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9ae3d, -1
  15089. -   person_event SPRITE_MOLTRES, 2 + 4, 5 + 4, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MoltresScript_0x9ae40, -1
  15090. -   person_event SPRITE_GROWLITHE, 3 + 4, 6 + 4, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrowlitheScript_0x9ae4a, -1
  15091. +   person_event SPRITE_POKEFAN_M, 4, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, PokefanMScript_0x9ae3a, -1
  15092. +   person_event SPRITE_LASS, 4, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, LassScript_0x9ae3d, -1
  15093. +   person_event SPRITE_MOLTRES, 2, 5, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, MoltresScript_0x9ae40, -1
  15094. +   person_event SPRITE_GROWLITHE, 3, 6, $16, 0, 2, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, GrowlitheScript_0x9ae4a, -1
  15095. diff --git a/maps/ViridianPokeCenter1F.asm b/maps/ViridianPokeCenter1F.asm
  15096. index eb33f93..1c44183 100644
  15097. --- a/maps/ViridianPokeCenter1F.asm
  15098. +++ b/maps/ViridianPokeCenter1F.asm
  15099. @@ -83,7 +83,7 @@ ViridianPokeCenter1F_MapEventHeader:
  15100.  
  15101.  .PersonEvents:
  15102.     db 4
  15103. -   person_event SPRITE_NURSE, 1 + 4, 3 + 4, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9b690, -1
  15104. -   person_event SPRITE_COOLTRAINER_M, 4 + 4, 8 + 4, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x9b693, -1
  15105. -   person_event SPRITE_COOLTRAINER_F, 3 + 4, 5 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerFScript_0x9b6a7, -1
  15106. -   person_event SPRITE_BUG_CATCHER, 6 + 4, 1 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x9b6aa, -1
  15107. +   person_event SPRITE_NURSE, 1, 3, $6, 0, 0, -1, -1, 0, 0, 0, NurseScript_0x9b690, -1
  15108. +   person_event SPRITE_COOLTRAINER_M, 4, 8, $5, 0, 1, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, CooltrainerMScript_0x9b693, -1
  15109. +   person_event SPRITE_COOLTRAINER_F, 3, 5, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, CooltrainerFScript_0x9b6a7, -1
  15110. +   person_event SPRITE_BUG_CATCHER, 6, 1, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, BugCatcherScript_0x9b6aa, -1
  15111. diff --git a/maps/WarehouseEntrance.asm b/maps/WarehouseEntrance.asm
  15112. index 332f61e..0d1b786 100644
  15113. --- a/maps/WarehouseEntrance.asm
  15114. +++ b/maps/WarehouseEntrance.asm
  15115. @@ -669,12 +669,12 @@ WarehouseEntrance_MapEventHeader:
  15116.  
  15117.  .PersonEvents:
  15118.     db 9
  15119. -   person_event SPRITE_SUPER_NERD, 31 + 4, 5 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdEric, -1
  15120. -   person_event SPRITE_SUPER_NERD, 9 + 4, 6 + 4, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdTeru, -1
  15121. -   person_event SPRITE_SUPER_NERD, 27 + 4, 3 + 4, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacIssac, -1
  15122. -   person_event SPRITE_SUPER_NERD, 6 + 4, 2 + 4, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacDonald, -1
  15123. -   person_event SPRITE_POKE_BALL, 25 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7c306, EVENT_WAREHOUSE_ENTRANCE_COIN_CASE
  15124. -   person_event SPRITE_GRAMPS, 11 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x7c146, EVENT_WAREHOUSE_ENTRANCE_GRAMPS
  15125. -   person_event SPRITE_SUPER_NERD, 14 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OlderHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_OLDER_HAIRCUT_BROTHER
  15126. -   person_event SPRITE_SUPER_NERD, 15 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungerHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_YOUNGER_HAIRCUT_BROTHER
  15127. -   person_event SPRITE_GRANNY, 21 + 4, 7 + 4, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x7c132, EVENT_WAREHOUSE_ENTRANCE_GRANNY
  15128. +   person_event SPRITE_SUPER_NERD, 31, 5, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 3, TrainerSupernerdEric, -1
  15129. +   person_event SPRITE_SUPER_NERD, 9, 6, $7, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 2, 2, TrainerSupernerdTeru, -1
  15130. +   person_event SPRITE_SUPER_NERD, 27, 3, $a, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 2, TrainerPokemaniacIssac, -1
  15131. +   person_event SPRITE_SUPER_NERD, 6, 2, $9, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 2, 3, TrainerPokemaniacDonald, -1
  15132. +   person_event SPRITE_POKE_BALL, 25, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x7c306, EVENT_WAREHOUSE_ENTRANCE_COIN_CASE
  15133. +   person_event SPRITE_GRAMPS, 11, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrampsScript_0x7c146, EVENT_WAREHOUSE_ENTRANCE_GRAMPS
  15134. +   person_event SPRITE_SUPER_NERD, 14, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, OlderHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_OLDER_HAIRCUT_BROTHER
  15135. +   person_event SPRITE_SUPER_NERD, 15, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_GREEN, 0, 0, YoungerHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_YOUNGER_HAIRCUT_BROTHER
  15136. +   person_event SPRITE_GRANNY, 21, 7, $8, 0, 0, -1, -1, (1 << 3) | PAL_OW_BROWN, 0, 0, GrannyScript_0x7c132, EVENT_WAREHOUSE_ENTRANCE_GRANNY
  15137. diff --git a/maps/WhirlIslandB1F.asm b/maps/WhirlIslandB1F.asm
  15138. index b6a9c60..bae2a02 100644
  15139. --- a/maps/WhirlIslandB1F.asm
  15140. +++ b/maps/WhirlIslandB1F.asm
  15141. @@ -62,9 +62,9 @@ WhirlIslandB1F_MapEventHeader:
  15142.  
  15143.  .PersonEvents:
  15144.     db 6
  15145. -   person_event SPRITE_POKE_BALL, 13 + 4, 7 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c410, EVENT_WHIRL_ISLAND_B1F_FULL_RESTORE
  15146. -   person_event SPRITE_POKE_BALL, 18 + 4, 2 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c412, EVENT_WHIRL_ISLAND_B1F_CARBOS
  15147. -   person_event SPRITE_POKE_BALL, 23 + 4, 33 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c414, EVENT_WHIRL_ISLAND_B1F_CALCIUM
  15148. -   person_event SPRITE_POKE_BALL, 8 + 4, 17 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c416, EVENT_WHIRL_ISLAND_B1F_NUGGET
  15149. -   person_event SPRITE_POKE_BALL, 26 + 4, 19 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c418, EVENT_WHIRL_ISLAND_B1F_ESCAPE_ROPE
  15150. -   person_event SPRITE_BOULDER, 26 + 4, 23 + 4, $19, 0, 0, -1, -1, 0, 0, 0, WhirlIslandB1FBoulder, -1
  15151. +   person_event SPRITE_POKE_BALL, 13, 7, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c410, EVENT_WHIRL_ISLAND_B1F_FULL_RESTORE
  15152. +   person_event SPRITE_POKE_BALL, 18, 2, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c412, EVENT_WHIRL_ISLAND_B1F_CARBOS
  15153. +   person_event SPRITE_POKE_BALL, 23, 33, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c414, EVENT_WHIRL_ISLAND_B1F_CALCIUM
  15154. +   person_event SPRITE_POKE_BALL, 8, 17, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c416, EVENT_WHIRL_ISLAND_B1F_NUGGET
  15155. +   person_event SPRITE_POKE_BALL, 26, 19, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c418, EVENT_WHIRL_ISLAND_B1F_ESCAPE_ROPE
  15156. +   person_event SPRITE_BOULDER, 26, 23, $19, 0, 0, -1, -1, 0, 0, 0, WhirlIslandB1FBoulder, -1
  15157. diff --git a/maps/WhirlIslandB2F.asm b/maps/WhirlIslandB2F.asm
  15158. index 13553b7..091dc6f 100644
  15159. --- a/maps/WhirlIslandB2F.asm
  15160. +++ b/maps/WhirlIslandB2F.asm
  15161. @@ -33,6 +33,6 @@ WhirlIslandB2F_MapEventHeader:
  15162.  
  15163.  .PersonEvents:
  15164.     db 3
  15165. -   person_event SPRITE_POKE_BALL, 11 + 4, 10 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4b8, EVENT_WHIRL_ISLAND_B2F_FULL_RESTORE
  15166. -   person_event SPRITE_POKE_BALL, 4 + 4, 6 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4ba, EVENT_WHIRL_ISLAND_B2F_MAX_REVIVE
  15167. -   person_event SPRITE_POKE_BALL, 12 + 4, 5 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4bc, EVENT_WHIRL_ISLAND_B2F_MAX_ELIXER
  15168. +   person_event SPRITE_POKE_BALL, 11, 10, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4b8, EVENT_WHIRL_ISLAND_B2F_FULL_RESTORE
  15169. +   person_event SPRITE_POKE_BALL, 4, 6, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4ba, EVENT_WHIRL_ISLAND_B2F_MAX_REVIVE
  15170. +   person_event SPRITE_POKE_BALL, 12, 5, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c4bc, EVENT_WHIRL_ISLAND_B2F_MAX_ELIXER
  15171. diff --git a/maps/WhirlIslandLugiaChamber.asm b/maps/WhirlIslandLugiaChamber.asm
  15172. index bb4e77d..e92fac7 100644
  15173. --- a/maps/WhirlIslandLugiaChamber.asm
  15174. +++ b/maps/WhirlIslandLugiaChamber.asm
  15175. @@ -59,4 +59,4 @@ WhirlIslandLugiaChamber_MapEventHeader:
  15176.  
  15177.  .PersonEvents:
  15178.     db 1
  15179. -   person_event SPRITE_LUGIA, 5 + 4, 9 + 4, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LugiaScript_0x18c518, EVENT_WHIRL_ISLAND_LUGIA_CHAMBER_LUGIA
  15180. +   person_event SPRITE_LUGIA, 5, 9, $16, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, 0, 0, LugiaScript_0x18c518, EVENT_WHIRL_ISLAND_LUGIA_CHAMBER_LUGIA
  15181. diff --git a/maps/WhirlIslandNE.asm b/maps/WhirlIslandNE.asm
  15182. index 5f86227..dce0357 100644
  15183. --- a/maps/WhirlIslandNE.asm
  15184. +++ b/maps/WhirlIslandNE.asm
  15185. @@ -26,4 +26,4 @@ WhirlIslandNE_MapEventHeader:
  15186.  
  15187.  .PersonEvents:
  15188.     db 1
  15189. -   person_event SPRITE_POKE_BALL, 11 + 4, 11 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c396, EVENT_WHIRL_ISLAND_NE_ULTRA_BALL
  15190. +   person_event SPRITE_POKE_BALL, 11, 11, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c396, EVENT_WHIRL_ISLAND_NE_ULTRA_BALL
  15191. diff --git a/maps/WhirlIslandSW.asm b/maps/WhirlIslandSW.asm
  15192. index d2bd1bd..e8132d1 100644
  15193. --- a/maps/WhirlIslandSW.asm
  15194. +++ b/maps/WhirlIslandSW.asm
  15195. @@ -28,4 +28,4 @@ WhirlIslandSW_MapEventHeader:
  15196.  
  15197.  .PersonEvents:
  15198.     db 1
  15199. -   person_event SPRITE_POKE_BALL, 2 + 4, 15 + 4, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c3bc, EVENT_WHIRL_ISLAND_SW_ULTRA_BALL
  15200. +   person_event SPRITE_POKE_BALL, 2, 15, $1, 0, 0, -1, -1, 0, 1, 0, ItemFragment_0x18c3bc, EVENT_WHIRL_ISLAND_SW_ULTRA_BALL
  15201. diff --git a/maps/WillsRoom.asm b/maps/WillsRoom.asm
  15202. index 77410cd..6bc754d 100644
  15203. --- a/maps/WillsRoom.asm
  15204. +++ b/maps/WillsRoom.asm
  15205. @@ -148,4 +148,4 @@ WillsRoom_MapEventHeader:
  15206.  
  15207.  .PersonEvents:
  15208.     db 1
  15209. -   person_event SPRITE_WILL, 7 + 4, 5 + 4, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, WillScript_0x1804f8, -1
  15210. +   person_event SPRITE_WILL, 7, 5, $6, 0, 0, -1, -1, (1 << 3) | PAL_OW_RED, 0, 0, WillScript_0x1804f8, -1
  15211. diff --git a/maps/WiseTriosRoom.asm b/maps/WiseTriosRoom.asm
  15212. index b8c0a7a..783dd39 100644
  15213. --- a/maps/WiseTriosRoom.asm
  15214. +++ b/maps/WiseTriosRoom.asm
  15215. @@ -360,9 +360,9 @@ WiseTriosRoom_MapEventHeader:
  15216.  
  15217.  .PersonEvents:
  15218.     db 6
  15219. -   person_event SPRITE_SAGE, 2 + 4, 6 + 4, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x9859a, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15220. -   person_event SPRITE_SAGE, 7 + 4, 6 + 4, $5, 0, 1, -1, -1, 0, 0, 0, SageScript_0x9859d, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15221. -   person_event SPRITE_SAGE, 5 + 4, 7 + 4, $8, 0, 0, -1, -1, 0, 0, 0, SageScript_0x985a0, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15222. -   person_event SPRITE_SAGE, 2 + 4, 4 + 4, $6, 0, 0, -1, -1, 0, 2, 2, TrainerSageGaku, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15223. -   person_event SPRITE_SAGE, 6 + 4, 4 + 4, $7, 0, 0, -1, -1, 0, 2, 2, TrainerSageMasa, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15224. -   person_event SPRITE_SAGE, 4 + 4, 6 + 4, $8, 0, 0, -1, -1, 0, 2, 2, TrainerSageKoji, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15225. +   person_event SPRITE_SAGE, 2, 6, $3, 0, 0, -1, -1, 0, 0, 0, SageScript_0x9859a, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15226. +   person_event SPRITE_SAGE, 7, 6, $5, 0, 1, -1, -1, 0, 0, 0, SageScript_0x9859d, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15227. +   person_event SPRITE_SAGE, 5, 7, $8, 0, 0, -1, -1, 0, 0, 0, SageScript_0x985a0, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_1
  15228. +   person_event SPRITE_SAGE, 2, 4, $6, 0, 0, -1, -1, 0, 2, 2, TrainerSageGaku, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15229. +   person_event SPRITE_SAGE, 6, 4, $7, 0, 0, -1, -1, 0, 2, 2, TrainerSageMasa, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15230. +   person_event SPRITE_SAGE, 4, 6, $8, 0, 0, -1, -1, 0, 2, 2, TrainerSageKoji, EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
  15231. diff --git a/misc/mobile_22.asm b/misc/mobile_22.asm
  15232. index 91daa91..c5db95d 100644
  15233. --- a/misc/mobile_22.asm
  15234. +++ b/misc/mobile_22.asm
  15235. @@ -235,7 +235,7 @@ Function89261: ; 89261
  15236.     ld hl, MenuDataHeader_0x892a3
  15237.     call CopyMenuDataHeader
  15238.     pop bc
  15239. -   ld hl, wcf82
  15240. +   ld hl, wMenuBorderTopCoord
  15241.     ld a, c
  15242.     ld [hli], a
  15243.     ld a, b
  15244. @@ -247,8 +247,8 @@ Function89261: ; 89261
  15245.     add $5
  15246.     ld [hl], a
  15247.     pop af
  15248. -   ld [wcf88], a
  15249. -   call Function1c00
  15250. +   ld [wPocketPointerLocationBuffer], a
  15251. +   call BackUpTiles
  15252.     call Function8923c
  15253.     call Function89209
  15254.     call InterpretMenu2
  15255. @@ -2194,7 +2194,7 @@ Function89d5e: ; 89d5e (22:5d5e)
  15256.     push af
  15257.     call CopyMenuDataHeader
  15258.     pop af
  15259. -   ld [wcf88], a
  15260. +   ld [wPocketPointerLocationBuffer], a
  15261.     call Function8923c
  15262.     call Function1c89
  15263.     call Function1c10
  15264. @@ -3050,7 +3050,7 @@ Function8a31c: ; 8a31c (22:631c)
  15265.     call Function8a3b2
  15266.     pop bc
  15267.     ld a, c
  15268. -   ld [wcf88], a
  15269. +   ld [wPocketPointerLocationBuffer], a
  15270.     ld [MenuSelection], a
  15271.     call Function1c89
  15272.     call Function1c10
  15273. diff --git a/misc/mobile_22_2.asm b/misc/mobile_22_2.asm
  15274. index a56fd0c..053f711 100644
  15275. --- a/misc/mobile_22_2.asm
  15276. +++ b/misc/mobile_22_2.asm
  15277. @@ -803,7 +803,7 @@ Function8b7bd: ; 8b7bd
  15278.     ld hl, MenuDataHeader_0x8b867
  15279.     call CopyMenuDataHeader
  15280.     ld a, [wd030]
  15281. -   ld [wcf88], a
  15282. +   ld [wPocketPointerLocationBuffer], a
  15283.     ld a, [wd031]
  15284.     ld [wd0e4], a
  15285.     ld a, [wd032]
  15286. @@ -881,7 +881,7 @@ Function8b83e: ; 8b83e
  15287.  Function8b84b: ; 8b84b
  15288.     ld [wd0e4], a
  15289.     ld a, [wcfa9]
  15290. -   ld [wcf88], a
  15291. +   ld [wPocketPointerLocationBuffer], a
  15292.     ret
  15293.  ; 8b855
  15294.  
  15295. diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm
  15296. index 7afaf9e..1a6b950 100644
  15297. --- a/misc/mobile_40.asm
  15298. +++ b/misc/mobile_40.asm
  15299. @@ -84,7 +84,7 @@ Function100082: ; 100082
  15300.     ld [hLCDStatCustom], a
  15301.     ld a, $1
  15302.     ld [$ffc9], a
  15303. -   ld [$ffe9], a
  15304. +   ld [hMobile], a
  15305.     ei
  15306.     ret
  15307.  ; 0x1000a4
  15308. @@ -93,7 +93,7 @@ Function1000a4: ; 1000a4
  15309.     di
  15310.     xor a
  15311.     ld [$ffc9], a
  15312. -   ld [$ffe9], a
  15313. +   ld [hMobile], a
  15314.     xor a
  15315.     ld [hVBlank], a
  15316.     call NormalSpeed
  15317. @@ -166,7 +166,7 @@ Function1000fa: ; 1000fa
  15318.     ld [rIE], a
  15319.     xor a
  15320.     ld [$ffc9], a
  15321. -   ld [$ffe9], a
  15322. +   ld [hMobile], a
  15323.     ei
  15324.     ld a, [wLinkMode]
  15325.     push af
  15326. @@ -1786,12 +1786,12 @@ Function100b12: ; 100b12
  15327.     ld a, BANK(BattleMenuDataHeader)
  15328.     ld [wcf94], a
  15329.     ld a, [wd0d2]
  15330. -   ld [wcf88], a
  15331. +   ld [wPocketPointerLocationBuffer], a
  15332.     call Function100e72
  15333.     call Function100b45
  15334.     callba Function8e85
  15335.     call Function100ed4
  15336. -   ld a, [wcf88]
  15337. +   ld a, [wPocketPointerLocationBuffer]
  15338.     ld [wd0d2], a
  15339.     call ExitMenu
  15340.     ret
  15341. @@ -1818,7 +1818,7 @@ Function100b45: ; 100b45
  15342.     ld c, a
  15343.     ld a, [wcfa3]
  15344.     call SimpleMultiply
  15345. -   ld [wcf88], a
  15346. +   ld [wPocketPointerLocationBuffer], a
  15347.     and a
  15348.     ret
  15349.  ; 100b7a
  15350. @@ -3911,7 +3911,7 @@ Function101913: ; 101913
  15351.  ; 10194b
  15352.  
  15353.  Function10194b: ; 10194b
  15354. -   call Function2ed3
  15355. +   call DisableSpriteUpdates
  15356.     call ClearSprites
  15357.     callba Function1021f9
  15358.     ld hl, wcd29
  15359. @@ -5401,7 +5401,7 @@ Function102423: ; 102423
  15360.     call Function102921
  15361.     ret nc
  15362.     callba Function14a58
  15363. -   callba Function1060af
  15364. +   callba MobileFn_1060af
  15365.     callba Function106187
  15366.     ld hl, wcd4b
  15367.     set 1, [hl]
  15368. @@ -7688,7 +7688,7 @@ Function103612: ; 103612
  15369.     ld a, [wdc40]
  15370.     and $f
  15371.     jr z, .asm_103622
  15372. -   ld [wcf88], a
  15373. +   ld [wPocketPointerLocationBuffer], a
  15374.  
  15375.  .asm_103622
  15376.     call InterpretMenu2
  15377. diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm
  15378. index d87dc5d..268b100 100644
  15379. --- a/misc/mobile_45.asm
  15380. +++ b/misc/mobile_45.asm
  15381. @@ -2416,14 +2416,14 @@ Function114e62: ; 114e62
  15382.     ld a, c
  15383.     and a
  15384.     jr nz, .asm_114e6f
  15385. -   ld a, [wdc23]
  15386. +   ld a, [wStartDay]
  15387.     and a
  15388.     jp z, Function11425c
  15389.     jr .asm_114e76
  15390.  
  15391.  .asm_114e6f
  15392.     xor a
  15393. -   ld [wdc23], a
  15394. +   ld [wStartDay], a
  15395.     call Function114ee9
  15396.  
  15397.  .asm_114e76
  15398. @@ -2494,7 +2494,7 @@ Function114ea0: ; 114ea0
  15399.     ld [hli], a
  15400.     ld [hl], b
  15401.     xor a
  15402. -   ld [wdc23], a
  15403. +   ld [wStartDay], a
  15404.     ret
  15405.  
  15406.  .asm_114edb
  15407. @@ -2614,7 +2614,7 @@ Function114f39: ; 114f39
  15408.  ; 114f59
  15409.  
  15410.  Function114f59: ; 114f59
  15411. -   ld a, [wdc23]
  15412. +   ld a, [wStartDay]
  15413.     and a
  15414.     jr nz, .asm_114f7c
  15415.     ld a, [wdc03]
  15416. @@ -2632,7 +2632,7 @@ Function114f59: ; 114f59
  15417.     and a
  15418.     jr nz, .asm_114fe7
  15419.     ld a, $1
  15420. -   ld [wdc23], a
  15421. +   ld [wStartDay], a
  15422.  
  15423.  .asm_114f7c
  15424.     ld a, [wdc03]
  15425. @@ -2811,7 +2811,7 @@ Function115062: ; 115062
  15426.     ld d, [hl]
  15427.     ld b, $0
  15428.     ld hl, wdc24
  15429. -   ld a, [wdc23]
  15430. +   ld a, [wStartDay]
  15431.     cp $1
  15432.     jr z, .asm_11509b
  15433.     cp $2
  15434. @@ -2836,14 +2836,14 @@ Function115062: ; 115062
  15435.     call Function115d53
  15436.     call Function1150b3
  15437.     call Function115136
  15438. -   ld a, [wdc23]
  15439. +   ld a, [wStartDay]
  15440.     inc a
  15441.     cp $4
  15442.     jr nz, .asm_1150ae
  15443.     ld a, $2
  15444.  
  15445.  .asm_1150ae
  15446. -   ld [wdc23], a
  15447. +   ld [wStartDay], a
  15448.     xor a
  15449.  
  15450.  .asm_1150b2
  15451. @@ -3329,7 +3329,7 @@ Function1152b8: ; 1152b8
  15452.     call Function114ea0
  15453.     and a
  15454.     jr nz, .asm_1152f9
  15455. -   ld [wdc23], a
  15456. +   ld [wStartDay], a
  15457.     ld a, [wdc03]
  15458.     cp $6
  15459.     jr nz, .asm_1152ca
  15460. @@ -3337,7 +3337,7 @@ Function1152b8: ; 1152b8
  15461.  .asm_115335
  15462.     call Function1153b5
  15463.     xor a
  15464. -   ld [wdc23], a
  15465. +   ld [wStartDay], a
  15466.     call Function114f59
  15467.     and a
  15468.     jr nz, .asm_1152f9
  15469. @@ -3355,7 +3355,7 @@ Function1152b8: ; 1152b8
  15470.     jr z, .asm_11536b
  15471.     call Function1153b5
  15472.     xor a
  15473. -   ld [wdc23], a
  15474. +   ld [wStartDay], a
  15475.     call Function114f59
  15476.     and a
  15477.     jr nz, .asm_1152f9
  15478. @@ -3425,7 +3425,7 @@ Function11537d: ; 11537d
  15479.     ld [hl], d
  15480.     xor a
  15481.     ld [wdc03], a
  15482. -   ld [wdc23], a
  15483. +   ld [wStartDay], a
  15484.     ret
  15485.  ; 1153b5
  15486.  
  15487. @@ -3645,7 +3645,7 @@ Function1153d2: ; 1153d2
  15488.  
  15489.  Function1154d4: ; 1154d4
  15490.     xor a
  15491. -   ld [wdc23], a
  15492. +   ld [wStartDay], a
  15493.     call Function1155af
  15494.     call Function11560a
  15495.     and a
  15496. @@ -3659,7 +3659,7 @@ Function1154d4: ; 1154d4
  15497.     cp $1
  15498.     jr nz, .asm_115531
  15499.     xor a
  15500. -   ld [wdc1c], a
  15501. +   ld [wDailyResetTimer], a
  15502.  .asm_1154f7
  15503.     ld a, [BigDoll]
  15504.     cp $2
  15505. @@ -3699,7 +3699,7 @@ Function1154d4: ; 1154d4
  15506.  
  15507.  .asm_115531
  15508.     ld a, $1
  15509. -   ld [wdc1c], a
  15510. +   ld [wDailyResetTimer], a
  15511.     ld a, $b
  15512.     ld [wdc03], a
  15513.     call Function114f59
  15514. @@ -3726,7 +3726,7 @@ Function1154d4: ; 1154d4
  15515.     call Function114ea0
  15516.     and a
  15517.     jr nz, .asm_11552c
  15518. -   ld a, [wdc1c]
  15519. +   ld a, [wDailyResetTimer]
  15520.     and a
  15521.     jr z, .asm_11557d
  15522.     ld a, $f
  15523. @@ -3977,7 +3977,7 @@ Function11560a: ; 11560a
  15524.  ; 1156cc
  15525.  
  15526.  Function1156cc: ; 1156cc
  15527. -   ld a, [wdc23]
  15528. +   ld a, [wStartDay]
  15529.     and a
  15530.     jp z, Function11425c
  15531.     cp $2
  15532. @@ -4006,7 +4006,7 @@ Function1156cc: ; 1156cc
  15533.     call Function11581e
  15534.     and a
  15535.     jr nz, .asm_11572b
  15536. -   ld a, [wdc23]
  15537. +   ld a, [wStartDay]
  15538.     cp $5
  15539.     jr z, .asm_115716
  15540.     ld a, [Poster]
  15541. @@ -4030,7 +4030,7 @@ Function1156cc: ; 1156cc
  15542.     ld l, a
  15543.     add hl, de
  15544.     xor a
  15545. -   ld [wdc23], a
  15546. +   ld [wStartDay], a
  15547.     jp Function11425c
  15548.  
  15549.  .asm_11572b
  15550. @@ -4165,7 +4165,7 @@ Function11575c: ; 11575c
  15551.     pop hl
  15552.     add hl, bc
  15553.     ld a, $2
  15554. -   ld [wdc23], a
  15555. +   ld [wStartDay], a
  15556.     ret
  15557.  ; 1157d0
  15558.  
  15559. @@ -4213,7 +4213,7 @@ Function1157d0: ; 1157d0
  15560.     ld a, b
  15561.     ld [Bed], a
  15562.     ld a, $4
  15563. -   ld [wdc23], a
  15564. +   ld [wStartDay], a
  15565.     ret
  15566.  
  15567.  .asm_11580f
  15568. @@ -4223,12 +4223,12 @@ Function1157d0: ; 1157d0
  15569.     ld a, b
  15570.     ld [Bed], a
  15571.     ld a, $3
  15572. -   ld [wdc23], a
  15573. +   ld [wStartDay], a
  15574.     ret
  15575.  ; 11581e
  15576.  
  15577.  Function11581e: ; 11581e
  15578. -   ld a, [wdc23]
  15579. +   ld a, [wStartDay]
  15580.     and a
  15581.     ret z
  15582.     ld a, [wdc0e]
  15583. @@ -4305,7 +4305,7 @@ Function11581e: ; 11581e
  15584.     ld a, e
  15585.     ld [hli], a
  15586.     ld [hl], d
  15587. -   ld a, [wdc23]
  15588. +   ld a, [wStartDay]
  15589.     cp $3
  15590.     jr z, .asm_1158b4
  15591.     cp $4
  15592. @@ -4314,12 +4314,12 @@ Function11581e: ; 11581e
  15593.  
  15594.  .asm_1158ad
  15595.     ld a, $5
  15596. -   ld [wdc23], a
  15597. +   ld [wStartDay], a
  15598.     jr .asm_1158b9
  15599.  
  15600.  .asm_1158b4
  15601.     ld a, $2
  15602. -   ld [wdc23], a
  15603. +   ld [wStartDay], a
  15604.  
  15605.  .asm_1158b9
  15606.     xor a
  15607. @@ -4330,7 +4330,7 @@ Function11581e: ; 11581e
  15608.  
  15609.  .asm_1158bc
  15610.     ld a, $ff
  15611. -   ld [wdc23], a
  15612. +   ld [wStartDay], a
  15613.     ret
  15614.  ; 1158c2
  15615.  
  15616. @@ -4575,7 +4575,7 @@ Function1159dc: ; 1159dc
  15617.  ; 1159fb
  15618.  
  15619.  Function1159fb: ; 1159fb
  15620. -   ld a, [wdc23]
  15621. +   ld a, [wStartDay]
  15622.     and a
  15623.     jp z, Function11425c
  15624.     cp $2
  15625. @@ -4604,7 +4604,7 @@ Function1159fb: ; 1159fb
  15626.     call Function115b00
  15627.     and a
  15628.     jr nz, .asm_115a5a
  15629. -   ld a, [wdc23]
  15630. +   ld a, [wStartDay]
  15631.     cp $5
  15632.     jr z, .asm_115a45
  15633.     ld a, [Poster]
  15634. @@ -4628,7 +4628,7 @@ Function1159fb: ; 1159fb
  15635.     ld l, a
  15636.     add hl, de
  15637.     xor a
  15638. -   ld [wdc23], a
  15639. +   ld [wStartDay], a
  15640.     jp Function11425c
  15641.  
  15642.  .asm_115a5a
  15643. @@ -4692,7 +4692,7 @@ Function115a5f: ; 115a5f
  15644.     rl b
  15645.     add hl, bc
  15646.     ld a, $2
  15647. -   ld [wdc23], a
  15648. +   ld [wStartDay], a
  15649.     ret
  15650.  ; 115ab0
  15651.  
  15652. @@ -4740,7 +4740,7 @@ Function115ab0: ; 115ab0
  15653.     ld a, b
  15654.     ld [Bed], a
  15655.     ld a, $4
  15656. -   ld [wdc23], a
  15657. +   ld [wStartDay], a
  15658.     xor a
  15659.     ret
  15660.  
  15661. @@ -4751,13 +4751,13 @@ Function115ab0: ; 115ab0
  15662.     ld a, b
  15663.     ld [Bed], a
  15664.     ld a, $3
  15665. -   ld [wdc23], a
  15666. +   ld [wStartDay], a
  15667.     xor a
  15668.     ret
  15669.  ; 115b00
  15670.  
  15671.  Function115b00: ; 115b00
  15672. -   ld a, [wdc23]
  15673. +   ld a, [wStartDay]
  15674.     and a
  15675.     ret z
  15676.     ld a, [wdc0e]
  15677. @@ -4780,7 +4780,7 @@ Function115b00: ; 115b00
  15678.     jr z, .asm_115b43
  15679.     cp $2
  15680.     jr z, .asm_115b3b
  15681. -   ld a, [wdc23]
  15682. +   ld a, [wStartDay]
  15683.     cp $4
  15684.     jr z, .asm_115b43
  15685.  rept 2
  15686. @@ -4798,7 +4798,7 @@ endr
  15687.  
  15688.  .asm_115b3d
  15689.     ld a, $ff
  15690. -   ld [wdc23], a
  15691. +   ld [wStartDay], a
  15692.     ret
  15693.  
  15694.  .asm_115b43
  15695. @@ -4869,7 +4869,7 @@ endr
  15696.     ld a, e
  15697.     ld [hli], a
  15698.     ld [hl], d
  15699. -   ld a, [wdc23]
  15700. +   ld a, [wStartDay]
  15701.     cp $3
  15702.     jr z, .asm_115bc1
  15703.     cp $4
  15704. @@ -4878,12 +4878,12 @@ endr
  15705.  
  15706.  .asm_115bba
  15707.     ld a, $5
  15708. -   ld [wdc23], a
  15709. +   ld [wStartDay], a
  15710.     jr .asm_115bc6
  15711.  
  15712.  .asm_115bc1
  15713.     ld a, $2
  15714. -   ld [wdc23], a
  15715. +   ld [wStartDay], a
  15716.  
  15717.  .asm_115bc6
  15718.     xor a
  15719. @@ -4949,7 +4949,7 @@ Function115bc8: ; 115bc8
  15720.     jr nz, .asm_115bcc
  15721.  
  15722.  .asm_115c1b
  15723. -   ld a, [wdc23]
  15724. +   ld a, [wStartDay]
  15725.     cp $4
  15726.     jr z, .asm_115c33
  15727.     ld a, [de]
  15728. @@ -5053,7 +5053,7 @@ endr
  15729.  
  15730.  .asm_115c99
  15731.     ld a, $ff
  15732. -   ld [wdc23], a
  15733. +   ld [wStartDay], a
  15734.     ret
  15735.  
  15736.  .asm_115c9f
  15737. @@ -5156,7 +5156,7 @@ Function115cfd: ; 115cfd
  15738.     pop hl
  15739.     pop hl
  15740.     ld a, $ff
  15741. -   ld [wdc23], a
  15742. +   ld [wStartDay], a
  15743.     ret
  15744.  
  15745.  .asm_115d2f
  15746. @@ -8954,7 +8954,7 @@ Function1183cb: ; 1183cb
  15747.     ld [rIE], a
  15748.     ld a, $1
  15749.     ld [$ffc9], a
  15750. -   ld [$ffe9], a
  15751. +   ld [hMobile], a
  15752.     ei
  15753.     callba Function106462
  15754.     callba Function106464
  15755. @@ -8984,7 +8984,7 @@ Function118452: ; 118452
  15756.     di
  15757.     xor a
  15758.     ld [$ffc9], a
  15759. -   ld [$ffe9], a
  15760. +   ld [hMobile], a
  15761.     ld [hVBlank], a
  15762.     call NormalSpeed
  15763.     xor a
  15764. @@ -13021,13 +13021,13 @@ Function11a00e: ; 11a00e
  15765.  
  15766.  .asm_11a081
  15767.     xor a
  15768. -   ld [wcf83], a
  15769. -   ld [wcf82], a
  15770. +   ld [wMenuBorderLeftCoord], a
  15771. +   ld [wMenuBorderTopCoord], a
  15772.     ld a, $13
  15773. -   ld [wcf85], a
  15774. +   ld [wMenuBorderRightCoord], a
  15775.     ld a, $5
  15776. -   ld [wcf84], a
  15777. -   call Function1c00
  15778. +   ld [wMenuBorderBottomCoord], a
  15779. +   call BackUpTiles
  15780.     callba Function11765d
  15781.     callba Function117ab4
  15782.     callba Function106462
  15783. @@ -13044,13 +13044,13 @@ Function11a00e: ; 11a00e
  15784.  
  15785.  Function11a0ca: ; 11a0ca
  15786.     xor a
  15787. -   ld [wcf83], a
  15788. -   ld [wcf82], a
  15789. +   ld [wMenuBorderLeftCoord], a
  15790. +   ld [wMenuBorderTopCoord], a
  15791.     ld a, $13
  15792. -   ld [wcf85], a
  15793. +   ld [wMenuBorderRightCoord], a
  15794.     ld a, $11
  15795. -   ld [wcf84], a
  15796. -   call Function1c00
  15797. +   ld [wMenuBorderBottomCoord], a
  15798. +   call BackUpTiles
  15799.     callba Function11765d
  15800.     callba Function17d3f6
  15801.     callba Function106462
  15802. @@ -13728,13 +13728,13 @@ Function11a5b0: ; 11a5b0
  15803.  
  15804.  Function11a5b9: ; 11a5b9
  15805.     xor a
  15806. -   ld [wcf83], a
  15807. -   ld [wcf82], a
  15808. +   ld [wMenuBorderLeftCoord], a
  15809. +   ld [wMenuBorderTopCoord], a
  15810.     ld a, $13
  15811. -   ld [wcf85], a
  15812. +   ld [wMenuBorderRightCoord], a
  15813.     ld a, $5
  15814. -   ld [wcf84], a
  15815. -   call Function1c00
  15816. +   ld [wMenuBorderBottomCoord], a
  15817. +   call BackUpTiles
  15818.     hlcoord 0, 0, AttrMap
  15819.     ld b, $6
  15820.     ld c, $14
  15821. @@ -13753,14 +13753,14 @@ Function11a5b9: ; 11a5b9
  15822.  
  15823.  Function11a5f5: ; 11a5f5
  15824.     ld a, $e
  15825. -   ld [wcf83], a
  15826. +   ld [wMenuBorderLeftCoord], a
  15827.     ld a, $13
  15828. -   ld [wcf85], a
  15829. +   ld [wMenuBorderRightCoord], a
  15830.     ld a, $6
  15831. -   ld [wcf82], a
  15832. +   ld [wMenuBorderTopCoord], a
  15833.     ld a, $a
  15834. -   ld [wcf84], a
  15835. -   call Function1c00
  15836. +   ld [wMenuBorderBottomCoord], a
  15837. +   call BackUpTiles
  15838.     hlcoord 14, 6, AttrMap
  15839.     ld b, $5
  15840.     ld c, $6
  15841. @@ -22849,7 +22849,7 @@ RunBattleTowerBattle: ; 17024d
  15842.     predef StartBattle
  15843.     callba LoadPokemonData
  15844.     callba HealParty
  15845. -   ld a, [wd0ee]
  15846. +   ld a, [wBattleResult]
  15847.     ld [ScriptVar], a
  15848.     and a
  15849.     jr nz, .asm_1702a9
  15850. @@ -24298,7 +24298,7 @@ Function170c06: ; 170c06
  15851.     ld a, $5
  15852.     call GetSRAMBank
  15853.     ld hl, $a894
  15854. -   ld a, [wd0ee]
  15855. +   ld a, [wBattleResult]
  15856.     and a
  15857.     jr nz, .asm_170c15
  15858.     inc [hl]
  15859. diff --git a/misc/mobile_5f.asm b/misc/mobile_5f.asm
  15860. index 411f222..b4fcd1a 100644
  15861. --- a/misc/mobile_5f.asm
  15862. +++ b/misc/mobile_5f.asm
  15863. @@ -3122,7 +3122,7 @@ Function17e3c3: ; 17e3c3
  15864.     push af
  15865.     ld a, $1
  15866.     ld [rSVBK], a
  15867. -   callba Function106155
  15868. +   callba MobileFn_106155
  15869.     callba Function106187
  15870.     pop af
  15871.     ld [rSVBK], a
  15872. diff --git a/predef/cgb.asm b/predef/cgb.asm
  15873. index 2cc69c5..b5c7aed 100644
  15874. --- a/predef/cgb.asm
  15875. +++ b/predef/cgb.asm
  15876. @@ -949,7 +949,7 @@ Function9499: ; 9499
  15877.     call Function91c8
  15878.     ld de, $0014
  15879.     hlcoord 0, 0, AttrMap
  15880. -   ld a, [wcf82]
  15881. +   ld a, [wMenuBorderTopCoord]
  15882.  .asm_94a5
  15883.     and a
  15884.     jr z, .asm_94ac
  15885. @@ -958,19 +958,19 @@ Function9499: ; 9499
  15886.     jr .asm_94a5
  15887.  
  15888.  .asm_94ac
  15889. -   ld a, [wcf83]
  15890. +   ld a, [wMenuBorderLeftCoord]
  15891.     ld e, a
  15892.     ld d, $0
  15893.     add hl, de
  15894. -   ld a, [wcf82]
  15895. +   ld a, [wMenuBorderTopCoord]
  15896.     ld b, a
  15897. -   ld a, [wcf84]
  15898. +   ld a, [wMenuBorderBottomCoord]
  15899.     inc a
  15900.     sub b
  15901.     ld b, a
  15902. -   ld a, [wcf83]
  15903. +   ld a, [wMenuBorderLeftCoord]
  15904.     ld c, a
  15905. -   ld a, [wcf85]
  15906. +   ld a, [wMenuBorderRightCoord]
  15907.     sub c
  15908.     inc a
  15909.     ld c, a
  15910. diff --git a/predef/sgb.asm b/predef/sgb.asm
  15911. index 590dcb3..12038da 100644
  15912. --- a/predef/sgb.asm
  15913. +++ b/predef/sgb.asm
  15914. @@ -443,13 +443,13 @@ endr
  15915.     ld hl, wcda9 + $13
  15916.     ld a, $5
  15917.     ld [hli], a
  15918. -   ld a, [wcf83]
  15919. +   ld a, [wMenuBorderLeftCoord]
  15920.     ld [hli], a
  15921. -   ld a, [wcf82]
  15922. +   ld a, [wMenuBorderTopCoord]
  15923.     ld [hli], a
  15924. -   ld a, [wcf85]
  15925. +   ld a, [wMenuBorderRightCoord]
  15926.     ld [hli], a
  15927. -   ld a, [wcf84]
  15928. +   ld a, [wMenuBorderBottomCoord]
  15929.     ld [hl], a
  15930.     ld hl, wcda9
  15931.     ld de, wcda9 + $10
  15932. diff --git a/sram.asm b/sram.asm
  15933. index fb7f841..63d3504 100644
  15934. --- a/sram.asm
  15935. +++ b/sram.asm
  15936. @@ -8,9 +8,9 @@ SECTION "SRAM Bank 0", SRAM [$a600], BANK [0]
  15937.  s0_a600:: ds $11a
  15938.  s0_a71a:: ds $11a
  15939.  s0_a834:: ds 1
  15940. -s0_a835:: ds 10 * (PartyMon1StatsEnd - PartyMon1Item)
  15941. +s0_a835:: ds 10 * party_struct_length
  15942.  s0_aa0b:: ds 1
  15943. -s0_aa0c:: ds 10 * (PartyMon1StatsEnd - PartyMon1Item)
  15944. +s0_aa0c:: ds 10 * party_struct_length
  15945.  
  15946.  sMysteryGiftItem:: ds 1
  15947.  s0_abe3:: ds 1
  15948. @@ -18,7 +18,8 @@ s0_abe4:: ds 1
  15949.  s0_abe5:: ds 1
  15950.  s0_abe6:: ds 10
  15951.  s0_abf0:: ds 10
  15952. -s0_abfa:: ds 2
  15953. +sMysteryGiftTimer:: ds 1
  15954. +sMysteryGiftTimerStartDay:: ds 1
  15955.     ds 1
  15956.  sMysteryGiftTrainerHouseFlag:: ds 1
  15957.  s0_abfe:: ds 12
  15958. diff --git a/text/common_4.asm b/text/common_4.asm
  15959. index c96d032..b85295e 100644
  15960. --- a/text/common_4.asm
  15961. +++ b/text/common_4.asm
  15962. @@ -1464,7 +1464,7 @@ UnknownText_0x1c5c5d: ; 0x1c5c5d
  15963.  UnknownText_0x1c5c5e: ; 0x1c5c5e
  15964.     text "You now have"
  15965.     line "@"
  15966. -   deciram wdc4b, $12
  15967. +   deciram wBlueCardBalance, $12
  15968.     text " points."
  15969.     done
  15970.  ; 0x1c5c7b
  15971. diff --git a/tilesets/animations.asm b/tilesets/animations.asm
  15972. index 8f659ac..c84db67 100644
  15973. --- a/tilesets/animations.asm
  15974. +++ b/tilesets/animations.asm
  15975. @@ -504,7 +504,7 @@ ForestTreeLeftAnimation: ; fc45c
  15976.     ld c, l
  15977.  
  15978.  ; Only during the Celebi event.
  15979. -   ld a, [wdbf3]
  15980. +   ld a, [wCelebiEvent]
  15981.     bit 2, a
  15982.     jr nz, .asm_fc46c
  15983.     ld hl, ForestTreeLeftFrames
  15984. @@ -546,7 +546,7 @@ ForestTreeRightAnimation: ; fc4c4
  15985.     ld c, l
  15986.  
  15987.  ; Only during the Celebi event.
  15988. -   ld a, [wdbf3]
  15989. +   ld a, [wCelebiEvent]
  15990.     bit 2, a
  15991.     jr nz, .asm_fc4d4
  15992.     ld hl, ForestTreeRightFrames
  15993. @@ -581,7 +581,7 @@ ForestTreeLeftAnimation2: ; fc4f2
  15994.     ld c, l
  15995.  
  15996.  ; Only during the Celebi event.
  15997. -   ld a, [wdbf3]
  15998. +   ld a, [wCelebiEvent]
  15999.     bit 2, a
  16000.     jr nz, .asm_fc502
  16001.     ld hl, ForestTreeLeftFrames
  16002. @@ -613,7 +613,7 @@ ForestTreeRightAnimation2: ; fc51c
  16003.     ld c, l
  16004.  
  16005.  ; Only during the Celebi event.
  16006. -   ld a, [wdbf3]
  16007. +   ld a, [wCelebiEvent]
  16008.     bit 2, a
  16009.     jr nz, .asm_fc52c
  16010.     ld hl, ForestTreeRightFrames
  16011. diff --git a/trainers/attributes.asm b/trainers/attributes.asm
  16012. index 1aa5065..40a0760 100644
  16013. --- a/trainers/attributes.asm
  16014. +++ b/trainers/attributes.asm
  16015. @@ -1,24 +1,3 @@
  16016. -   const_def
  16017. -   const       NO_AI
  16018. -const_value = 0
  16019. -   shift_const AI_BASIC
  16020. -   shift_const AI_SETUP
  16021. -   shift_const AI_TYPES
  16022. -   shift_const AI_OFFENSIVE
  16023. -   shift_const AI_SMART
  16024. -   shift_const AI_OPPORTUNIST
  16025. -   shift_const AI_AGGRESSIVE
  16026. -   shift_const AI_CAUTIOUS
  16027. -   shift_const AI_STATUS
  16028. -   shift_const AI_RISKY
  16029. -   shift_const AI_10
  16030. -   shift_const AI_11
  16031. -   shift_const AI_12
  16032. -   shift_const AI_13
  16033. -   shift_const AI_14
  16034. -   shift_const AI_15
  16035. -
  16036. -
  16037.  TrainerClassAttributes: ; 3959c
  16038.  
  16039.  ; Falkner
  16040. diff --git a/wram.asm b/wram.asm
  16041. index b91af90..42f1cd4 100644
  16042. --- a/wram.asm
  16043. +++ b/wram.asm
  16044. @@ -129,6 +129,7 @@ channel_struct: MACRO
  16045.                        ds 1 ; c131
  16046.                        ds 1 ; c132
  16047.  ENDM
  16048. +GLOBAL box_struct_length, party_struct_length
  16049.  
  16050.  INCLUDE "vram.asm"
  16051.  
  16052. @@ -880,19 +881,20 @@ wc7e8:: ds 24
  16053.  
  16054.  
  16055.  RSSET 0 ; Offsets for wBT_OTTempCopy:: @ $c608
  16056. -wBT_OTTempCopy_0           RB   $A         ; $c608
  16057. -wBT_OTTempCopy_TrainerClass    RB   $1         ; $c608 + $a = $c612
  16058. -wBT_OTTempCopy_Pkmn1       RB   $30        ; $c608 + $b = $c613
  16059. -wBT_OTTempCopy_Pkmn1Name   RB   $A         ; $c608 + $3b = $c643
  16060. -wBT_OTTempCopy_45          RB   $1         ; $c608 + $45 = $c64d
  16061. -wBT_OTTempCopy_Pkmn2       RB   $30        ; $c608 + $46 = $c64e
  16062. -wBT_OTTempCopy_Pkmn2Name   RB   $A         ; $c608 + $76 = $c67e
  16063. -wBT_OTTempCopy_80          RB   $1         ; $c608 + $80 = $c688
  16064. -wBT_OTTempCopy_Pkmn3       RB   $30        ; $c608 + $81 = $c689
  16065. -wBT_OTTempCopy_Pkmn3Name   RB   $A         ; $c608 + $b1 = $c6b9
  16066. -wBT_OTTempCopy_BB          RB   $1         ; $c608 + $bb = $c6c3
  16067. +wBT_OTTempCopy_0           RB 10                    ; $c608
  16068. +wBT_OTTempCopy_TrainerClass    RB 1                     ; $c608 + $a = $c612
  16069. +wBT_OTTempCopy_Pkmn1       RB party_struct_length   ; $c608 + $b = $c613
  16070. +wBT_OTTempCopy_Pkmn1Name   RB PKMN_NAME_LENGTH + -1 ; $c608 + $45 = $c64d
  16071. +wBT_OTTempCopy_45           RB 1
  16072. +wBT_OTTempCopy_Pkmn2       RB party_struct_length   ; $c608 + $46 = $c64e
  16073. +wBT_OTTempCopy_Pkmn2Name   RB PKMN_NAME_LENGTH + -1 ; $c608 + $76 = $c67e
  16074. +wBT_OTTempCopy_80           RB 1
  16075. +wBT_OTTempCopy_Pkmn3       RB party_struct_length   ; $c608 + $81 = $c689
  16076. +wBT_OTTempCopy_Pkmn3Name   RB PKMN_NAME_LENGTH + -1 ; $c608 + $b1 = $c6b9
  16077. +wBT_OTTempCopy_BB           RB 1
  16078.  
  16079. -GLOBAL wBT_OTTempCopy_TrainerClass, wBT_OTTempCopy_Pkmn1, wBT_OTTempCopy_Pkmn1Name, wBT_OTTempCopy_45, wBT_OTTempCopy_Pkmn2, wBT_OTTempCopy_Pkmn2Name, wBT_OTTempCopy_80, wBT_OTTempCopy_Pkmn3, wBT_OTTempCopy_Pkmn3Name, wBT_OTTempCopy_BB
  16080. +GLOBAL wBT_OTTempCopy_TrainerClass, wBT_OTTempCopy_Pkmn1, wBT_OTTempCopy_Pkmn1Name, wBT_OTTempCopy_Pkmn2, wBT_OTTempCopy_Pkmn2Name, wBT_OTTempCopy_Pkmn3, wBT_OTTempCopy_Pkmn3Name
  16081. +GLOBAL wBT_OTTempCopy_45, wBT_OTTempCopy_80, wBT_OTTempCopy_BB
  16082.  
  16083.  
  16084.  
  16085. @@ -1221,25 +1223,28 @@ wcf75:: ds 1
  16086.  wcf76:: ds 1
  16087.  wcf77:: ds 1
  16088.  wcf78:: ds 9
  16089. +
  16090. +; menu data header buffer (ds 16)
  16091.  wcf81:: ds 1
  16092.  
  16093.  ; dw related to tilemap
  16094. -wcf82:: ds 1
  16095. -wcf83:: ds 1
  16096. +wMenuBorderTopCoord:: ds 1
  16097. +wMenuBorderLeftCoord:: ds 1
  16098. +wMenuBorderBottomCoord:: ds 1
  16099. +wMenuBorderRightCoord:: ds 1
  16100.  
  16101. -wcf84:: ds 1
  16102. -wcf85:: ds 1
  16103.  wcf86:: ds 1
  16104.  wcf87:: ds 1
  16105. -wcf88:: ds 2
  16106. -wcf8a:: ds 7
  16107. +wPocketPointerLocationBuffer:: ds 2
  16108. +wcf8a:: ds 7 ; menu data 2 bank?
  16109.  wcf91:: ds 1
  16110. +
  16111.  wcf92:: ds 1
  16112.  wcf93:: ds 1
  16113.  wcf94:: ds 1
  16114. -wcf95:: ds 1
  16115. -wcf96:: ds 1
  16116. -wcf97:: ds 1
  16117. +wcf95:: ds 1 ; bank
  16118. +wcf96:: ds 1 ; addr lo
  16119. +wcf97:: ds 1 ; addr hi
  16120.  wcf98:: ds 3
  16121.  wcf9b:: ds 3
  16122.  wcf9e:: ds 3
  16123. @@ -1340,10 +1345,13 @@ Options2:: ; cfd1
  16124.     ds 2
  16125.  OptionsEnd::
  16126.  
  16127. -wcfd4:: ds 1
  16128. -wcfd5:: ds 1
  16129. -wcfd6:: ds 1
  16130. -wcfd7:: ds 1 ; related to time
  16131. +; Time buffer, for counting the amount of time since
  16132. +; an event began.
  16133. +
  16134. +wSecondsSince:: ds 1
  16135. +wMinutesSince:: ds 1
  16136. +wHoursSince:: ds 1
  16137. +wDaysSince:: ds 1
  16138.  
  16139.     ds 40
  16140.  
  16141. @@ -1428,13 +1436,17 @@ EngineBuffer1:: ; d03e
  16142.  wd03f::
  16143.  CurFruit:: ; d03f
  16144.  MartPointerBank::
  16145. +EngineBuffer2::
  16146.     ds 1
  16147.  
  16148.  wd040::
  16149.  MartPointer:: ; d040
  16150. +EngineBuffer3::
  16151.     ds 1
  16152.  
  16153. -wd041:: ds 1
  16154. +wd041::
  16155. +EngineBuffer4::
  16156. +   ds 1
  16157.  MovementAnimation:: ; d042
  16158.     ds 1
  16159.  
  16160. @@ -1488,10 +1500,10 @@ CurMoveNum:: ; d0d5
  16161.  wd0d6:: ds 1
  16162.  wd0d7:: ds 1
  16163.  wd0d8:: ds 1
  16164. -wd0d9:: ds 1
  16165. -wd0da:: ds 1
  16166. -wd0db:: ds 1
  16167. -wd0dc:: ds 1
  16168. +wItemsPocketPointerLocation:: ds 1
  16169. +wKeyItemsPocketPointerLocation:: ds 1
  16170. +wBallsPocketPointerLocation:: ds 1
  16171. +wTMHMPocketPointerLocation:: ds 1
  16172.  wd0dd:: ds 2
  16173.  wd0df:: ds 1
  16174.  wd0e0:: ds 1
  16175. @@ -1511,7 +1523,7 @@ VramState:: ; d0ed
  16176.  ;        flickers when climbing waterfall
  16177.     ds 1
  16178.  
  16179. -wd0ee:: ds 1
  16180. +wBattleResult:: ds 1
  16181.  wd0ef:: ds 1
  16182.  wd0f0::
  16183.  CurMart:: ; d0f0
  16184. @@ -1559,7 +1571,9 @@ wd13f:: ds 2
  16185.  PartyMenuActionText:: ; d141
  16186.     ds 1
  16187.  
  16188. -wd142:: ds 1
  16189. +wItemAttributeParamBuffer::
  16190. +wd142::
  16191. +   ds 1
  16192.  
  16193.  CurPartyLevel:: ; d143
  16194.     ds 1
  16195. @@ -1942,13 +1956,18 @@ wd454:: ds 1
  16196.     ds 4
  16197.  
  16198.  wd459:: ds 2
  16199. -wd45b:: ds 1
  16200. -wd45c:: ds 8
  16201. -wd464:: ds 1
  16202. -wd465:: ds 1
  16203. -wd466:: ds 6
  16204. -wd46c:: ds 1
  16205. -wd46d:: ds 5
  16206. +wPlayerSpriteSetupFlags:: ds 1
  16207. +wMapReentryScriptQueueFlag:: ds 1 ; MemScriptFlag
  16208. +wMapReentryScriptBank:: ds 1 ; MemScriptBank
  16209. +wMapReentryScriptAddress:: ds 2 ; MemScriptAddr
  16210. +   ds 4     ; ?????????????
  16211. +wTimeCyclesSinceLastCall:: ds 1
  16212. +wReceiveCallDelay_MinsRemaining:: ds 1
  16213. +wReceiveCallDelay_StartTime:: ds 3
  16214. +   ds 3
  16215. +wBugContestMinsRemaining:: ds 1
  16216. +wBugContestSecsRemaining:: ds 1
  16217. +   ds 4
  16218.  
  16219.  wCrystalData::
  16220.  PlayerGender:: ; d472
  16221. @@ -2333,7 +2352,7 @@ wCurBox:: ; db72
  16222.  ; 8 chars + $50
  16223.  wBoxNames:: ds 9 * NUM_BOXES ; db75
  16224.  
  16225. -wdbf3:: ds 1
  16226. +wCelebiEvent:: ds 1
  16227.     ds 1
  16228.  
  16229.  BikeFlags:: ; dbf5
  16230. @@ -2358,7 +2377,8 @@ wdc03:: ds 1
  16231.  wdc04:: ds 1
  16232.  wdc05:: ds 1
  16233.  wdc06:: ds 1
  16234. -wdc07:: ds 2
  16235. +wdc07:: ds 1
  16236. +wdc08:: ds 1
  16237.  wdc09:: ds 1
  16238.  wdc0a:: ds 1
  16239.  wdc0b:: ds 2
  16240. @@ -2391,13 +2411,13 @@ wdc18:: ds 1
  16241.  wdc19:: ds 1
  16242.  wdc1a:: ds 1
  16243.  wdc1b:: ds 1
  16244. -wdc1c:: ds 2
  16245. +wDailyResetTimer:: ds 2
  16246.  DailyFlags:: ds 1
  16247.  WeeklyFlags:: ds 1
  16248.  SwarmFlags:: ds 1
  16249.  wdc21:: ds 1
  16250.  wdc22:: ds 1
  16251. -wdc23:: ds 1
  16252. +wStartDay:: ds 1
  16253.  wdc24:: ds 2
  16254.  wdc26:: ds 1
  16255.  
  16256. @@ -2410,15 +2430,16 @@ wLuckyNumberDayBuffer:: ds 2
  16257.     ds 2
  16258.  wSpecialPhoneCallID:: ds 2
  16259.  wdc33:: ds 2
  16260. -wdc35:: ds 4
  16261. +wBugContestStartTime:: ds 4 ; day, hour, min, sec
  16262.  wdc39:: ds 1
  16263. -wdc3a:: ds 1 ; related to time
  16264. -wdc3b:: ds 5 ; related to time
  16265. +wUnusedTwoDayTimer:: ds 1
  16266. +wUnusedTwoDayTimerStartDate:: ds 1
  16267. +   ds 4
  16268.  wdc40:: ds 1
  16269.  wdc41:: ds 1
  16270.  wdc42:: ds 8
  16271. -wdc4a:: ds 1
  16272. -wdc4b:: ds 1
  16273. +wBuenasPassword:: ds 1
  16274. +wBlueCardBalance:: ds 1
  16275.  wDailyRematchFlags:: ds 4
  16276.  wDailyPhoneItemFlags:: ds 4
  16277.  wDailyPhoneTimeOfDayFlags:: ds 4
  16278. @@ -2438,11 +2459,13 @@ PoisonStepCount:: ; dc74
  16279.  wdc77:: ds 2
  16280.  wdc79:: ds 1
  16281.  wdc7a:: ds 2
  16282. -wdc7c:: ds 33
  16283. +wPhoneList:: ds CONTACT_LIST_SIZE
  16284. +   ds 23
  16285.  wLuckyNumberShowFlag:: ds 2
  16286.  wLuckyIDNumber:: ds 2
  16287. -wdca1:: ds 3
  16288. -wdca4:: ds 1
  16289. +wRepelEffect:: ds 1
  16290. +wBikeStep:: ds 2
  16291. +wKurtApricornQuantity:: ds 1
  16292.  
  16293.  wPlayerDataEnd::
Add Comment
Please, Sign In to add comment