Merge remote-tracking branch 'kanzure/master'

This commit is contained in:
yenatch
2014-12-11 23:25:30 -08:00
14 changed files with 737 additions and 417 deletions

View File

@@ -1,3 +1,37 @@
# Vagrant
The simplest way to get pokecrystal to compile is to use Vagrant and
VirtualBox. Follow these steps:
* [Download and install Vagrant](http://www.vagrantup.com/downloads.html)
* Follow the instructions to [download and install VirtualBox](http://docs-v1.vagrantup.com/v1/docs/getting-started/)
* Run these commands:
```
vagrant box add pokecrystal http://diyhpl.us/~bryan/irc/pokecrystal/pokecrystal.box
mkdir vagrantbox
cd vagrantbox
vagrant init pokecrystal
vagrant up
vagrant ssh -c "cd /vagrant && git clone git://github.com/kanzure/pokecrystal.git"
vagrant ssh -c "cd /vagrant/pokecrystal && git submodule init && git submodule update"
vagrant ssh
```
Running "vagrant ssh" will give you a shell to type commands into for compiling
the source code. The the "virtualbox" directory on the host appears as a shared
folder inside of the guest virtual machine at "/vagrant".
To build the project, run these commands in the guest (that is, inside "vagrant
ssh"):
cd /vagrant/pokecrystal
make
To make the build work you will need to copy baserom.gbc into the "pokecrystal"
directory inside the "virtualbox" directory on the host machine. Eventually
this will not be required.
# Linux # Linux
Dependencies: Dependencies:

View File

@@ -43,7 +43,7 @@ crystal: pokecrystal.gbc
clean: clean:
rm -f $(roms) $(all_obj) rm -f $(roms) $(all_obj)
find -iname '*.tx' -exec rm {} + find . -iname '*.tx' -exec rm {} +
baserom.gbc: ; baserom.gbc: ;
@echo "Wait! Need baserom.gbc first. Check README and INSTALL for details." && false @echo "Wait! Need baserom.gbc first. Check README and INSTALL for details." && false

View File

@@ -12,8 +12,7 @@ To set up the repository, see [**INSTALL.md**](INSTALL.md).
## See also ## See also
* Disassembly of [**Pokémon Red/Blue**][pokered] * Disassembly of [**Pokémon Red/Blue**][pokered]
* irc: **nucleus.kafuka.org** [**#skeetendo**][irc] * irc: **irc.freenode.net** [**#pret**][irc]
[pokered]: https://github.com/iimarckus/pokered [pokered]: https://github.com/iimarckus/pokered
[irc]: https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo [irc]: https://kiwiirc.com/client/irc.freenode.net/?#pret

59
Vagrantfile vendored Normal file
View File

@@ -0,0 +1,59 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
# TODO: insert scripts to build the box instead of trusting the uploaded
# version. The default should be to build the box when running "vagrant up",
# rather than just downloading a pre-existing box.
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# All Vagrant configuration is done here. The most common configuration
# options are documented and commented below. For a complete reference,
# please see the online documentation at vagrantup.com.
# Every Vagrant virtual environment requires a box to build off of.
config.vm.box = "pokecrystal"
config.vm.box_url = "http://diyhpl.us/~bryan/irc/pokecrystal/pokecrystal.box"
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
config.vm.box_check_update = false
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
config.vm.network "forwarded_port", guest: 80, host: 8650
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
config.vm.network "public_network"
# If true, then any SSH connections made will enable agent forwarding.
# Default value: false
config.ssh.forward_agent = true
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
config.vm.synced_folder "./", "/vagrant"
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
config.vm.provider "virtualbox" do |vb|
# Don't boot with headless mode
vb.gui = false
# Use VBoxManage to customize the VM. For example to change memory:
vb.customize ["modifyvm", :id, "--memory", "1024"]
end
end

File diff suppressed because it is too large Load Diff

View File

@@ -245,7 +245,7 @@ ParkBall: ; e8a2
jp z, .asm_e99c jp z, .asm_e99c
ld a, [CurItem] ld a, [CurItem]
ld c, a ld c, a
ld hl, Table_0xec0a ld hl, BallMultiplierFunctionTable
.asm_e8f2 .asm_e8f2
ld a, [hli] ld a, [hli]
@@ -329,19 +329,23 @@ ParkBall: ; e8a2
ld a, [$ffb6] ld a, [$ffb6]
and a and a
jr nz, .asm_e960 jr nz, .statuscheck
ld a, 1 ld a, 1
.asm_e960 .statuscheck
; This routine is buggy. It was intended that SLP and FRZ provide a higher
; catch rate than BRN/PSN/PAR, which in turn provide a higher catch rate than
; no status effect at all. But instead, it makes BRN/PSN/PAR provide no
; benefit.
ld b, a ld b, a
ld a, [EnemyMonStatus] ld a, [EnemyMonStatus]
and 1 << FRZ | SLP and 1 << FRZ | SLP
ld c, 10 ld c, 10
jr nz, .asm_e971 jr nz, .addstatus
and a and a
ld c, 5 ld c, 5
jr nz, .asm_e971 jr nz, .addstatus
ld c, 0 ld c, 0
.asm_e971 .addstatus
ld a, b ld a, b
add c add c
jr nc, .asm_e977 jr nc, .asm_e977
@@ -725,34 +729,32 @@ ParkBall: ; e8a2
; ec0a ; ec0a
Table_0xec0a: ; ec0a BallMultiplierFunctionTable:
; Note: SAFARI_BALL does not exist. ; table of routines that increase or decrease the catch rate based on
dbw ULTRA_BALL, UltraBallChance ; which ball is used in a certain situation.
dbw GREAT_BALL, GreatBallChance dbw ULTRA_BALL, UltraBallMultiplier
dbw SAFARI_BALL, SafariBallChance dbw GREAT_BALL, GreatBallMultiplier
dbw HEAVY_BALL, HeavyBallChance dbw 8, SafariBallMultiplier ; Safari Ball, leftover from RBY
dbw LEVEL_BALL, LevelBallChance dbw HEAVY_BALL, HeavyBallMultiplier
dbw LURE_BALL, LureBallChance dbw LEVEL_BALL, LevelBallMultiplier
dbw FAST_BALL, FastBallChance dbw LURE_BALL, LureBallMultiplier
dbw MOON_BALL, MoonBallChance dbw FAST_BALL, FastBallMultiplier
dbw LOVE_BALL, LoveBallChance dbw MOON_BALL, MoonBallMultiplier
dbw PARK_BALL, ParkBallChance dbw LOVE_BALL, LoveBallMultiplier
dbw PARK_BALL, ParkBallMultiplier
db $ff db $ff
; ec29
UltraBallMultiplier:
UltraBallChance: ; ec29 ; multiply catch rate by 2
; x2
sla b sla b
ret nc ret nc
ld b, $ff ld b, $ff
ret ret
; ec2f
GreatBallChance: ; ec2f SafariBallMultiplier:
ParkBallChance: GreatBallMultiplier:
SafariBallChance: ParkBallMultiplier:
; x1.5 ; multiply catch rate by 1.5
ld a, b ld a, b
srl a srl a
add b add b
@@ -760,10 +762,8 @@ SafariBallChance:
ret nc ret nc
ld b, $ff ld b, $ff
ret ret
; ec38
GetPokedexEntryBank:
GetPokedexEntryBank: ; ec38
push hl push hl
push de push de
ld a, [EnemyMonSpecies] ld a, [EnemyMonSpecies]
@@ -790,9 +790,13 @@ GLOBAL PokedexEntries4
db BANK(PokedexEntries2) db BANK(PokedexEntries2)
db BANK(PokedexEntries3) db BANK(PokedexEntries3)
db BANK(PokedexEntries4) db BANK(PokedexEntries4)
; ec50
HeavyBallChance: ; ec50 HeavyBallMultiplier:
; subtract 20 from catch rate if weight < 102.4 kg
; else add 0 to catch rate if weight < 204.8 kg
; else add 20 to catch rate if weight < 307.2 kg
; else add 30 to catch rate if weight < 409.6 kg
; else add 40 to catch rate (never happens)
ld a, [EnemyMonSpecies] ld a, [EnemyMonSpecies]
ld hl, PokedexDataPointerTable ld hl, PokedexDataPointerTable
dec a dec a
@@ -825,17 +829,18 @@ HeavyBallChance: ; ec50
srl b srl b
rr c rr c
endr endr
call .asm_ec99 call .subbc
srl b srl b
rr c rr c
call .asm_ec99 call .subbc
ld a, h ld a, h
pop bc pop bc
jr .asm_eca4 jr .compare
.asm_ec99 .subbc
; subtract bc from hl
push bc push bc
ld a, b ld a, b
cpl cpl
@@ -848,21 +853,21 @@ HeavyBallChance: ; ec50
pop bc pop bc
ret ret
.asm_eca4 .compare
ld c, a ld c, a
cp $4 cp 1024 >> 8 ; 102.4 kg
jr c, .asm_ecbc jr c, .lightmon
ld hl, .table_ecc4 ld hl, .WeightsTable
.asm_ecac .lookup
ld a, c ld a, c
cp [hl] cp [hl]
jr c, .asm_ecb4 jr c, .heavymon
inc hl inc hl
inc hl inc hl
jr .asm_ecac jr .lookup
.asm_ecb4 .heavymon
inc hl inc hl
ld a, b ld a, b
add [hl] add [hl]
@@ -871,7 +876,7 @@ HeavyBallChance: ; ec50
ld b, $ff ld b, $ff
ret ret
.asm_ecbc .lightmon
ld a, b ld a, b
sub 20 sub 20
ld b, a ld b, a
@@ -879,15 +884,15 @@ HeavyBallChance: ; ec50
ld b, $1 ld b, $1
ret ret
.table_ecc4 .WeightsTable
db 8, 0 ; weight factor, boost
db 12, 20 db 2048 >> 8, 0
db 16, 30 db 3072 >> 8, 20
db 255, 40 db 4096 >> 8, 30
; eccc db 65280 >> 8, 40
LureBallMultiplier:
LureBallChance: ; eccc ; multiply catch rate by 3 if this is a fishing rod battle
ld a, [BattleType] ld a, [BattleType]
cp BATTLETYPE_FISH cp BATTLETYPE_FISH
ret nz ret nz
@@ -903,10 +908,11 @@ LureBallChance: ; eccc
.done .done
ld b, a ld b, a
ret ret
; ecdd
MoonBallMultiplier:
MoonBallChance: ; ecdd ; This function is buggy.
; Intent: multiply catch rate by 4 if mon evolves with moon stone
; Reality: no boost
GLOBAL EvosAttacks GLOBAL EvosAttacks
GLOBAL EvosAttacksPointers GLOBAL EvosAttacksPointers
@@ -934,13 +940,9 @@ GLOBAL EvosAttacksPointers
inc hl inc hl
inc hl inc hl
; It appears that Moon Stone's ; Moon Stone's constant from Pokémon Red is used.
; constant from Pokémon Red is used.
; No Pokémon evolve with Burn Heal, ; No Pokémon evolve with Burn Heal,
; so Moon Balls always have ; so Moon Balls always have a catch rate of 1×.
; a catch rate of 1x.
push bc push bc
ld a, BANK(EvosAttacks) ld a, BANK(EvosAttacks)
call GetFarByte call GetFarByte
@@ -956,16 +958,20 @@ GLOBAL EvosAttacksPointers
ld b, $ff ld b, $ff
.done .done
ret ret
; ed12
LoveBallMultiplier:
; This function is buggy.
; Intent: multiply catch rate by 8 if mons are of same species, different sex
; Reality: multiply catch rate by 8 if mons are of same species, same sex
LoveBallChance: ; ed12 ; does species match?
ld a, [TempEnemyMonSpecies] ld a, [TempEnemyMonSpecies]
ld c, a ld c, a
ld a, [TempBattleMonSpecies] ld a, [TempBattleMonSpecies]
cp c cp c
ret nz ret nz
; check player mon species
push bc push bc
ld a, [TempBattleMonSpecies] ld a, [TempBattleMonSpecies]
ld [CurPartySpecies], a ld [CurPartySpecies], a
@@ -974,52 +980,56 @@ LoveBallChance: ; ed12
ld a, [CurBattleMon] ld a, [CurBattleMon]
ld [CurPartyMon], a ld [CurPartyMon], a
callba GetGender callba GetGender
jr c, .asm_ed66 jr c, .done1 ; no effect on genderless
ld d, 0 ld d, 0 ; male
jr nz, .asm_ed39 jr nz, .playermale
inc d inc d ; female
.asm_ed39 .playermale
; check wild mon species
push de push de
ld a, [TempEnemyMonSpecies] ld a, [TempEnemyMonSpecies]
ld [CurPartySpecies], a ld [CurPartySpecies], a
ld a, WILDMON ld a, WILDMON
ld [MonType], a ld [MonType], a
callba GetGender callba GetGender
jr c, .asm_ed65 jr c, .done2 ; no effect on genderless
ld d, 0 ld d, 0 ; male
jr nz, .asm_ed52 jr nz, .wildmale
inc d inc d ; female
.asm_ed52 .wildmale
ld a, d ld a, d
pop de pop de
cp d cp d
pop bc pop bc
ret nz ret nz ; for the intended effect, this should be “ret z”
sla b sla b
jr c, .asm_ed62 jr c, .max
sla b sla b
jr c, .asm_ed62 jr c, .max
sla b sla b
ret nc ret nc
.asm_ed62 .max
ld b, $ff ld b, $ff
ret ret
.asm_ed65 .done2
pop de pop de
.asm_ed66 .done1
pop bc pop bc
ret ret
; ed68
FastBallMultiplier:
FastBallChance: ; ed68 ; This function is buggy.
; Intent: multiply catch rate by 4 if enemy mon is in one of the three
; FleeMons tables.
; Reality: multiply catch rate by 4 if enemy mon is one of the first three in
; the first FleeMons table.
ld a, [TempEnemyMonSpecies] ld a, [TempEnemyMonSpecies]
ld c, a ld c, a
ld hl, FleeMons ld hl, FleeMons
@@ -1033,7 +1043,7 @@ FastBallChance: ; ed68
cp -1 cp -1
jr z, .next jr z, .next
cp c cp c
jr nz, .next jr nz, .next ; for the intended effect, this should be “jr nz, .loop”
sla b sla b
jr c, .max jr c, .max
@@ -1048,35 +1058,34 @@ FastBallChance: ; ed68
dec d dec d
jr nz, .loop jr nz, .loop
ret ret
; ed8c
LevelBallMultiplier:
LevelBallChance: ; ed8c ; multiply catch rate by 8 if player mon level / 4 > enemy mon level
; multiply catch rate by 4 if player mon level / 2 > enemy mon level
; multiply catch rate by 2 if player mon level > enemy mon level
ld a, [BattleMonLevel] ld a, [BattleMonLevel]
ld c, a ld c, a
ld a, [EnemyMonLevel] ld a, [EnemyMonLevel]
cp c cp c
ret nc ret nc ; if player is lower level, we're done here
sla b sla b
jr c, .max jr c, .max
srl c srl c
cp c cp c
ret nc ret nc ; if player/2 is lower level, we're done here
sla b sla b
jr c, .max jr c, .max
srl c srl c
cp c cp c
ret nc ret nc ; if player/4 is lower level, we're done here
sla b sla b
ret nc ret nc
.max .max
ld b, $ff ld b, $ff
ret ret
; edab
UnknownText_0xedab: ; 0xedab UnknownText_0xedab: ; 0xedab
; It dodged the thrown BALL! This #MON can't be caught! ; It dodged the thrown BALL! This #MON can't be caught!

View File

@@ -41695,6 +41695,8 @@ TrainerClassNames:: ; 2c1ef
AI_Redundant: ; 2c41a AI_Redundant: ; 2c41a
; Check if move effect c will fail because it's already been used. ; Check if move effect c will fail because it's already been used.
; Return z if the move is a good choice.
; Return nz if the move is a bad choice.
ld a, c ld a, c
ld de, 3 ld de, 3
ld hl, .Moves ld hl, .Moves
@@ -47162,7 +47164,7 @@ AIChooseMove: ; 440ce
ld a, c ld a, c
cp 16 ; up to 16 scoring layers cp 16 ; up to 16 scoring layers
jr z, .asm_4415e jr z, .DecrementScores
push bc push bc
ld d, BANK(TrainerClassAttributes) ld d, BANK(TrainerClassAttributes)
@@ -47191,28 +47193,36 @@ AIChooseMove: ; 440ce
jr .CheckLayer jr .CheckLayer
.asm_4415e ; Decrement the scores of all moves one by one until one reaches 0.
.DecrementScores
ld hl, Buffer1 ld hl, Buffer1
ld de, EnemyMonMoves ld de, EnemyMonMoves
ld c, EnemyMonMovesEnd - EnemyMonMoves ld c, EnemyMonMovesEnd - EnemyMonMoves
.asm_44166
.DecrementNextScore
; If the enemy has no moves, this will infinite. ; If the enemy has no moves, this will infinite.
ld a, [de] ld a, [de]
inc de inc de
and a and a
jr z, .asm_4415e jr z, .DecrementScores
; We are done whenever a score reaches 0
dec [hl] dec [hl]
jr z, .asm_44174 jr z, .PickLowestScoreMoves
; If we just decremented the fourth move's score, go back to the first move
inc hl inc hl
dec c dec c
jr z, .asm_4415e jr z, .DecrementScores
jr .asm_44166 jr .DecrementNextScore
.asm_44174 ; In order to avoid bias towards the moves located first in memory, increment the scores
; that were decremented one more time than the rest (in case there was a tie).
; This means that the minimum score will be 1.
.PickLowestScoreMoves
ld a, c ld a, c
.asm_44175 .asm_44175
inc [hl] inc [hl]
dec hl dec hl
@@ -47223,11 +47233,15 @@ AIChooseMove: ; 440ce
ld hl, Buffer1 ld hl, Buffer1
ld de, EnemyMonMoves ld de, EnemyMonMoves
ld c, NUM_MOVES ld c, NUM_MOVES
; Give a score of 0 to a blank move
.asm_44184 .asm_44184
ld a, [de] ld a, [de]
and a and a
jr nz, .asm_44189 jr nz, .asm_44189
ld [hl], a ld [hl], a
; Disregard the move if its score is not 1
.asm_44189 .asm_44189
ld a, [hl] ld a, [hl]
dec a dec a
@@ -47235,6 +47249,7 @@ AIChooseMove: ; 440ce
xor a xor a
ld [hli], a ld [hli], a
jr .asm_44193 jr .asm_44193
.asm_44191 .asm_44191
ld a, [de] ld a, [de]
ld [hli], a ld [hli], a
@@ -47243,7 +47258,8 @@ AIChooseMove: ; 440ce
dec c dec c
jr nz, .asm_44184 jr nz, .asm_44184
.asm_44197 ; Randomly choose one of the moves with a score of 1
.ChooseMove
ld hl, Buffer1 ld hl, Buffer1
call Random call Random
and 3 and 3
@@ -47252,7 +47268,7 @@ AIChooseMove: ; 440ce
add hl, bc add hl, bc
ld a, [hl] ld a, [hl]
and a and a
jr z, .asm_44197 jr z, .ChooseMove
ld [CurEnemyMove], a ld [CurEnemyMove], a
ld a, c ld a, c
@@ -59426,11 +59442,13 @@ String_50bb5: ; 50bb5
GetGender: ; 50bdd GetGender: ; 50bdd
; Return the gender of a given monster in a. ; Return the gender of a given monster (CurPartyMon/CurOTMon/CurWildMon).
; When calling this function, a should be set to an appropriate MonType value.
; 1: male ; return values:
; 0: female ; a = 1: f = nc|nz; male
; c: genderless ; a = 0: f = nc|z; female
; f = c: genderless
; This is determined by comparing the Attack and Speed DVs ; This is determined by comparing the Attack and Speed DVs
; with the species' gender ratio. ; with the species' gender ratio.

View File

@@ -9,25 +9,22 @@ BlackthornCity_MapScriptHeader: ; 0x1a46d0
dbw 5, UnknownScript_0x1a46d8 dbw 5, UnknownScript_0x1a46d8
dbw 2, UnknownScript_0x1a46dc dbw 2, SantosCallback
; 0x1a46d8
UnknownScript_0x1a46d8: ; 0x1a46d8 UnknownScript_0x1a46d8: ; 0x1a46d8
setflag $004b setflag $004b
return return
; 0x1a46dc ; 0x1a46dc
UnknownScript_0x1a46dc: ; 0x1a46dc SantosCallback:
checkcode $b checkcode $b
if_equal SATURDAY, UnknownScript_0x1a46e5 if_equal SATURDAY, .SantosAppears
disappear $9 disappear $9
return return
; 0x1a46e5
UnknownScript_0x1a46e5: ; 0x1a46e5 .SantosAppears
appear $9 appear $9
return return
; 0x1a46e8
SuperNerdScript_0x1a46e8: ; 0x1a46e8 SuperNerdScript_0x1a46e8: ; 0x1a46e8
faceplayer faceplayer
@@ -94,44 +91,41 @@ CooltrainerFScript_0x1a4728: ; 0x1a4728
jumptextfaceplayer UnknownText_0x1a4b1e jumptextfaceplayer UnknownText_0x1a4b1e
; 0x1a472b ; 0x1a472b
YoungsterScript_0x1a472b: ; 0x1a472b SantosScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_SPELL_TAG_FROM_SANTOS checkevent EVENT_GOT_SPELL_TAG_FROM_SANTOS
iftrue UnknownScript_0x1a4759 iftrue SantosSaturdayScript
checkcode $b checkcode $b
if_not_equal SATURDAY, UnknownScript_0x1a475f if_not_equal SATURDAY, SantosNotSaturdayScript
checkevent EVENT_MET_SANTOS_OF_SATURDAY checkevent EVENT_MET_SANTOS_OF_SATURDAY
iftrue UnknownScript_0x1a4746 iftrue .MetSantos
2writetext UnknownText_0x1a4a27 2writetext MeetSantosText
keeptextopen keeptextopen
setevent EVENT_MET_SANTOS_OF_SATURDAY setevent EVENT_MET_SANTOS_OF_SATURDAY
UnknownScript_0x1a4746: ; 0x1a4746 .MetSantos
2writetext UnknownText_0x1a4a57 2writetext SantosGivesGiftText
keeptextopen keeptextopen
verbosegiveitem SPELL_TAG, 1 verbosegiveitem SPELL_TAG, 1
iffalse UnknownScript_0x1a475d iffalse SantosDoneScript
setevent EVENT_GOT_SPELL_TAG_FROM_SANTOS setevent EVENT_GOT_SPELL_TAG_FROM_SANTOS
2writetext UnknownText_0x1a4a6b 2writetext SantosGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a4759
UnknownScript_0x1a4759: ; 0x1a4759 SantosSaturdayScript:
2writetext UnknownText_0x1a4ab6 2writetext SantosSaturdayText
closetext closetext
UnknownScript_0x1a475d: ; 0x1a475d SantosDoneScript:
loadmovesprites loadmovesprites
end end
; 0x1a475f
UnknownScript_0x1a475f: ; 0x1a475f SantosNotSaturdayScript:
2writetext UnknownText_0x1a4b00 2writetext SantosNotSaturdayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a4765
MapBlackthornCitySignpost0Script: ; 0x1a4765 MapBlackthornCitySignpost0Script: ; 0x1a4765
jumptext UnknownText_0x1a4b67 jumptext UnknownText_0x1a4b67
@@ -252,7 +246,7 @@ UnknownText_0x1a49f1: ; 0x1a49f1
done done
; 0x1a4a27 ; 0x1a4a27
UnknownText_0x1a4a27: ; 0x1a4a27 MeetSantosText:
text "SANTOS: …" text "SANTOS: …"
para "It's Saturday…" para "It's Saturday…"
@@ -260,14 +254,12 @@ UnknownText_0x1a4a27: ; 0x1a4a27
para "I'm SANTOS of" para "I'm SANTOS of"
line "Saturday…" line "Saturday…"
done done
; 0x1a4a57
UnknownText_0x1a4a57: ; 0x1a4a57 SantosGivesGiftText:
text "You can have this…" text "You can have this…"
done done
; 0x1a4a6b
UnknownText_0x1a4a6b: ; 0x1a4a6b SantosGaveGiftText:
text "SANTOS: …" text "SANTOS: …"
para "SPELL TAG…" para "SPELL TAG…"
@@ -278,9 +270,8 @@ UnknownText_0x1a4a6b: ; 0x1a4a6b
para "It will frighten" para "It will frighten"
line "you…" line "you…"
done done
; 0x1a4ab6
UnknownText_0x1a4ab6: ; 0x1a4ab6 SantosSaturdayText:
text "SANTOS: …" text "SANTOS: …"
para "See you again on" para "See you again on"
@@ -289,13 +280,11 @@ UnknownText_0x1a4ab6: ; 0x1a4ab6
para "I won't have any" para "I won't have any"
line "more gifts…" line "more gifts…"
done done
; 0x1a4b00
UnknownText_0x1a4b00: ; 0x1a4b00 SantosNotSaturdayText:
text "SANTOS: Today's" text "SANTOS: Today's"
line "not Saturday…" line "not Saturday…"
done done
; 0x1a4b1e
UnknownText_0x1a4b1e: ; 0x1a4b1e UnknownText_0x1a4b1e: ; 0x1a4b1e
text "Wow, you came" text "Wow, you came"
@@ -386,7 +375,5 @@ BlackthornCity_MapEventHeader: ; 0x1a4c57
person_event SPRITE_BLACK_BELT, 35, 28, $5, $1, 255, 255, $90, 0, BlackBeltScript_0x1a470e, $ffff person_event SPRITE_BLACK_BELT, 35, 28, $5, $1, 255, 255, $90, 0, BlackBeltScript_0x1a470e, $ffff
person_event SPRITE_COOLTRAINER_F, 29, 13, $5, $2, 255, 255, $80, 0, CooltrainerFScript_0x1a4722, $ffff person_event SPRITE_COOLTRAINER_F, 29, 13, $5, $2, 255, 255, $80, 0, CooltrainerFScript_0x1a4722, $ffff
person_event SPRITE_YOUNGSTER, 19, 17, $5, $1, 255, 255, $0, 0, YoungsterScript_0x1a4725, $ffff person_event SPRITE_YOUNGSTER, 19, 17, $5, $1, 255, 255, $0, 0, YoungsterScript_0x1a4725, $ffff
person_event SPRITE_YOUNGSTER, 24, 26, $6, $0, 255, 255, $0, 0, YoungsterScript_0x1a472b, $075d person_event SPRITE_YOUNGSTER, 24, 26, $6, $0, 255, 255, $0, 0, SantosScript, $075d
person_event SPRITE_COOLTRAINER_F, 23, 39, $7, $0, 255, 255, $a0, 0, CooltrainerFScript_0x1a4728, $ffff person_event SPRITE_COOLTRAINER_F, 23, 39, $7, $0, 255, 255, $a0, 0, CooltrainerFScript_0x1a4728, $ffff
; 0x1a4d1d

View File

@@ -13,8 +13,7 @@ LakeofRage_MapScriptHeader: ; 0x70000
dbw 5, UnknownScript_0x70012 dbw 5, UnknownScript_0x70012
dbw 2, UnknownScript_0x70016 dbw 2, WesleyCallback
; 0x70010
UnknownScript_0x70010: ; 0x70010 UnknownScript_0x70010: ; 0x70010
end end
@@ -29,17 +28,15 @@ UnknownScript_0x70012: ; 0x70012
return return
; 0x70016 ; 0x70016
UnknownScript_0x70016: ; 0x70016 WesleyCallback:
checkcode $b checkcode $b
if_equal WEDNESDAY, UnknownScript_0x7001f if_equal WEDNESDAY, .WesleyAppears
disappear $b disappear $b
return return
; 0x7001f
UnknownScript_0x7001f: ; 0x7001f .WesleyAppears
appear $b appear $b
return return
; 0x70022
LanceScript_0x70022: ; 0x70022 LanceScript_0x70022: ; 0x70022
checkevent EVENT_REFUSED_TO_HELP_LANCE_AT_LAKE_OF_RAGE checkevent EVENT_REFUSED_TO_HELP_LANCE_AT_LAKE_OF_RAGE
@@ -270,44 +267,41 @@ CooltrainerfLoisScript: ; 0x70106
end end
; 0x7010e ; 0x7010e
SuperNerdScript_0x7010e: ; 0x7010e WesleyScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_BLACKBELT_FROM_WESLEY checkevent EVENT_GOT_BLACKBELT_FROM_WESLEY
iftrue UnknownScript_0x7013c iftrue WesleyWednesdayScript
checkcode $b checkcode $b
if_not_equal WEDNESDAY, UnknownScript_0x70142 if_not_equal WEDNESDAY, WesleyNotWednesdayScript
checkevent EVENT_MET_WESLEY_OF_WEDNESDAY checkevent EVENT_MET_WESLEY_OF_WEDNESDAY
iftrue UnknownScript_0x70129 iftrue .MetWesley
2writetext UnknownText_0x70784 2writetext MeetWesleyText
keeptextopen keeptextopen
setevent EVENT_MET_WESLEY_OF_WEDNESDAY setevent EVENT_MET_WESLEY_OF_WEDNESDAY
UnknownScript_0x70129: ; 0x70129 .MetWesley
2writetext UnknownText_0x707dd 2writetext WesleyGivesGiftText
keeptextopen keeptextopen
verbosegiveitem BLACKBELT, 1 verbosegiveitem BLACKBELT, 1
iffalse UnknownScript_0x70140 iffalse WesleyDoneScript
setevent EVENT_GOT_BLACKBELT_FROM_WESLEY setevent EVENT_GOT_BLACKBELT_FROM_WESLEY
2writetext UnknownText_0x7080b 2writetext WesleyGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x7013c
UnknownScript_0x7013c: ; 0x7013c WesleyWednesdayScript:
2writetext UnknownText_0x70844 2writetext WesleyWednesdayText
closetext closetext
UnknownScript_0x70140: ; 0x70140 WesleyDoneScript:
loadmovesprites loadmovesprites
end end
; 0x70142
UnknownScript_0x70142: ; 0x70142 WesleyNotWednesdayScript:
2writetext UnknownText_0x708a9 2writetext WesleyNotWednesdayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x70148
ItemFragment_0x70148: ; 0x70148 ItemFragment_0x70148: ; 0x70148
db ELIXER, 1 db ELIXER, 1
@@ -561,7 +555,7 @@ UnknownText_0x70752: ; 0x70752
done done
; 0x70784 ; 0x70784
UnknownText_0x70784: ; 0x70784 MeetWesleyText:
text "WESLEY: Well, how" text "WESLEY: Well, how"
line "do you do?" line "do you do?"
@@ -571,23 +565,20 @@ UnknownText_0x70784: ; 0x70784
para "I'm WESLEY of" para "I'm WESLEY of"
line "Wednesday." line "Wednesday."
done done
; 0x707dd
UnknownText_0x707dd: ; 0x707dd WesleyGivesGiftText:
text "Pleased to meet" text "Pleased to meet"
line "you. Please take a" line "you. Please take a"
cont "souvenir." cont "souvenir."
done done
; 0x7080b
UnknownText_0x7080b: ; 0x7080b WesleyGaveGiftText:
text "WESLEY: BLACKBELT" text "WESLEY: BLACKBELT"
line "beefs up the power" line "beefs up the power"
cont "of fighting moves." cont "of fighting moves."
done done
; 0x70844
UnknownText_0x70844: ; 0x70844 WesleyWednesdayText:
text "WESLEY: Since you" text "WESLEY: Since you"
line "found me, you must" line "found me, you must"
@@ -597,14 +588,12 @@ UnknownText_0x70844: ; 0x70844
para "Or did you just" para "Or did you just"
line "get lucky?" line "get lucky?"
done done
; 0x708a9
UnknownText_0x708a9: ; 0x708a9 WesleyNotWednesdayText:
text "WESLEY: Today's" text "WESLEY: Today's"
line "not Wednesday." line "not Wednesday."
cont "That's too bad." cont "That's too bad."
done done
; 0x708d7
UnknownText_0x708d7: ; 0x708d7 UnknownText_0x708d7: ; 0x708d7
text "LAKE OF RAGE," text "LAKE OF RAGE,"
@@ -650,8 +639,6 @@ LakeofRage_MapEventHeader: ; 0x70919
person_event SPRITE_COOLTRAINER_M, 19, 8, $9, $0, 255, 255, $82, 1, TrainerCooltrainermAaron, $0735 person_event SPRITE_COOLTRAINER_M, 19, 8, $9, $0, 255, 255, $82, 1, TrainerCooltrainermAaron, $0735
person_event SPRITE_COOLTRAINER_F, 11, 40, $8, $0, 255, 255, $82, 0, TrainerCooltrainerfLois, $0735 person_event SPRITE_COOLTRAINER_F, 11, 40, $8, $0, 255, 255, $82, 0, TrainerCooltrainerfLois, $0735
person_event SPRITE_GYARADOS, 26, 22, $16, $0, 255, 255, $80, 0, GyaradosScript_0x70063, $0751 person_event SPRITE_GYARADOS, 26, 22, $16, $0, 255, 255, $80, 0, GyaradosScript_0x70063, $0751
person_event SPRITE_SUPER_NERD, 8, 8, $6, $0, 255, 255, $0, 0, SuperNerdScript_0x7010e, $075c person_event SPRITE_SUPER_NERD, 8, 8, $6, $0, 255, 255, $0, 0, WesleyScript, $075c
person_event SPRITE_POKE_BALL, 14, 11, $1, $0, 255, 255, $1, 0, ItemFragment_0x70148, $0645 person_event SPRITE_POKE_BALL, 14, 11, $1, $0, 255, 255, $1, 0, ItemFragment_0x70148, $0645
person_event SPRITE_POKE_BALL, 6, 39, $1, $0, 255, 255, $1, 0, ItemFragment_0x7014a, $0646 person_event SPRITE_POKE_BALL, 6, 39, $1, $0, 255, 255, $1, 0, ItemFragment_0x7014a, $0646
; 0x709de

View File

@@ -11,8 +11,7 @@ Route29_MapScriptHeader: ; 0x1a0f4c
; callbacks ; callbacks
dbw 2, UnknownScript_0x1a0f5b dbw 2, TuscanyCallback
; 0x1a0f59
UnknownScript_0x1a0f59: ; 0x1a0f59 UnknownScript_0x1a0f59: ; 0x1a0f59
end end
@@ -22,20 +21,19 @@ UnknownScript_0x1a0f5a: ; 0x1a0f5a
end end
; 0x1a0f5b ; 0x1a0f5b
UnknownScript_0x1a0f5b: ; 0x1a0f5b TuscanyCallback:
checkflag $001b checkflag $001b
iftrue UnknownScript_0x1a0f64 iftrue .DoesTuscanyAppear
UnknownScript_0x1a0f61: ; 0x1a0f61
.TuscanyDisappears
disappear $8 disappear $8
return return
; 0x1a0f64
UnknownScript_0x1a0f64: ; 0x1a0f64 .DoesTuscanyAppear
checkcode $b checkcode $b
if_not_equal TUESDAY, UnknownScript_0x1a0f61 if_not_equal TUESDAY, .TuscanyDisappears
appear $8 appear $8
return return
; 0x1a0f6d
UnknownScript_0x1a0f6d: ; 0x1a0f6d UnknownScript_0x1a0f6d: ; 0x1a0f6d
spriteface $2, $1 spriteface $2, $1
@@ -177,44 +175,41 @@ UnknownScript_0x1a1043: ; 0x1a1043
end end
; 0x1a1049 ; 0x1a1049
TeacherScript_0x1a1049: ; 0x1a1049 TuscanyScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_PINK_BOW_FROM_TUSCANY checkevent EVENT_GOT_PINK_BOW_FROM_TUSCANY
iftrue UnknownScript_0x1a1077 iftrue TuscanyTuesdayScript
checkcode $b checkcode $b
if_not_equal TUESDAY, UnknownScript_0x1a107d if_not_equal TUESDAY, TuscanyNotTuesdayScript
checkevent EVENT_MET_TUSCANY_OF_TUESDAY checkevent EVENT_MET_TUSCANY_OF_TUESDAY
iftrue UnknownScript_0x1a1064 iftrue .MetTuscany
2writetext UnknownText_0x1a13b2 2writetext MeetTuscanyText
keeptextopen keeptextopen
setevent EVENT_MET_TUSCANY_OF_TUESDAY setevent EVENT_MET_TUSCANY_OF_TUESDAY
UnknownScript_0x1a1064: ; 0x1a1064 .MetTuscany
2writetext UnknownText_0x1a142f 2writetext TuscanyGivesGiftText
keeptextopen keeptextopen
verbosegiveitem PINK_BOW, 1 verbosegiveitem PINK_BOW, 1
iffalse UnknownScript_0x1a107b iffalse TuscanyDoneScript
setevent EVENT_GOT_PINK_BOW_FROM_TUSCANY setevent EVENT_GOT_PINK_BOW_FROM_TUSCANY
2writetext UnknownText_0x1a146f 2writetext TuscanyGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a1077
UnknownScript_0x1a1077: ; 0x1a1077 TuscanyTuesdayScript:
2writetext UnknownText_0x1a14e7 2writetext TuscanyTuesdayText
closetext closetext
UnknownScript_0x1a107b: ; 0x1a107b TuscanyDoneScript:
loadmovesprites loadmovesprites
end end
; 0x1a107d
UnknownScript_0x1a107d: ; 0x1a107d TuscanyNotTuesdayScript:
2writetext UnknownText_0x1a1559 2writetext TuscanyNotTuesdayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a1083
MapRoute29Signpost0Script: ; 0x1a1083 MapRoute29Signpost0Script: ; 0x1a1083
jumptext UnknownText_0x1a158e jumptext UnknownText_0x1a158e
@@ -382,7 +377,7 @@ UnknownText_0x1a137c: ; 0x1a137c
done done
; 0x1a13b2 ; 0x1a13b2
UnknownText_0x1a13b2: ; 0x1a13b2 MeetTuscanyText:
text "TUSCANY: I do be-" text "TUSCANY: I do be-"
line "lieve that this is" line "lieve that this is"
@@ -395,18 +390,16 @@ UnknownText_0x1a13b2: ; 0x1a13b2
para "I am TUSCANY of" para "I am TUSCANY of"
line "Tuesday." line "Tuesday."
done done
; 0x1a142f
UnknownText_0x1a142f: ; 0x1a142f TuscanyGivesGiftText:
text "By way of intro-" text "By way of intro-"
line "duction, please" line "duction, please"
para "accept this gift," para "accept this gift,"
line "a PINK BOW." line "a PINK BOW."
done done
; 0x1a146f
UnknownText_0x1a146f: ; 0x1a146f TuscanyGaveGiftText:
text "TUSCANY: Wouldn't" text "TUSCANY: Wouldn't"
line "you agree that it" line "you agree that it"
cont "is most adorable?" cont "is most adorable?"
@@ -417,9 +410,8 @@ UnknownText_0x1a146f: ; 0x1a146f
para "I am certain it" para "I am certain it"
line "will be of use." line "will be of use."
done done
; 0x1a14e7
UnknownText_0x1a14e7: ; 0x1a14e7 TuscanyTuesdayText:
text "TUSCANY: Have you" text "TUSCANY: Have you"
line "met MONICA, my" line "met MONICA, my"
cont "older sister?" cont "older sister?"
@@ -430,14 +422,12 @@ UnknownText_0x1a14e7: ; 0x1a14e7
para "I am the second of" para "I am the second of"
line "seven children." line "seven children."
done done
; 0x1a1559
UnknownText_0x1a1559: ; 0x1a1559 TuscanyNotTuesdayText:
text "TUSCANY: Today is" text "TUSCANY: Today is"
line "not Tuesday. That" line "not Tuesday. That"
cont "is unfortunate…" cont "is unfortunate…"
done done
; 0x1a158e
UnknownText_0x1a158e: ; 0x1a158e UnknownText_0x1a158e: ; 0x1a158e
text "ROUTE 29" text "ROUTE 29"
@@ -481,7 +471,5 @@ Route29_MapEventHeader: ; 0x1a15e4
person_event SPRITE_FRUIT_TREE, 6, 16, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a1089, $ffff person_event SPRITE_FRUIT_TREE, 6, 16, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a1089, $ffff
person_event SPRITE_FISHER, 7, 29, $7, $0, 255, 255, $90, 0, FisherScript_0x1a102e, $ffff person_event SPRITE_FISHER, 7, 29, $7, $0, 255, 255, $90, 0, FisherScript_0x1a102e, $ffff
person_event SPRITE_COOLTRAINER_M, 8, 17, $6, $0, 255, 255, $80, 0, CooltrainerMScript_0x1a1031, $ffff person_event SPRITE_COOLTRAINER_M, 8, 17, $6, $0, 255, 255, $80, 0, CooltrainerMScript_0x1a1031, $ffff
person_event SPRITE_TEACHER, 16, 33, $3, $0, 255, 255, $0, 0, TeacherScript_0x1a1049, $0759 person_event SPRITE_TEACHER, 16, 33, $3, $0, 255, 255, $0, 0, TuscanyScript, $0759
person_event SPRITE_POKE_BALL, 6, 52, $1, $0, 255, 255, $1, 0, ItemFragment_0x1a108b, $06ad person_event SPRITE_POKE_BALL, 6, 52, $1, $0, 255, 255, $1, 0, ItemFragment_0x1a108b, $06ad
; 0x1a1671

View File

@@ -12,8 +12,7 @@ Route32_MapScriptHeader: ; 0x19044f
; callbacks ; callbacks
dbw 2, UnknownScript_0x190463 dbw 2, FriedaCallback
; 0x190460
UnknownScript_0x190460: ; 0x190460 UnknownScript_0x190460: ; 0x190460
end end
@@ -27,17 +26,15 @@ UnknownScript_0x190462: ; 0x190462
end end
; 0x190463 ; 0x190463
UnknownScript_0x190463: ; 0x190463 FriedaCallback:
checkcode $b checkcode $b
if_equal FRIDAY, UnknownScript_0x19046c if_equal FRIDAY, .FriedaAppears
disappear $e disappear $e
return return
; 0x19046c
UnknownScript_0x19046c: ; 0x19046c .FriedaAppears
appear $e appear $e
return return
; 0x19046f
CooltrainerMScript_0x19046f: ; 0x19046f CooltrainerMScript_0x19046f: ; 0x19046f
faceplayer faceplayer
@@ -627,44 +624,41 @@ Bird_keeperPeterScript: ; 0x190731
end end
; 0x190739 ; 0x190739
LassScript_0x190739: ; 0x190739 FriedaScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_POISON_BARB_FROM_FRIEDA checkevent EVENT_GOT_POISON_BARB_FROM_FRIEDA
iftrue UnknownScript_0x190767 iftrue FriedaFridayScript
checkcode $b checkcode $b
if_not_equal FRIDAY, UnknownScript_0x19076d if_not_equal FRIDAY, FriedaNotFridayScript
checkevent EVENT_MET_FRIEDA_OF_FRIDAY checkevent EVENT_MET_FRIEDA_OF_FRIDAY
iftrue UnknownScript_0x190754 iftrue .MetFrieda
2writetext UnknownText_0x1911c1 2writetext MeetFriedaText
keeptextopen keeptextopen
setevent EVENT_MET_FRIEDA_OF_FRIDAY setevent EVENT_MET_FRIEDA_OF_FRIDAY
UnknownScript_0x190754: ; 0x190754 .MetFrieda
2writetext UnknownText_0x191204 2writetext FriedaGivesGiftText
keeptextopen keeptextopen
verbosegiveitem POISON_BARB, 1 verbosegiveitem POISON_BARB, 1
iffalse UnknownScript_0x19076b iffalse FriedaDoneScript
setevent EVENT_GOT_POISON_BARB_FROM_FRIEDA setevent EVENT_GOT_POISON_BARB_FROM_FRIEDA
2writetext UnknownText_0x191222 2writetext FriedaGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x190767
UnknownScript_0x190767: ; 0x190767 FriedaFridayScript:
2writetext UnknownText_0x19129a 2writetext FriedaFridayText
closetext closetext
UnknownScript_0x19076b: ; 0x19076b FriedaDoneScript:
loadmovesprites loadmovesprites
end end
; 0x19076d
UnknownScript_0x19076d: ; 0x19076d FriedaNotFridayScript:
2writetext UnknownText_0x1912ff 2writetext FriedaNotFridayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x190773
ItemFragment_0x190773: ; 0x190773 ItemFragment_0x190773: ; 0x190773
db GREAT_BALL, 1 db GREAT_BALL, 1
@@ -1100,7 +1094,7 @@ UnknownText_0x19118c: ; 0x19118c
done done
; 0x1911c1 ; 0x1911c1
UnknownText_0x1911c1: ; 0x1911c1 MeetFriedaText:
text "FRIEDA: Yahoo!" text "FRIEDA: Yahoo!"
line "It's Friday!" line "It's Friday!"
@@ -1109,15 +1103,13 @@ UnknownText_0x1911c1: ; 0x1911c1
para "Nice to meet you!" para "Nice to meet you!"
done done
; 0x191204
UnknownText_0x191204: ; 0x191204 FriedaGivesGiftText:
text "Here's a POISON" text "Here's a POISON"
line "BARB for you!" line "BARB for you!"
done done
; 0x191222
UnknownText_0x191222: ; 0x191222 FriedaGaveGiftText:
text "FRIEDA: Give it to" text "FRIEDA: Give it to"
line "a #MON that has" line "a #MON that has"
cont "poison-type moves." cont "poison-type moves."
@@ -1130,9 +1122,8 @@ UnknownText_0x191222: ; 0x191222
line "how good it makes" line "how good it makes"
cont "poison moves!" cont "poison moves!"
done done
; 0x19129a
UnknownText_0x19129a: ; 0x19129a FriedaFridayText:
text "FRIEDA: Hiya! What" text "FRIEDA: Hiya! What"
line "day do you like?" line "day do you like?"
@@ -1142,16 +1133,14 @@ UnknownText_0x19129a: ; 0x19129a
para "Don't you think" para "Don't you think"
line "it's great too?" line "it's great too?"
done done
; 0x1912ff
UnknownText_0x1912ff: ; 0x1912ff FriedaNotFridayText:
text "FRIEDA: Isn't it" text "FRIEDA: Isn't it"
line "Friday today?" line "Friday today?"
para "It's so boring" para "It's so boring"
line "when it's not!" line "when it's not!"
done done
; 0x19133a
UnknownText_0x19133a: ; 0x19133a UnknownText_0x19133a: ; 0x19133a
text "ROUTE 32" text "ROUTE 32"
@@ -1212,7 +1201,5 @@ Route32_MapEventHeader: ; 0x19138d
person_event SPRITE_FISHER, 74, 11, $6, $0, 255, 255, $0, 0, FisherScript_0x1904f2, $06fc person_event SPRITE_FISHER, 74, 11, $6, $0, 255, 255, $0, 0, FisherScript_0x1904f2, $06fc
person_event SPRITE_POKE_BALL, 57, 10, $1, $0, 255, 255, $1, 0, ItemFragment_0x190773, $06b0 person_event SPRITE_POKE_BALL, 57, 10, $1, $0, 255, 255, $1, 0, ItemFragment_0x190773, $06b0
person_event SPRITE_FISHER, 17, 19, $9, $0, 255, 255, $0, 0, FisherScript_0x1904ce, $ffff person_event SPRITE_FISHER, 17, 19, $9, $0, 255, 255, $0, 0, FisherScript_0x1904ce, $ffff
person_event SPRITE_LASS, 71, 16, $8, $0, 255, 255, $0, 0, LassScript_0x190739, $0758 person_event SPRITE_LASS, 71, 16, $8, $0, 255, 255, $0, 0, FriedaScript, $0758
person_event SPRITE_POKE_BALL, 34, 7, $1, $0, 255, 255, $1, 0, ItemFragment_0x190775, $06b1 person_event SPRITE_POKE_BALL, 34, 7, $1, $0, 255, 255, $1, 0, ItemFragment_0x190775, $06b1
; 0x19148b

View File

@@ -11,8 +11,7 @@ Route36_MapScriptHeader: ; 0x194000
; callbacks ; callbacks
dbw 2, UnknownScript_0x19400f dbw 2, ArthurCallback
; 0x19400d
UnknownScript_0x19400d: ; 0x19400d UnknownScript_0x19400d: ; 0x19400d
end end
@@ -22,17 +21,15 @@ UnknownScript_0x19400e: ; 0x19400e
end end
; 0x19400f ; 0x19400f
UnknownScript_0x19400f: ; 0x19400f ArthurCallback:
checkcode $b checkcode $b
if_equal THURSDAY, UnknownScript_0x194018 if_equal THURSDAY, .ArthurAppears
disappear $8 disappear $8
return return
; 0x194018
UnknownScript_0x194018: ; 0x194018 .ArthurAppears
appear $8 appear $8
return return
; 0x19401b
UnknownScript_0x19401b: ; 0x19401b UnknownScript_0x19401b: ; 0x19401b
showemote $0, $0, 15 showemote $0, $0, 15
@@ -381,44 +378,41 @@ PsychicMarkScript: ; 0x1941f9
end end
; 0x194201 ; 0x194201
YoungsterScript_0x194201: ; 0x194201 ArthurScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_HARD_STONE_FROM_ARTHUR checkevent EVENT_GOT_HARD_STONE_FROM_ARTHUR
iftrue UnknownScript_0x19422f iftrue ArthurThursdayScript
checkcode $b checkcode $b
if_not_equal THURSDAY, UnknownScript_0x194235 if_not_equal THURSDAY, ArthurNotThursdayScript
checkevent EVENT_MET_ARTHUR_OF_THURSDAY checkevent EVENT_MET_ARTHUR_OF_THURSDAY
iftrue UnknownScript_0x19421c iftrue .MetArthur
2writetext UnknownText_0x194800 2writetext MeetArthurText
keeptextopen keeptextopen
setevent EVENT_MET_ARTHUR_OF_THURSDAY setevent EVENT_MET_ARTHUR_OF_THURSDAY
UnknownScript_0x19421c: ; 0x19421c .MetArthur
2writetext UnknownText_0x19482d 2writetext ArthurGivesGiftText
keeptextopen keeptextopen
verbosegiveitem HARD_STONE, 1 verbosegiveitem HARD_STONE, 1
iffalse UnknownScript_0x194233 iffalse ArthurDoneScript
setevent EVENT_GOT_HARD_STONE_FROM_ARTHUR setevent EVENT_GOT_HARD_STONE_FROM_ARTHUR
2writetext UnknownText_0x194847 2writetext ArthurGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x19422f
UnknownScript_0x19422f: ; 0x19422f ArthurThursdayScript:
2writetext UnknownText_0x1948aa 2writetext ArthurThursdayText
closetext closetext
UnknownScript_0x194233: ; 0x194233 ArthurDoneScript:
loadmovesprites loadmovesprites
end end
; 0x194235
UnknownScript_0x194235: ; 0x194235 ArthurNotThursdayScript:
2writetext UnknownText_0x1948f3 2writetext ArthurNotThursdayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x19423b
MapRoute36Signpost2Script: ; 0x19423b MapRoute36Signpost2Script: ; 0x19423b
jumptext UnknownText_0x194924 jumptext UnknownText_0x194924
@@ -678,22 +672,20 @@ UnknownText_0x1947aa: ; 0x1947aa
done done
; 0x194800 ; 0x194800
UnknownText_0x194800: ; 0x194800 MeetArthurText:
text "ARTHUR: Who are" text "ARTHUR: Who are"
line "you?" line "you?"
para "I'm ARTHUR of" para "I'm ARTHUR of"
line "Thursday." line "Thursday."
done done
; 0x19482d
UnknownText_0x19482d: ; 0x19482d ArthurGivesGiftText:
text "Here. You can have" text "Here. You can have"
line "this." line "this."
done done
; 0x194847
UnknownText_0x194847: ; 0x194847 ArthurGaveGiftText:
text "ARTHUR: A #MON" text "ARTHUR: A #MON"
line "that uses rock-" line "that uses rock-"
@@ -703,23 +695,20 @@ UnknownText_0x194847: ; 0x194847
para "It pumps up rock-" para "It pumps up rock-"
line "type attacks." line "type attacks."
done done
; 0x1948aa
UnknownText_0x1948aa: ; 0x1948aa ArthurThursdayText:
text "ARTHUR: I'm ARTHUR" text "ARTHUR: I'm ARTHUR"
line "of Thursday. I'm" line "of Thursday. I'm"
para "the second son out" para "the second son out"
line "of seven children." line "of seven children."
done done
; 0x1948f3
UnknownText_0x1948f3: ; 0x1948f3 ArthurNotThursdayText:
text "ARTHUR: Today's" text "ARTHUR: Today's"
line "not Thursday. How" line "not Thursday. How"
cont "disappointing." cont "disappointing."
done done
; 0x194924
UnknownText_0x194924: ; 0x194924 UnknownText_0x194924: ; 0x194924
text "ROUTE 36" text "ROUTE 36"
@@ -796,8 +785,6 @@ Route36_MapEventHeader: ; 0x194a66
person_event SPRITE_LASS, 12, 55, $5, $2, 255, 255, $0, 0, LassScript_0x1940e0, $ffff person_event SPRITE_LASS, 12, 55, $5, $2, 255, 255, $0, 0, LassScript_0x1940e0, $ffff
person_event SPRITE_FISHER, 13, 48, $8, $0, 255, 255, $0, 0, FisherScript_0x1940b9, $ffff person_event SPRITE_FISHER, 13, 48, $8, $0, 255, 255, $0, 0, FisherScript_0x1940b9, $ffff
person_event SPRITE_FRUIT_TREE, 8, 25, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x194247, $ffff person_event SPRITE_FRUIT_TREE, 8, 25, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x194247, $ffff
person_event SPRITE_YOUNGSTER, 10, 50, $2, $11, 255, 255, $0, 0, YoungsterScript_0x194201, $075a person_event SPRITE_YOUNGSTER, 10, 50, $2, $11, 255, 255, $0, 0, ArthurScript, $075a
person_event SPRITE_LASS, 16, 37, $6, $0, 255, 255, $90, 0, LassScript_0x19408c, $0769 person_event SPRITE_LASS, 16, 37, $6, $0, 255, 255, $90, 0, LassScript_0x19408c, $0769
person_event SPRITE_SUICUNE, 10, 25, $1, $0, 255, 255, $90, 0, ObjectEvent, $07b0 person_event SPRITE_SUICUNE, 10, 25, $1, $0, 255, 255, $90, 0, ObjectEvent, $07b0
; 0x194b19

View File

@@ -7,20 +7,17 @@ Route37_MapScriptHeader: ; 0x1a8d72
; callbacks ; callbacks
dbw 2, UnknownScript_0x1a8d77 dbw 2, SunnyCallback
; 0x1a8d77
UnknownScript_0x1a8d77: ; 0x1a8d77 SunnyCallback:
checkcode $b checkcode $b
if_equal SUNDAY, UnknownScript_0x1a8d80 if_equal SUNDAY, .SunnyAppears
disappear $6 disappear $6
return return
; 0x1a8d80
UnknownScript_0x1a8d80: ; 0x1a8d80 .SunnyAppears
appear $6 appear $6
return return
; 0x1a8d83
TrainerTwinsAnnandanne1: ; 0x1a8d83 TrainerTwinsAnnandanne1: ; 0x1a8d83
; bit/flag number ; bit/flag number
@@ -109,53 +106,48 @@ PsychicGregScript: ; 0x1a8db7
end end
; 0x1a8dbf ; 0x1a8dbf
BugCatcherScript_0x1a8dbf: ; 0x1a8dbf SunnyScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_MAGNET_FROM_SUNNY checkevent EVENT_GOT_MAGNET_FROM_SUNNY
iftrue UnknownScript_0x1a8dfa iftrue SunnySundayScript
checkcode $b checkcode $b
if_not_equal SUNDAY, UnknownScript_0x1a8e00 if_not_equal SUNDAY, SunnyNotSundayScript
checkevent EVENT_MET_SUNNY_OF_SUNDAY checkevent EVENT_MET_SUNNY_OF_SUNDAY
iftrue UnknownScript_0x1a8dda iftrue .MetSunny
2writetext UnknownText_0x1a8fc8 2writetext MeetSunnyText
keeptextopen keeptextopen
setevent EVENT_MET_SUNNY_OF_SUNDAY setevent EVENT_MET_SUNNY_OF_SUNDAY
UnknownScript_0x1a8dda: ; 0x1a8dda .MetSunny
checkflag $0063 checkflag $0063
iftrue UnknownScript_0x1a8de7 iftrue .Kris
2writetext UnknownText_0x1a9004 2writetext SunnyGivesGiftText1
keeptextopen keeptextopen
2jump UnknownScript_0x1a8deb 2jump .next
; 0x1a8de7 .Kris
2writetext SunnyGivesGiftText2
UnknownScript_0x1a8de7: ; 0x1a8de7
2writetext UnknownText_0x1a902f
keeptextopen keeptextopen
UnknownScript_0x1a8deb: ; 0x1a8deb .next
verbosegiveitem MAGNET, 1 verbosegiveitem MAGNET, 1
iffalse UnknownScript_0x1a8dfe iffalse SunnyDoneScript
setevent EVENT_GOT_MAGNET_FROM_SUNNY setevent EVENT_GOT_MAGNET_FROM_SUNNY
2writetext UnknownText_0x1a905a 2writetext SunnyGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a8dfa
UnknownScript_0x1a8dfa: ; 0x1a8dfa SunnySundayScript:
2writetext UnknownText_0x1a90fc 2writetext SunnySundayText
closetext closetext
UnknownScript_0x1a8dfe: ; 0x1a8dfe SunnyDoneScript:
loadmovesprites loadmovesprites
end end
; 0x1a8e00
UnknownScript_0x1a8e00: ; 0x1a8e00 SunnyNotSundayScript:
2writetext UnknownText_0x1a916e 2writetext SunnyNotSundayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a8e06
MapRoute37Signpost0Script: ; 0x1a8e06 MapRoute37Signpost0Script: ; 0x1a8e06
jumptext UnknownText_0x1a9197 jumptext UnknownText_0x1a9197
@@ -245,30 +237,27 @@ UnknownText_0x1a8f80: ; 0x1a8f80
done done
; 0x1a8fc8 ; 0x1a8fc8
UnknownText_0x1a8fc8: ; 0x1a8fc8 MeetSunnyText:
text "SUNNY: Hi!" text "SUNNY: Hi!"
para "I'm SUNNY of Sun-" para "I'm SUNNY of Sun-"
line "day, meaning it's" line "day, meaning it's"
cont "Sunday today!" cont "Sunday today!"
done done
; 0x1a9004
UnknownText_0x1a9004: ; 0x1a9004 SunnyGivesGiftText1:
text "I was told to give" text "I was told to give"
line "you this if I saw" line "you this if I saw"
cont "you!" cont "you!"
done done
; 0x1a902f
UnknownText_0x1a902f: ; 0x1a902f SunnyGivesGiftText2:
text "I was told to give" text "I was told to give"
line "you this if I saw" line "you this if I saw"
cont "you!" cont "you!"
done done
; 0x1a905a
UnknownText_0x1a905a: ; 0x1a905a SunnyGaveGiftText:
text "SUNNY: That thing…" text "SUNNY: That thing…"
para "Um…" para "Um…"
@@ -290,9 +279,8 @@ UnknownText_0x1a905a: ; 0x1a905a
line "it powers up" line "it powers up"
cont "electric moves!" cont "electric moves!"
done done
; 0x1a90fc
UnknownText_0x1a90fc: ; 0x1a90fc SunnySundayText:
text "SUNNY: My sisters" text "SUNNY: My sisters"
line "and brothers are" line "and brothers are"
cont "MONICA, TUSCANY," cont "MONICA, TUSCANY,"
@@ -302,14 +290,12 @@ UnknownText_0x1a90fc: ; 0x1a90fc
para "They're all older" para "They're all older"
line "than me!" line "than me!"
done done
; 0x1a916e
UnknownText_0x1a916e: ; 0x1a916e SunnyNotSundayText:
text "SUNNY: Isn't today" text "SUNNY: Isn't today"
line "Sunday?" line "Sunday?"
cont "Um… I forgot!" cont "Um… I forgot!"
done done
; 0x1a9197
UnknownText_0x1a9197: ; 0x1a9197 UnknownText_0x1a9197: ; 0x1a9197
text "ROUTE 37" text "ROUTE 37"
@@ -337,8 +323,6 @@ Route37_MapEventHeader: ; 0x1a91a1
person_event SPRITE_WEIRD_TREE, 16, 11, $6, $0, 255, 255, $82, 1, TrainerTwinsAnnandanne2, $ffff person_event SPRITE_WEIRD_TREE, 16, 11, $6, $0, 255, 255, $82, 1, TrainerTwinsAnnandanne2, $ffff
person_event SPRITE_YOUNGSTER, 10, 10, $a, $0, 255, 255, $92, 1, TrainerPsychicGreg, $ffff person_event SPRITE_YOUNGSTER, 10, 10, $a, $0, 255, 255, $92, 1, TrainerPsychicGreg, $ffff
person_event SPRITE_FRUIT_TREE, 9, 17, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e09, $ffff person_event SPRITE_FRUIT_TREE, 9, 17, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e09, $ffff
person_event SPRITE_BUG_CATCHER, 12, 20, $2, $11, 255, 255, $0, 0, BugCatcherScript_0x1a8dbf, $075b person_event SPRITE_BUG_CATCHER, 12, 20, $2, $11, 255, 255, $0, 0, SunnyScript, $075b
person_event SPRITE_FRUIT_TREE, 9, 20, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e0b, $ffff person_event SPRITE_FRUIT_TREE, 9, 20, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e0b, $ffff
person_event SPRITE_FRUIT_TREE, 11, 19, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e0d, $ffff person_event SPRITE_FRUIT_TREE, 11, 19, $1, $0, 255, 255, $0, 0, FruitTreeScript_0x1a8e0d, $ffff
; 0x1a920c

View File

@@ -7,21 +7,18 @@ Route40_MapScriptHeader: ; 0x1a6160
; callbacks ; callbacks
dbw 2, UnknownScript_0x1a6165 dbw 2, MonicaCallback
; 0x1a6165
UnknownScript_0x1a6165: ; 0x1a6165 MonicaCallback:
clearevent $07cf clearevent $07cf
checkcode $b checkcode $b
if_equal MONDAY, UnknownScript_0x1a6171 if_equal MONDAY, .MonicaAppears
disappear $a disappear $a
return return
; 0x1a6171
UnknownScript_0x1a6171: ; 0x1a6171 .MonicaAppears
appear $a appear $a
return return
; 0x1a6174
TrainerSwimmerfElaine: ; 0x1a6174 TrainerSwimmerfElaine: ; 0x1a6174
; bit/flag number ; bit/flag number
@@ -161,44 +158,41 @@ StandingYoungsterScript_0x1a61d6: ; 0x1a61d6
jumptextfaceplayer UnknownText_0x1a6564 jumptextfaceplayer UnknownText_0x1a6564
; 0x1a61d9 ; 0x1a61d9
BuenaScript_0x1a61d9: ; 0x1a61d9 MonicaScript:
faceplayer faceplayer
loadfont loadfont
checkevent EVENT_GOT_SHARP_BEAK_FROM_MONICA checkevent EVENT_GOT_SHARP_BEAK_FROM_MONICA
iftrue UnknownScript_0x1a6207 iftrue MonicaMondayScript
checkcode $b checkcode $b
if_not_equal MONDAY, UnknownScript_0x1a620d if_not_equal MONDAY, MonicaNotMondayScript
checkevent EVENT_MET_MONICA_OF_MONDAY checkevent EVENT_MET_MONICA_OF_MONDAY
iftrue UnknownScript_0x1a61f4 iftrue .MetMonica
2writetext UnknownText_0x1a6606 2writetext MeetMonicaText
keeptextopen keeptextopen
setevent EVENT_MET_MONICA_OF_MONDAY setevent EVENT_MET_MONICA_OF_MONDAY
UnknownScript_0x1a61f4: ; 0x1a61f4 .MetMonica
2writetext UnknownText_0x1a6636 2writetext MonicaGivesGiftText
keeptextopen keeptextopen
verbosegiveitem SHARP_BEAK, 1 verbosegiveitem SHARP_BEAK, 1
iffalse UnknownScript_0x1a620b iffalse MonicaDoneScript
setevent EVENT_GOT_SHARP_BEAK_FROM_MONICA setevent EVENT_GOT_SHARP_BEAK_FROM_MONICA
2writetext UnknownText_0x1a666c 2writetext MonicaGaveGiftText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a6207
UnknownScript_0x1a6207: ; 0x1a6207 MonicaMondayScript:
2writetext UnknownText_0x1a66dc 2writetext MonicaMondayText
closetext closetext
UnknownScript_0x1a620b: ; 0x1a620b MonicaDoneScript:
loadmovesprites loadmovesprites
end end
; 0x1a620d
UnknownScript_0x1a620d: ; 0x1a620d MonicaNotMondayScript:
2writetext UnknownText_0x1a6737 2writetext MonicaNotMondayText
closetext closetext
loadmovesprites loadmovesprites
end end
; 0x1a6213
MapRoute40Signpost0Script: ; 0x1a6213 MapRoute40Signpost0Script: ; 0x1a6213
jumptext UnknownText_0x1a6767 jumptext UnknownText_0x1a6767
@@ -384,22 +378,20 @@ UnknownText_0x1a6564: ; 0x1a6564
done done
; 0x1a6606 ; 0x1a6606
UnknownText_0x1a6606: ; 0x1a6606 MeetMonicaText:
text "MONICA: Glad to" text "MONICA: Glad to"
line "meet you. I'm" line "meet you. I'm"
para "MONICA of Monday." para "MONICA of Monday."
done done
; 0x1a6636
UnknownText_0x1a6636: ; 0x1a6636 MonicaGivesGiftText:
text "As a token of our" text "As a token of our"
line "friendship, I have" line "friendship, I have"
cont "a gift for you!" cont "a gift for you!"
done done
; 0x1a666c
UnknownText_0x1a666c: ; 0x1a666c MonicaGaveGiftText:
text "MONICA: It's an" text "MONICA: It's an"
line "item that raises" line "item that raises"
@@ -410,9 +402,8 @@ UnknownText_0x1a666c: ; 0x1a666c
line "bird #MON with" line "bird #MON with"
cont "that item." cont "that item."
done done
; 0x1a66dc
UnknownText_0x1a66dc: ; 0x1a66dc MonicaMondayText:
text "MONICA: My broth-" text "MONICA: My broth-"
line "ers and sisters" line "ers and sisters"
@@ -422,14 +413,12 @@ UnknownText_0x1a66dc: ; 0x1a66dc
para "See if you could" para "See if you could"
line "find them all!" line "find them all!"
done done
; 0x1a6737
UnknownText_0x1a6737: ; 0x1a6737 MonicaNotMondayText:
text "MONICA: I don't" text "MONICA: I don't"
line "think today is" line "think today is"
cont "Monday. How sad…" cont "Monday. How sad…"
done done
; 0x1a6767
UnknownText_0x1a6767: ; 0x1a6767 UnknownText_0x1a6767: ; 0x1a6767
text "ROUTE 40" text "ROUTE 40"
@@ -465,9 +454,7 @@ Route40_MapEventHeader: ; 0x1a678e
person_event SPRITE_ROCK, 13, 10, $18, $0, 255, 255, $0, 0, RockScript_0x1a6216, $ffff person_event SPRITE_ROCK, 13, 10, $18, $0, 255, 255, $0, 0, RockScript_0x1a6216, $ffff
person_event SPRITE_ROCK, 12, 11, $18, $0, 255, 255, $0, 0, RockScript_0x1a6216, $ffff person_event SPRITE_ROCK, 12, 11, $18, $0, 255, 255, $0, 0, RockScript_0x1a6216, $ffff
person_event SPRITE_LASS, 17, 15, $6, $0, 255, 255, $0, 0, LassScript_0x1a61c4, $ffff person_event SPRITE_LASS, 17, 15, $6, $0, 255, 255, $0, 0, LassScript_0x1a61c4, $ffff
person_event SPRITE_BUENA, 14, 12, $3, $0, 255, 255, $0, 0, BuenaScript_0x1a61d9, $075e person_event SPRITE_BUENA, 14, 12, $3, $0, 255, 255, $0, 0, MonicaScript, $075e
person_event SPRITE_POKEFAN_M, 10, 11, $9, $0, 255, 255, $0, 0, PokefanMScript_0x1a61c7, $ffff person_event SPRITE_POKEFAN_M, 10, 11, $9, $0, 255, 255, $0, 0, PokefanMScript_0x1a61c7, $ffff
person_event SPRITE_LASS, 8, 17, $3, $0, 255, 255, $a0, 0, LassScript_0x1a61d3, $ffff person_event SPRITE_LASS, 8, 17, $3, $0, 255, 255, $a0, 0, LassScript_0x1a61d3, $ffff
person_event SPRITE_STANDING_YOUNGSTER, 13, 20, $3, $0, 255, 255, $90, 0, StandingYoungsterScript_0x1a61d6, $07cf person_event SPRITE_STANDING_YOUNGSTER, 13, 20, $3, $0, 255, 255, $90, 0, StandingYoungsterScript_0x1a61d6, $07cf
; 0x1a683f