Merge branch 'master' into AI-Logic-Updates

This commit is contained in:
Porygon23 2022-09-02 14:44:47 -06:00 committed by GitHub
commit ba6aad5bcc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9349 changed files with 213280 additions and 64468 deletions

View File

@ -44,15 +44,15 @@ WSL1 is the preferred terminal to build **pokeemerald**. The following instructi
3. The next step is to choose and install a Linux distribution from the Microsoft Store. The following instructions will assume Ubuntu as the Linux distribution of choice.
<details>
<summary><i>Note for advanced users...</i></summary>
> You can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested.
> You can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested.
</details>
4. Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution.
<details>
<summary><i>Notes...</i></summary>
> Note 1: If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog.
> Note 1: If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog.
> Note 2: If the link does not work, then open the Microsoft Store manually, and search for the Ubuntu app (choose the one with no version number).
</details>
@ -102,8 +102,8 @@ cd /mnt/c/Users/<user>/Desktop/decomps
<details>
<summary><i>Notes...</i></summary>
> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL.
> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users/<user>/Desktop/decomp folder"`.
> Note 1: The Windows C:\ drive is called /mnt/c/ in WSL.
> Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "/mnt/c/users/<user>/Desktop/decomp folder"`.
> Note 3: Windows path names are case-insensitive so adhering to capitalization isn't needed
</details>
@ -213,8 +213,8 @@ Note that the directory **must exist** in Windows. If you want to store pokeemer
<details>
<summary><i>Notes...</i></summary>
> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users/<user>/Desktop/decomp folder"`.
> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed
> Note 1: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "c:/users/<user>/Desktop/decomp folder"`.
> Note 2: Windows path names are case-insensitive so adhering to capitalization isn't needed
</details>
If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)).
@ -283,8 +283,8 @@ Note that the directory **must exist** in the folder system. If you want to stor
<details>
<summary><i>Note..</i>.</summary>
> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"`
> Note: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Desktop/decomp folder"`
</details>
If this works, then proceed to [Installation](#installation). Otherwise, ask for help on Discord or IRC (see [README.md](README.md)).
@ -305,7 +305,7 @@ Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to
> then you will have to install devkitARM. Install all the above packages except binutils-arm-none-eabi, and follow the instructions to
> [install devkitARM on Debian/Ubuntu-based distributions](#installing-devkitarm-on-debianubuntu-based-distributions).
</details>
### Arch Linux
Run this command as root to install the necessary packages:
```bash

View File

@ -277,6 +277,8 @@ include songs.mk
%.gbapal: %.png ; $(GFX) $< $@
%.lz: % ; $(GFX) $< $@
%.rl: % ; $(GFX) $< $@
$(CRY_SUBDIR)/uncomp_%.bin: $(CRY_SUBDIR)/uncomp_%.aif ; $(AIF) $< $@
$(CRY_SUBDIR)/%.bin: $(CRY_SUBDIR)/%.aif ; $(AIF) $< $@ --compress
sound/%.bin: sound/%.aif ; $(AIF) $< $@

View File

@ -1,31 +1,28 @@
# Pokémon Emerald
# pokeemerald Expansion
This is a decompilation of Pokémon Emerald.
## What is the pokeemerald Expansion?
It builds the following ROM:
The pokeemerald Expansion is a collection of feature branches that can be integrated into existing [pokeemerald](https://github.com/pret/pokeemerald) projects.
* [**pokeemerald.gba**](https://datomatic.no-intro.org/index.php?page=show_record&s=23&n=1961) `sha1: f3ae088181bf583e55daf962a92bb46f4f1d07b7`
## What feature branches are included?
To set up the repository, see [INSTALL.md](INSTALL.md).
- **[Battle Engine Upgrade](../tree/battle_engine):** Upgrades the battle engine in pokeemerald to newer Generation games' standards. It also adds newer moves and abilities.
- **[Pokémon Expansion](../tree/pokemon_expansion):** Adds Pokémon from newer Generations and makes them available in the National Dex. It also updates base stats and other Pokémon info.
- **[Item Expansion](../tree/item_expansion):** Adds items from newer Generations and also updates item effects for field use.
- **[master](../tree/master):** Combines the above branches into one single branch for the sake of convenience. Note that this branch is only updated once in a while, so you must merge manually if you want the latest features.
## Who maintains the project?
## See also
The project was originally started by DizzyEgg alongside other contributors.
Other disassembly and/or decompilation projects:
* [**Pokémon Red and Blue**](https://github.com/pret/pokered)
* [**Pokémon Gold and Silver (Space World '97 demo)**](https://github.com/pret/pokegold-spaceworld)
* [**Pokémon Yellow**](https://github.com/pret/pokeyellow)
* [**Pokémon Trading Card Game**](https://github.com/pret/poketcg)
* [**Pokémon Pinball**](https://github.com/pret/pokepinball)
* [**Pokémon Stadium**](https://github.com/pret/pokestadium)
* [**Pokémon Gold and Silver**](https://github.com/pret/pokegold)
* [**Pokémon Crystal**](https://github.com/pret/pokecrystal)
* [**Pokémon Ruby and Sapphire**](https://github.com/pret/pokeruby)
* [**Pokémon Pinball: Ruby & Sapphire**](https://github.com/pret/pokepinballrs)
* [**Pokémon FireRed and LeafGreen**](https://github.com/pret/pokefirered)
* [**Pokémon Mystery Dungeon: Red Rescue Team**](https://github.com/pret/pmd-red)
The project has now gotten larger and DizzyEgg is now maintaining the project as part of the ROM Hacking Hideout community. Some members of this community are taking on larger roles to help maintain the project.
## Can I contribute even if I'm not a member of ROM Hacking Hideout?
## Contacts
Yes! Contributions are welcome via Pull Requests and they will be reviewed by maintainers. Please note that PRs to master are not accepted, as master is only intended to be a merged branch.
You can find us on [Discord](https://discord.gg/d5dubZ3) and [IRC](https://web.libera.chat/?#pret).
## What is ROM Hacking Hideout?
A Discord-based ROM hacking community that has many members who hack using the disassembly and decompilation projects for Pokémon. Quite a few contributors to the original feature branches by DizzyEgg were members of ROM Hacking Hideout. You can call it RHH for short!
[Click here to join the RHH Discord Server!](https://discord.gg/6CzjAG6GZk)

View File

@ -676,7 +676,7 @@
.byte 0x77
.endm
.macro faintifabilitynotdamp
.macro tryexplosion
.byte 0x78
.endm
@ -1044,7 +1044,7 @@
.byte 0xc8
.endm
.macro jumpifattackandspecialattackcannotfall ptr:req
.macro trymemento ptr:req
.byte 0xc9
.4byte \ptr
.endm

View File

@ -277,7 +277,7 @@
.endm
@ Blocks script execution until a command or C code manually unblocks it. Generally used with specific
@ commands and specials. Calling EnableBothScriptContexts for instance will allow execution to continue.
@ commands and specials. Calling ScriptContext_Enable for instance will allow execution to continue.
.macro waitstate
.byte 0x27
.endm
@ -2006,3 +2006,15 @@
.macro totemboost_evas2 battler:req
settotemboost \battler, 0, 0, 0, 0, 0, 0, 2
.endm
@ Attempts to trigger a special evolution method in the overworld.
@ There may be other conditions required which are coded for in GetEvolutionTargetSpecies.
@ EX: tryspecialevo EVO_WATER_SCROLL, FALSE, FALSE triggers Kubfu's EVO_WATER_SCROLL evolution
@ method, cannot be cancelled in the evolution scene, and will only evolve one Kubfu if there
@ are multiple in the player's party.
.macro tryspecialevo evoMethod:req, canStopEvo=TRUE, tryMultiple=TRUE
setvar VAR_0x8000, \evoMethod
setvar VAR_0x8001, \canStopEvo
setvar VAR_0x8002, \tryMultiple
special TrySpecialOverworldEvo
.endm

View File

@ -152,8 +152,8 @@
create_movement_action walk_slow_diag_northeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_UP_RIGHT
create_movement_action walk_slow_diag_southwest, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_LEFT
create_movement_action walk_slow_diag_southeast, MOVEMENT_ACTION_WALK_SLOW_DIAGONAL_DOWN_RIGHT
create_movement_action store_lock_anim, MOVEMENT_ACTION_STORE_AND_LOCK_ANIM
create_movement_action free_unlock_anim, MOVEMENT_ACTION_FREE_AND_UNLOCK_ANIM
create_movement_action lock_anim, MOVEMENT_ACTION_LOCK_ANIM
create_movement_action unlock_anim, MOVEMENT_ACTION_UNLOCK_ANIM
create_movement_action walk_left_affine, MOVEMENT_ACTION_WALK_LEFT_AFFINE
create_movement_action walk_right_affine, MOVEMENT_ACTION_WALK_RIGHT_AFFINE
create_movement_action levitate, MOVEMENT_ACTION_LEVITATE

View File

@ -150,3 +150,15 @@
.4byte \sample
.byte 0xff, 0, 0xff, 0
.endm
.macro cry_uncomp sample @ not compressed
.byte 0x0, 60, 0, 0
.4byte \sample
.byte 0xff, 0, 0xff, 0
.endm
.macro cry_reverse_uncomp sample @ not compressed
.byte 0x10, 60, 0, 0
.4byte \sample
.byte 0xff, 0, 0xff, 0
.endm

View File

@ -779,6 +779,31 @@ gBattleAnims_Moves::
.4byte Move_GLACIAL_LANCE
.4byte Move_ASTRAL_BARRAGE
.4byte Move_EERIE_SPELL
@@@@LA MOVES
.4byte Move_DIRE_CLAW
.4byte Move_PSYSHIELD_BASH
.4byte Move_POWER_SHIFT
.4byte Move_STONE_AXE
.4byte Move_SPRINGTIDE_STORM
.4byte Move_MYSTICAL_POWER
.4byte Move_RAGING_FURY
.4byte Move_WAVE_CRASH
.4byte Move_CHLOROBLAST
.4byte Move_MOUNTAIN_GALE
.4byte Move_VICTORY_DANCE
.4byte Move_HEADLONG_RUSH
.4byte Move_BARB_BARRAGE
.4byte Move_ESPER_WING
.4byte Move_BITTER_MALICE
.4byte Move_SHELTER
.4byte Move_TRIPLE_ARROWS
.4byte Move_INFERNAL_PARADE
.4byte Move_CEASELESS_EDGE
.4byte Move_BLEAKWIND_STORM
.4byte Move_WILDBOLT_STORM
.4byte Move_SANDSEAR_STORM
.4byte Move_LUNAR_BLESSING
.4byte Move_TAKE_HEART
@@@@ Z MOVES
.4byte Move_BREAKNECK_BLITZ
.4byte Move_ALL_OUT_PUMMELING
@ -868,7 +893,8 @@ gBattleAnims_General::
.4byte General_AquaRingHeal @ B_ANIM_AQUA_RING_HEAL
.4byte General_BeakBlastSetUp @ B_ANIM_BEAK_BLAST_SETUP
.4byte General_ShellTrapSetUp @ B_ANIM_SHELL_TRAP_SETUP
.4byte General_ZMoveActivate @ B_ANIM_ZMOVE_ACTIVATE
.4byte General_ZMoveActivate @ B_ANIM_ZMOVE_ACTIVATE
.4byte General_AffectionHangedOn @ B_ANIM_AFFECTION_HANGED_ON
.align 2
gBattleAnims_Special::
@ -14269,55 +14295,51 @@ Move_POLTERGEIST::
end
Move_CORROSIVE_GAS::
end @to do:
Move_COACHING::
end @to do:
Move_FLIP_TURN::
end @to do:
Move_TRIPLE_AXEL::
end @to do:
Move_DUAL_WINGBEAT::
end @to do:
Move_SCORCHING_SANDS::
end @to do:
end @to do
Move_JUNGLE_HEALING::
goto Move_AROMATHERAPY
Move_WICKED_BLOW::
end @to do:
Move_SURGING_STRIKES::
end @to do:
Move_THUNDER_CAGE::
end @to do:
Move_DRAGON_ENERGY::
end @to do:
Move_FREEZING_GLARE::
end @to do:
Move_FIERY_WRATH::
end @to do:
Move_THUNDEROUS_KICK::
end @to do:
Move_GLACIAL_LANCE::
end @to do:
Move_ASTRAL_BARRAGE::
end @to do:
Move_EERIE_SPELL::
end @to do:
Move_DIRE_CLAW::
Move_PSYSHIELD_BASH::
Move_POWER_SHIFT::
Move_STONE_AXE::
Move_SPRINGTIDE_STORM::
Move_MYSTICAL_POWER::
Move_RAGING_FURY::
Move_WAVE_CRASH::
Move_CHLOROBLAST::
Move_MOUNTAIN_GALE::
Move_VICTORY_DANCE::
Move_HEADLONG_RUSH::
Move_BARB_BARRAGE::
Move_ESPER_WING::
Move_BITTER_MALICE::
Move_SHELTER::
Move_TRIPLE_ARROWS::
Move_INFERNAL_PARADE::
Move_CEASELESS_EDGE::
Move_BLEAKWIND_STORM::
Move_WILDBOLT_STORM::
Move_SANDSEAR_STORM::
Move_LUNAR_BLESSING::
Move_TAKE_HEART::
end @to do
@@@@@@@@@@@@@@@@@@@@@@@ GEN 1-3 @@@@@@@@@@@@@@@@@@@@@@@
Move_NONE:
@ -14697,14 +14719,14 @@ Move_DOUBLE_EDGE:
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, ANIM_TARGET, 0
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -32, 0, 0, 3
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 0
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 0
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 0
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 0
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1
createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG, 2, 16, 0, RGB_WHITE
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 1
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 1
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 1
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 1
waitforvisualfinish
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5
delay 3
@ -16341,7 +16363,7 @@ Move_HORN_ATTACK:
Move_FURY_ATTACK:
loadspritegfx ANIM_TAG_IMPACT
loadspritegfx ANIM_TAG_HORN_HIT
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, 0, 2
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 4, 256, ANIM_ATTACKER, 2
choosetwoturnanim FuryAttackRight, FuryAttackLeft
FuryAttackContinue:
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
@ -16490,7 +16512,7 @@ Move_LOW_KICK:
createsprite gSlidingKickSpriteTemplate, ANIM_TARGET, 2, -24, 28, 40, 8, 160, 0
delay 4
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, ANIM_TARGET, 2
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, 1, 2
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, ANIM_TARGET, 2
playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET
waitforvisualfinish
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 4
@ -16735,7 +16757,7 @@ SkullBashSetUpHeadDown:
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -24, 0, 0, 10, 0
playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, 0, 2
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, ANIM_ATTACKER, 2
waitforvisualfinish
createsprite gSlideMonToOffsetAndBackSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 10, 1
waitforvisualfinish
@ -17854,7 +17876,7 @@ Move_MIST_BALL:
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, F_PAL_BG, 1, 1, RGB(23, 16, 31), 16, RGB_WHITE, 16
delay 0
playsewithpan SE_M_HAZE, 0
createvisualtask AnimTask_LoadMistTiles, 5
createvisualtask AnimTask_MistBallFog, 5
createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 3, 0, 16, RGB_WHITE
delay 8
createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0
@ -22454,14 +22476,14 @@ Move_ARM_THRUST:
loadspritegfx ANIM_TAG_IMPACT
splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 0
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 0
delay 6
createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 3
delay 4
playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET
createsprite gArmThrustHandSpriteTemplate, ANIM_TARGET, 2, 10, -8, 14, 3
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 1
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, ANIM_ATTACKER, 1
playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET
choosetwoturnanim ArmThrustRight, ArmThrustLeft
ArmThrustContinue:
@ -24884,6 +24906,27 @@ PrimalReversionParticles:
delay 3
return
General_AffectionHangedOn::
loadspritegfx ANIM_TAG_RED_HEART
loopsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER, 12, 3
createvisualtask AnimTask_SwayMon, 5, 0, 12, 4096, 4, ANIM_ATTACKER
delay 15
launchtask AnimTask_AffectionHangedOn 0x5 0x0
jumpargeq 0x0, FRIENDSHIP_100_TO_149, General_AffectionHangedOn_3Hearts
jumpargeq 0x0, FRIENDSHIP_150_TO_199, General_AffectionHangedOn_4Hearts
jumpargeq 0x0, FRIENDSHIP_200_TO_254, General_AffectionHangedOn_5Hearts
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, -384, -31
General_AffectionHangedOn_5Hearts:
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, -128, -22
General_AffectionHangedOn_4Hearts:
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, 416, -38
General_AffectionHangedOn_3Hearts:
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, 160, -32
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, -256, -40
createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, 128, -16
waitforvisualfinish
end
SnatchMoveTrySwapFromSubstitute:
createvisualtask AnimTask_IsAttackerBehindSubstitute, 2
jumprettrue SnatchMoveSwapSubstituteForMon

File diff suppressed because it is too large Load Diff

View File

@ -12,22 +12,6 @@
.section script_data, "aw", %progbits
.align 2
gBattlescriptsForBallThrow::
.4byte BattleScript_BallThrow @ ITEM_NONE
.4byte BattleScript_BallThrow @ ITEM_MASTER_BALL
.4byte BattleScript_BallThrow @ ITEM_ULTRA_BALL
.4byte BattleScript_BallThrow @ ITEM_GREAT_BALL
.4byte BattleScript_BallThrow @ ITEM_POKE_BALL
.4byte BattleScript_SafariBallThrow @ ITEM_SAFARI_BALL
.4byte BattleScript_BallThrow @ ITEM_NET_BALL
.4byte BattleScript_BallThrow @ ITEM_DIVE_BALL
.4byte BattleScript_BallThrow @ ITEM_NEST_BALL
.4byte BattleScript_BallThrow @ ITEM_REPEAT_BALL
.4byte BattleScript_BallThrow @ ITEM_TIMER_BALL
.4byte BattleScript_BallThrow @ ITEM_LUXURY_BALL
.4byte BattleScript_BallThrow @ ITEM_PREMIER_BALL
.align 2
gBattlescriptsForUsingItem::
.4byte BattleScript_PlayerUsesItem
@ -64,7 +48,6 @@ BattleScript_SafariBallThrow::
BattleScript_SuccessBallThrow::
setbyte sMON_CAUGHT, TRUE
jumpifhalfword CMP_EQUAL, gLastUsedItem, ITEM_SAFARI_BALL, BattleScript_PrintCaughtMonInfo
incrementgamestat GAME_STAT_POKEMON_CAPTURES
BattleScript_PrintCaughtMonInfo::
printstring STRINGID_GOTCHAPKMNCAUGHT

View File

@ -53,11 +53,11 @@ AbandonedShip_HiddenFloorCorridors_EventScript_LockRoom6::
AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door::
lockall
goto_if_set FLAG_USED_ROOM_1_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen
checkitem ITEM_ROOM_1_KEY
checkitem ITEM_KEY_TO_ROOM_1
goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm1IsLocked
msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT
playse SE_PIN
removeitem ITEM_ROOM_1_KEY
removeitem ITEM_KEY_TO_ROOM_1
setflag FLAG_USED_ROOM_1_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom1
special DrawWholeMapView
@ -67,11 +67,11 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room1Door::
AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door::
lockall
goto_if_set FLAG_USED_ROOM_2_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen
checkitem ITEM_ROOM_2_KEY
checkitem ITEM_KEY_TO_ROOM_2
goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm2IsLocked
msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT
playse SE_PIN
removeitem ITEM_ROOM_2_KEY
removeitem ITEM_KEY_TO_ROOM_2
setflag FLAG_USED_ROOM_2_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom2
special DrawWholeMapView
@ -81,11 +81,11 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room2Door::
AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door::
lockall
goto_if_set FLAG_USED_ROOM_4_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen
checkitem ITEM_ROOM_4_KEY
checkitem ITEM_KEY_TO_ROOM_4
goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm4IsLocked
msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT
playse SE_PIN
removeitem ITEM_ROOM_4_KEY
removeitem ITEM_KEY_TO_ROOM_4
setflag FLAG_USED_ROOM_4_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom4
special DrawWholeMapView
@ -95,11 +95,11 @@ AbandonedShip_HiddenFloorCorridors_EventScript_Room4Door::
AbandonedShip_HiddenFloorCorridors_EventScript_Room6Door::
lockall
goto_if_set FLAG_USED_ROOM_6_KEY, AbandonedShip_HiddenFloorCorridors_EventScript_TheDoorIsOpen
checkitem ITEM_ROOM_6_KEY
checkitem ITEM_KEY_TO_ROOM_6
goto_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorCorridors_EventScript_Rm6IsLocked
msgbox AbandonedShip_HiddenFloorCorridors_Text_InsertedKey, MSGBOX_DEFAULT
playse SE_PIN
removeitem ITEM_ROOM_6_KEY
removeitem ITEM_KEY_TO_ROOM_6
setflag FLAG_USED_ROOM_6_KEY
call AbandonedShip_HiddenFloorCorridors_EventScript_UnlockRoom6
special DrawWholeMapView

View File

@ -139,7 +139,7 @@
"x": 42,
"y": 10,
"elevation": 3,
"item": "ITEM_ROOM_1_KEY",
"item": "ITEM_KEY_TO_ROOM_1",
"flag": "FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY"
},
{
@ -147,7 +147,7 @@
"x": 20,
"y": 5,
"elevation": 3,
"item": "ITEM_ROOM_2_KEY",
"item": "ITEM_KEY_TO_ROOM_2",
"flag": "FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY"
},
{
@ -155,7 +155,7 @@
"x": 1,
"y": 12,
"elevation": 3,
"item": "ITEM_ROOM_4_KEY",
"item": "ITEM_KEY_TO_ROOM_4",
"flag": "FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY"
},
{
@ -163,7 +163,7 @@
"x": 1,
"y": 2,
"elevation": 0,
"item": "ITEM_ROOM_6_KEY",
"item": "ITEM_KEY_TO_ROOM_6",
"flag": "FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY"
},
{

View File

@ -472,8 +472,8 @@ BattleFrontier_BattlePalaceLobby_Text_FeatWillBeRecorded:
@ Unused
BattleFrontier_BattlePalaceLobby_Text_BattlePointsFor7WinStreak:
.string "For the feat of your 7-win streak,\n"
.string "we present you with Battle Point(s).$"
.string "For the feat of your 7-win streak,\n"
.string "we present you with Battle Point(s).$"
BattleFrontier_BattlePalaceLobby_Text_NoSpaceForPrize:
.string "You seem to have no space for\n"

View File

@ -67,51 +67,61 @@ BattleFrontier_Lounge7_EventScript_ChooseNewLeftTutorMove::
BattleFrontier_Lounge7_EventScript_Softboiled::
setvar VAR_0x8008, 16
setvar VAR_0x8005, MOVE_SOFT_BOILED
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_SeismicToss::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_SEISMIC_TOSS
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_DreamEater::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_DREAM_EATER
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_MegaPunch::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_MEGA_PUNCH
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_MegaKick::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_MEGA_KICK
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_BodySlam::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_BODY_SLAM
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_RockSlide::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_ROCK_SLIDE
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_Counter::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_COUNTER
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_ThunderWave::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_THUNDER_WAVE
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_SwordsDance::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_SWORDS_DANCE
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
@ -135,7 +145,6 @@ BattleFrontier_Lounge7_EventScript_ChooseRightTutorMove::
waitmessage
special ShowBattlePointsWindow
setvar VAR_TEMP_E, 1
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_2
setvar VAR_0x8006, 0
special ShowScrollableMultichoice
waitstate
@ -159,7 +168,6 @@ BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove::
message BattleFrontier_Lounge7_Text_TeachWhichMove
waitmessage
setvar VAR_TEMP_E, 1
setvar VAR_0x8004, SCROLL_MULTI_BF_MOVE_TUTOR_2
setvar VAR_0x8006, 1
special ShowScrollableMultichoice
waitstate
@ -181,51 +189,61 @@ BattleFrontier_Lounge7_EventScript_ChooseNewRightTutorMove::
BattleFrontier_Lounge7_EventScript_DefenseCurl::
setvar VAR_0x8008, 16
setvar VAR_0x8005, MOVE_DEFENSE_CURL
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_Snore::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_SNORE
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_MudSlap::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_MUD_SLAP
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_Swift::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_SWIFT
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_IcyWind::
setvar VAR_0x8008, 24
setvar VAR_0x8005, MOVE_ICY_WIND
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_Endure::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_ENDURE
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_PsychUp::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_PSYCH_UP
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_IcePunch::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_ICE_PUNCH
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_ThunderPunch::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_THUNDER_PUNCH
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
BattleFrontier_Lounge7_EventScript_FirePunch::
setvar VAR_0x8008, 48
setvar VAR_0x8005, MOVE_FIRE_PUNCH
goto BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection
end
@ -246,11 +264,8 @@ BattleFrontier_Lounge7_EventScript_CancelChooseMon::
@ VAR_TEMP_D is the move selection
@ VAR_TEMP_E is which move tutor was spoken to
BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection::
copyvar VAR_0x8004, VAR_TEMP_D
copyvar VAR_0x8005, VAR_TEMP_E
special BufferBattleFrontierTutorMoveName
buffernumberstring STR_VAR_2, VAR_0x8008
copyvar VAR_0x8004, VAR_TEMP_C
msgbox BattleFrontier_Lounge7_Text_MoveWillBeXBattlePoints, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, BattleFrontier_Lounge7_EventScript_ChooseNewMove
specialvar VAR_TEMP_1, GetFrontierBattlePoints
@ -261,7 +276,6 @@ BattleFrontier_Lounge7_EventScript_ConfirmMoveSelection::
BattleFrontier_Lounge7_EventScript_TeachTutorMove::
msgbox BattleFrontier_Lounge7_Text_TeachMoveToWhichMon, MSGBOX_DEFAULT
special GetBattleFrontierTutorMoveIndex
fadescreen FADE_TO_BLACK
special CloseBattlePointsWindow
special CloseBattleFrontierTutorWindow

View File

@ -33,8 +33,8 @@ EverGrandeCity_ChampionsRoom_EventScript_EnterRoom::
waitmovement 0
setvar VAR_TEMP_1, 1
goto EverGrandeCity_ChampionsRoom_EventScript_Wallace
releaseall
end
releaseall
end
EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace:
walk_up

View File

@ -19,10 +19,10 @@ FallarborTown_Mart_Pokemart:
.2byte ITEM_PARALYZE_HEAL
.2byte ITEM_ESCAPE_ROPE
.2byte ITEM_SUPER_REPEL
.2byte ITEM_X_SPECIAL
.2byte ITEM_X_SP_ATK
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_NONE

View File

@ -19,7 +19,7 @@ FortreeCity_DecorationShop_EventScript_ClerkDesks::
release
end
.align 2
.align 2
FortreeCity_DecorationShop_PokemartDecor_Desks:
.2byte DECOR_SMALL_DESK
.2byte DECOR_POKEMON_DESK

View File

@ -36,9 +36,9 @@ LilycoveCity_DepartmentStore_3F_EventScript_ClerkRight::
.align 2
LilycoveCity_DepartmentStore_3F_Pokemart_StatBoosters:
.2byte ITEM_X_SPEED
.2byte ITEM_X_SPECIAL
.2byte ITEM_X_SP_ATK
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY

View File

@ -21,7 +21,7 @@ MauvilleCity_Mart_Pokemart:
.2byte ITEM_AWAKENING
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_GUARD_SPEC
.2byte ITEM_DIRE_HIT
.2byte ITEM_X_ACCURACY

View File

@ -21,7 +21,7 @@ MossdeepCity_Mart_Pokemart:
.2byte ITEM_REVIVE
.2byte ITEM_MAX_REPEL
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_NONE
release
end

View File

@ -158,7 +158,7 @@
"y": 9,
"elevation": 0,
"player_facing_dir": "BG_EVENT_PLAYER_FACING_ANY",
"script": "OldaleTown_EventScript_CitySign"
"script": "OldaleTown_EventScript_TownSign"
},
{
"type": "sign",

View File

@ -29,8 +29,8 @@ OldaleTown_EventScript_MoveMartEmployee::
setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN
return
OldaleTown_EventScript_CitySign::
msgbox OldaleTown_Text_CitySign, MSGBOX_SIGN
OldaleTown_EventScript_TownSign::
msgbox OldaleTown_Text_TownSign, MSGBOX_SIGN
end
OldaleTown_EventScript_Girl::
@ -395,7 +395,7 @@ OldaleTown_Text_BrendanLetsGoBack:
.string "LAB now.\l"
.string "{PLAYER}, you should hustle back, too.$"
OldaleTown_Text_CitySign:
OldaleTown_Text_TownSign:
.string "OLDALE TOWN\n"
.string "“Where things start off scarce.”$"

View File

@ -11,9 +11,9 @@ PacifidlogTown_House2_EventScript_FanClubYoungerBrother::
call_if_unset FLAG_MET_FANCLUB_YOUNGER_BROTHER, PacifidlogTown_House2_EventScript_FirstMonAssessment
setflag FLAG_MET_FANCLUB_YOUNGER_BROTHER
specialvar VAR_RESULT, GetLeadMonFriendshipScore
goto_if_ge VAR_RESULT, 4, PacifidlogTown_House2_EventScript_GiveReturn
goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, PacifidlogTown_House2_EventScript_GiveReturn
specialvar VAR_RESULT, GetLeadMonFriendshipScore
goto_if_ge VAR_RESULT, 2, PacifidlogTown_House2_EventScript_PutInEffort
goto_if_ge VAR_RESULT, FRIENDSHIP_50_TO_99, PacifidlogTown_House2_EventScript_PutInEffort
goto PacifidlogTown_House2_EventScript_GiveFrustration
end

View File

@ -351,9 +351,9 @@ PetalburgCity_Gym_EventScript_NormanRematch::
PetalburgCity_Gym_EventScript_ShouldGiveEnigmaBerry::
specialvar VAR_RESULT, IsEnigmaBerryValid
goto_if_eq VAR_RESULT, FALSE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry
checkitem ITEM_ENIGMA_BERRY
checkitem ITEM_ENIGMA_BERRY_E_READER
goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry
checkpcitem ITEM_ENIGMA_BERRY
checkpcitem ITEM_ENIGMA_BERRY_E_READER
goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry
goto_if_eq VAR_ENIGMA_BERRY_AVAILABLE, 0, PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry
msgbox PetalburgCity_Gym_Text_GiveEnigmaBerry, MSGBOX_DEFAULT
@ -365,7 +365,7 @@ PetalburgCity_Gym_EventScript_DontGiveEnigmaBerry::
return
PetalburgCity_Gym_EventScript_GiveEnigmaBerry::
giveitem ITEM_ENIGMA_BERRY
giveitem ITEM_ENIGMA_BERRY_E_READER
goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull
setvar VAR_ENIGMA_BERRY_AVAILABLE, 0
release

View File

@ -23,7 +23,7 @@ PetalburgCity_Mart_Pokemart_Basic:
.2byte ITEM_REPEL
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_ORANGE_MAIL
.2byte ITEM_NONE
release
@ -48,7 +48,7 @@ PetalburgCity_Mart_Pokemart_Expanded:
.2byte ITEM_REPEL
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_ORANGE_MAIL
.2byte ITEM_NONE
release

View File

@ -463,7 +463,7 @@ Route110_EventScript_BrendanDefeated::
end
Route110_EventScript_GiveItemfinder::
giveitem ITEM_ITEMFINDER
giveitem ITEM_DOWSING_MACHINE
return
Route110_EventScript_RivalExit::

View File

@ -144,7 +144,7 @@ Route111_EventScript_RootFossilDisappeared::
@ Unused
Route111_Movement_PlayerFall::
store_lock_anim
lock_anim
walk_fast_down
walk_fast_down
walk_fast_down

View File

@ -27,7 +27,7 @@ RustboroCity_Mart_Pokemart_Basic:
.2byte ITEM_REPEL
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_NONE
release
end
@ -51,7 +51,7 @@ RustboroCity_Mart_Pokemart_Expanded:
.2byte ITEM_REPEL
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_NONE
release
end

View File

@ -308,7 +308,7 @@ RusturfTunnel_EventScript_Grunt::
msgbox RusturfTunnel_Text_GruntIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_RUSTURF_TUNNEL, RusturfTunnel_Text_GruntDefeat
msgbox RusturfTunnel_Text_GruntTakePackage, MSGBOX_DEFAULT
giveitem ITEM_DEVON_GOODS
giveitem ITEM_DEVON_PARTS
closemessage
applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PushPlayerAsideForGrunt
applymovement LOCALID_GRUNT, RusturfTunnel_Movement_GruntEscape

View File

@ -71,7 +71,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern::
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs, MSGBOX_DEFAULT
setvar VAR_0x8004, ITEM_DEVON_GOODS
setvar VAR_0x8004, ITEM_DEVON_PARTS
call Common_EventScript_PlayerHandedOverTheItem
msgbox SlateportCity_OceanicMuseum_2F_Text_SternIveGotToGo, MSGBOX_DEFAULT
closemessage

View File

@ -192,7 +192,7 @@ SlateportCity_PokemonFanClub_EventScript_SootheBellWoman::
goto_if_set FLAG_RECEIVED_SOOTHE_BELL, SlateportCity_PokemonFanClub_EventScript_ReceivedSootheBell
msgbox SlateportCity_PokemonFanClub_Text_ShowMePokemonThatLoveYou, MSGBOX_DEFAULT
specialvar VAR_RESULT, GetLeadMonFriendshipScore
goto_if_ge VAR_RESULT, 4, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell
goto_if_ge VAR_RESULT, FRIENDSHIP_150_TO_199, SlateportCity_PokemonFanClub_EventScript_GiveSootheBell
release
end

View File

@ -20,7 +20,7 @@ SootopolisCity_Mart_Pokemart:
.2byte ITEM_REVIVE
.2byte ITEM_MAX_REPEL
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_SHADOW_MAIL
.2byte ITEM_NONE
release

View File

@ -259,9 +259,9 @@ TrainerHill_Entrance_Pokemart_Basic:
.2byte ITEM_PARALYZE_HEAL
.2byte ITEM_AWAKENING
.2byte ITEM_X_SPEED
.2byte ITEM_X_SPECIAL
.2byte ITEM_X_SP_ATK
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY
@ -283,9 +283,9 @@ TrainerHill_Entrance_Pokemart_Expanded:
.2byte ITEM_FULL_HEAL
.2byte ITEM_REVIVE
.2byte ITEM_X_SPEED
.2byte ITEM_X_SPECIAL
.2byte ITEM_X_SP_ATK
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_X_DEFENSE
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY

View File

@ -7,13 +7,13 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_FriendshipRater::
msgbox VerdanturfTown_FriendshipRatersHouse_Text_SeeHowMuchPokemonLikesYou, MSGBOX_DEFAULT
specialvar VAR_RESULT, GetLeadMonFriendshipScore
switch VAR_RESULT
case 0, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou
case 1, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary
case 2, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou
case 3, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou
case 4, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot
case 5, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy
case 6, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou
case FRIENDSHIP_NONE, VerdanturfTown_FriendshipRatersHouse_EventScript_DetestsYou
case FRIENDSHIP_1_TO_49, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryWary
case FRIENDSHIP_50_TO_99, VerdanturfTown_FriendshipRatersHouse_EventScript_NotUsedToYou
case FRIENDSHIP_100_TO_149, VerdanturfTown_FriendshipRatersHouse_EventScript_GettingUsedToYou
case FRIENDSHIP_150_TO_199, VerdanturfTown_FriendshipRatersHouse_EventScript_LikesYouQuiteALot
case FRIENDSHIP_200_TO_254, VerdanturfTown_FriendshipRatersHouse_EventScript_VeryHappy
case FRIENDSHIP_MAX, VerdanturfTown_FriendshipRatersHouse_EventScript_AdoresYou
release
end

View File

@ -22,7 +22,7 @@ VerdanturfTown_Mart_Pokemart:
.2byte ITEM_BURN_HEAL
.2byte ITEM_ICE_HEAL
.2byte ITEM_REPEL
.2byte ITEM_X_SPECIAL
.2byte ITEM_X_SP_ATK
.2byte ITEM_FLUFFY_TAIL
.2byte ITEM_NONE
release

View File

@ -127,7 +127,7 @@ Route115_EventScript_ItemPPUp::
end
Route116_EventScript_ItemXSpecial::
finditem ITEM_X_SPECIAL
finditem ITEM_X_SP_ATK
end
Route116_EventScript_ItemEther::
@ -315,7 +315,7 @@ MauvilleCity_EventScript_ItemXSpeed::
end
RustboroCity_EventScript_ItemXDefend::
finditem ITEM_X_DEFEND
finditem ITEM_X_DEFENSE
end
LilycoveCity_EventScript_ItemMaxRepel::

View File

@ -315,7 +315,7 @@ MauvilleCity_PokemonCenter_1F_Text_TrendsStartedStory::
.string "the HOENN region!$"
MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedTitle::
.string "The BERRY-Planting TRAINER$"
.string "The BERRY-Planting TRAINER$"
MauvilleCity_PokemonCenter_1F_Text_BerriesPlantedAction::
.string "Planted BERRIES$"

View File

@ -7,7 +7,7 @@ SlateportCity_PokemonFanClub_EventScript_SwaggerTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SwaggerDeclined
msgbox MoveTutor_Text_SwaggerWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_SWAGGER
setvar VAR_0x8005, MOVE_SWAGGER
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SwaggerDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_SWAGGER
@ -33,7 +33,7 @@ MauvilleCity_EventScript_RolloutTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_RolloutDeclined
msgbox MoveTutor_Text_RolloutWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_ROLLOUT
setvar VAR_0x8005, MOVE_ROLLOUT
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_RolloutDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_ROLLOUT
@ -59,7 +59,7 @@ VerdanturfTown_PokemonCenter_1F_EventScript_FuryCutterTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_FuryCutterDeclined
msgbox MoveTutor_Text_FuryCutterWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_FURY_CUTTER
setvar VAR_0x8005, MOVE_FURY_CUTTER
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_FuryCutterDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_FURY_CUTTER
@ -85,7 +85,7 @@ LavaridgeTown_House_EventScript_MimicTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MimicDeclined
msgbox MoveTutor_Text_MimicWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_MIMIC
setvar VAR_0x8005, MOVE_MIMIC
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_MimicDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_MIMIC
@ -111,7 +111,7 @@ FallarborTown_Mart_EventScript_MetronomeTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_MetronomeDeclined
msgbox MoveTutor_Text_MetronomeWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_METRONOME
setvar VAR_0x8005, MOVE_METRONOME
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_MetronomeDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_METRONOME
@ -137,7 +137,7 @@ FortreeCity_House2_EventScript_SleepTalkTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SleepTalkDeclined
msgbox MoveTutor_Text_SleepTalkWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_SLEEP_TALK
setvar VAR_0x8005, MOVE_SLEEP_TALK
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SleepTalkDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_SLEEP_TALK
@ -163,7 +163,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_SubstituteTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_SubstituteDeclined
msgbox MoveTutor_Text_SubstituteWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_SUBSTITUTE
setvar VAR_0x8005, MOVE_SUBSTITUTE
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_SubstituteDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_SUBSTITUTE
@ -189,7 +189,7 @@ MossdeepCity_EventScript_DynamicPunchTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DynamicPunchDeclined
msgbox MoveTutor_Text_DynamicPunchWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_DYNAMIC_PUNCH
setvar VAR_0x8005, MOVE_DYNAMIC_PUNCH
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_DynamicPunchDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_DYNAMICPUNCH
@ -215,7 +215,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_DoubleEdgeTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_DoubleEdgeDeclined
msgbox MoveTutor_Text_DoubleEdgeWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_DOUBLE_EDGE
setvar VAR_0x8005, MOVE_DOUBLE_EDGE
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_DoubleEdgeDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_DOUBLE_EDGE
@ -241,7 +241,7 @@ PacifidlogTown_PokemonCenter_1F_EventScript_ExplosionTutor::
call MoveTutor_EventScript_CanOnlyBeLearnedOnce
goto_if_eq VAR_RESULT, NO, MoveTutor_EventScript_ExplosionDeclined
msgbox MoveTutor_Text_ExplosionWhichMon, MSGBOX_DEFAULT
setvar VAR_0x8005, TUTOR_MOVE_EXPLOSION
setvar VAR_0x8005, MOVE_EXPLOSION
call MoveTutor_EventScript_OpenPartyMenu
goto_if_eq VAR_RESULT, 0, MoveTutor_EventScript_ExplosionDeclined
setflag FLAG_MOVE_TUTOR_TAUGHT_EXPLOSION

View File

@ -2,7 +2,7 @@
.include "asm/macros/m4a.inc"
.include "asm/macros/music_voice.inc"
.include "include/constants/pokemon_config.h"
.include "sound/voice_groups.inc"
.include "sound/keysplit_tables.inc"
.include "sound/programmable_wave_data.inc"

View File

@ -486,7 +486,6 @@ gSpecials::
def_special CloseBattleFrontierTutorWindow
def_special ScrollableMultichoice_RedrawPersistentMenu
def_special ChooseMonForMoveTutor
def_special GetBattleFrontierTutorMoveIndex
def_special ScrollableMultichoice_ClosePersistentMenu
def_special DoDeoxysRockInteraction
def_special SetDeoxysRockPalette
@ -536,3 +535,4 @@ gSpecials::
def_special CloseDeptStoreElevatorWindow
def_special TrySetBattleTowerLinkType
def_special SetTotemBoost
def_special TrySpecialOverworldEvo

View File

@ -1,71 +1,71 @@
EventTicket_Text_OldSeaMapTooFar:
.string "What's up, youngster?\p"
.string "What, it's you who's supposed to have\n"
.string "a tattered old map?\p"
.string "Let's have a look.\n"
.string "… … … … … …\p"
.string "Boy, this is quite a ways away.\n"
.string "I'm afraid I can't help you…$"
.string "What's up, youngster?\p"
.string "What, it's you who's supposed to have\n"
.string "a tattered old map?\p"
.string "Let's have a look.\n"
.string "… … … … … …\p"
.string "Boy, this is quite a ways away.\n"
.string "I'm afraid I can't help you…$"
EventTicket_Text_BrineyHoldOnASecond:
.string "BRINEY: Hold on a second!\p"
.string "What's the idea of turning down\n"
.string "someone that I owe so much to?$"
.string "BRINEY: Hold on a second!\p"
.string "What's the idea of turning down\n"
.string "someone that I owe so much to?$"
EventTicket_Text_BrineyLetsSail:
.string "{PLAYER}{KUN}, I'm terribly sorry.\p"
.string "You came to me seeking my help,\n"
.string "and we almost turned you away.\p"
.string "Well, let me make things right.\p"
.string "We'll sail right away, of course!\p"
.string "Let's find this island on\n"
.string "this OLD SEA MAP!$"
.string "{PLAYER}{KUN}, I'm terribly sorry.\p"
.string "You came to me seeking my help,\n"
.string "and we almost turned you away.\p"
.string "Well, let me make things right.\p"
.string "We'll sail right away, of course!\p"
.string "Let's find this island on\n"
.string "this OLD SEA MAP!$"
EventTicket_Text_OddTicketGetOnBoard:
.string "Is it you who brought that odd\n"
.string "ticket?\p"
.string "Where you're trying to go is an island\n"
.string "that's far, far away.\p"
.string "No one knows what awaits there…\p"
.string "The very thought excites my blood\n"
.string "as a sailing man!\p"
.string "Get on board, youngster!$"
.string "Is it you who brought that odd\n"
.string "ticket?\p"
.string "Where you're trying to go is an island\n"
.string "that's far, far away.\p"
.string "No one knows what awaits there…\p"
.string "The very thought excites my blood\n"
.string "as a sailing man!\p"
.string "Get on board, youngster!$"
FarawayIsland_Entrance_Text_SailorReturn:
.string "CAPT. BRINEY can be so maddeningly\n"
.string "fickle…\p"
.string "Do you want to return to LILYCOVE?$"
.string "CAPT. BRINEY can be so maddeningly\n"
.string "fickle…\p"
.string "Do you want to return to LILYCOVE?$"
BirthIsland_Harbor_Text_SailorReturn:
.string "What an oddly shaped island, eh?\n"
.string "Do you want to return to LILYCOVE?$"
.string "What an oddly shaped island, eh?\n"
.string "Do you want to return to LILYCOVE?$"
EventTicket_Text_OddTicketsWhereTo:
.string "Is it you who brought those\n"
.string "odd tickets?\p"
.string "… … …Hm.\p"
.string "These tickets will get you to islands\n"
.string "that are far, far away.\p"
.string "No one knows what awaits there,\n"
.string "or what may happen there.\p"
.string "The very thought excites my blood\n"
.string "as a sailing man!\p"
.string "Get on board, youngster!\n"
.string "Where shall we sail first?$"
.string "Is it you who brought those\n"
.string "odd tickets?\p"
.string "… … …Hm.\p"
.string "These tickets will get you to islands\n"
.string "that are far, far away.\p"
.string "No one knows what awaits there,\n"
.string "or what may happen there.\p"
.string "The very thought excites my blood\n"
.string "as a sailing man!\p"
.string "Get on board, youngster!\n"
.string "Where shall we sail first?$"
NavelRock_Harbor_Text_SailorReturn:
.string "Did… Did you hear that?\n"
.string "That low growling from deep in there.\p"
.string "Are you sure it's safe?\n"
.string "Do you think we should leave?$"
.string "Did… Did you hear that?\n"
.string "That low growling from deep in there.\p"
.string "Are you sure it's safe?\n"
.string "Do you think we should leave?$"
FarawayIsland_Entrance_Text_Sign:
.string "The writing is fading as if it was\n"
.string "written a long time ago…\p"
.string "“…ber, 6th day\n"
.string "If any human…sets foot here…\l"
.string "again…et it be a kindhearted pers…\l"
.string "…ith that hope, I depar…”$"
.string "The writing is fading as if it was\n"
.string "written a long time ago…\p"
.string "“…ber, 6th day\n"
.string "If any human…sets foot here…\l"
.string "again…et it be a kindhearted pers…\l"
.string "…ith that hope, I depar…”$"
FarawayIsland_Interior_Text_Mew:
.string "Myuu…$"
.string "Myuu…$"

View File

@ -1,51 +1,51 @@
gText_WouldYouLikeToRestYourPkmn::
.string "Hello, and welcome to\n"
.string "the POKéMON CENTER.\p"
.string "We restore your tired POKéMON\n"
.string "to full health.\p"
.string "Would you like to rest your POKéMON?$"
.string "Hello, and welcome to\n"
.string "the POKéMON CENTER.\p"
.string "We restore your tired POKéMON\n"
.string "to full health.\p"
.string "Would you like to rest your POKéMON?$"
gText_IllTakeYourPkmn::
.string "Okay, I'll take your POKéMON\n"
.string "for a few seconds.$"
.string "Okay, I'll take your POKéMON\n"
.string "for a few seconds.$"
gText_RestoredPkmnToFullHealth::
.string "Thank you for waiting.\p"
.string "We've restored your POKéMON\n"
.string "to full health.$"
.string "Thank you for waiting.\p"
.string "We've restored your POKéMON\n"
.string "to full health.$"
gText_WeHopeToSeeYouAgain::
.string "We hope to see you again!$"
.string "We hope to see you again!$"
gText_WelcomeCutShort::
.string "Hello, and welcome to\n"
.string "the POKéMON CENTER.\p"
.string "We restore your tired POKéMON\n"
.string "to full health.\p"
.string "Would you like to…$"
.string "Hello, and welcome to\n"
.string "the POKéMON CENTER.\p"
.string "We restore your tired POKéMON\n"
.string "to full health.\p"
.string "Would you like to…$"
gText_NoticesGoldCard::
.string "Th-that card…\n"
.string "Could it be… The GOLD CARD?!\p"
.string "Oh, the gold color is brilliant!\n"
.string "The four stars seem to sparkle!\p"
.string "I've seen several TRAINERS with\n"
.string "a SILVER CARD before, but, {PLAYER},\l"
.string "you're the first TRAINER I've ever\l"
.string "seen with a GOLD CARD!\p"
.string "Okay, {PLAYER}, please allow me\n"
.string "the honor of resting your POKéMON!$"
.string "Th-that card…\n"
.string "Could it be… The GOLD CARD?!\p"
.string "Oh, the gold color is brilliant!\n"
.string "The four stars seem to sparkle!\p"
.string "I've seen several TRAINERS with\n"
.string "a SILVER CARD before, but, {PLAYER},\l"
.string "you're the first TRAINER I've ever\l"
.string "seen with a GOLD CARD!\p"
.string "Okay, {PLAYER}, please allow me\n"
.string "the honor of resting your POKéMON!$"
gText_YouWantTheUsual::
.string "I'm delighted to see you, {PLAYER}!\n"
.string "You want the usual, am I right?$"
.string "I'm delighted to see you, {PLAYER}!\n"
.string "You want the usual, am I right?$"
gText_IllTakeYourPkmn2::
.string "Okay, I'll take your POKéMON\n"
.string "for a few seconds.$"
.string "Okay, I'll take your POKéMON\n"
.string "for a few seconds.$"
gText_ThankYouForWaiting::
.string "Thank you for waiting.$"
.string "Thank you for waiting.$"
gText_WeHopeToSeeYouAgain2::
.string "We hope to see you again!$"
.string "We hope to see you again!$"

View File

@ -1,286 +1,286 @@
SecretBase_Text_Trainer0Intro:
.string "Have you made a SECRET BASE already?\p"
.string "I went here, there, everywhere before\n"
.string "choosing this place.\p"
.string "Since you're already here, how would\n"
.string "you like to battle?$"
.string "Have you made a SECRET BASE already?\p"
.string "I went here, there, everywhere before\n"
.string "choosing this place.\p"
.string "Since you're already here, how would\n"
.string "you like to battle?$"
SecretBase_Text_Trainer0AcceptBattle:
.string "Okay!\n"
.string "Here we come!$"
.string "Okay!\n"
.string "Here we come!$"
SecretBase_Text_Trainer0DeclineBattle:
.string "Hunh?\n"
.string "Oh, you can't now…$"
.string "Hunh?\n"
.string "Oh, you can't now…$"
SecretBase_Text_Trainer0Defeated::
.string "Waaargh! You're too strong!\n"
.string "About me losing… Please keep it secret!$"
.string "Waaargh! You're too strong!\n"
.string "About me losing… Please keep it secret!$"
SecretBase_Text_Trainer0PostBattle:
.string "What do you think of my SECRET BASE?\n"
.string "Come visit me again tomorrow.$"
.string "What do you think of my SECRET BASE?\n"
.string "Come visit me again tomorrow.$"
SecretBase_Text_Trainer0PreChampion:
.string "Have you made a SECRET BASE already?\p"
.string "I went here, there, everywhere before\n"
.string "choosing this place.\p"
.string "Feel free to hang out!$"
.string "Have you made a SECRET BASE already?\p"
.string "I went here, there, everywhere before\n"
.string "choosing this place.\p"
.string "Feel free to hang out!$"
SecretBase_Text_Trainer5Intro:
.string "There're a lot of places where\n"
.string "you can make a SECRET BASE.\p"
.string "But I like this spot best.\n"
.string "Don't you think it's nice?\p"
.string "Oh, would you like to have a battle?$"
.string "There're a lot of places where\n"
.string "you can make a SECRET BASE.\p"
.string "But I like this spot best.\n"
.string "Don't you think it's nice?\p"
.string "Oh, would you like to have a battle?$"
SecretBase_Text_Trainer5AcceptBattle:
.string "Okay, here goes!$"
.string "Okay, here goes!$"
SecretBase_Text_Trainer5DeclineBattle:
.string "Oh…\n"
.string "You can't now, okay.$"
.string "Oh…\n"
.string "You can't now, okay.$"
SecretBase_Text_Trainer5Defeated::
.string "Hmmm… It's our loss…\n"
.string "But don't tell anyone!\l"
.string "It's a confidential secret!$"
.string "Hmmm… It's our loss…\n"
.string "But don't tell anyone!\l"
.string "It's a confidential secret!$"
SecretBase_Text_Trainer5PostBattle:
.string "If you're in this area again,\n"
.string "I hope you'll visit me.$"
.string "If you're in this area again,\n"
.string "I hope you'll visit me.$"
SecretBase_Text_Trainer5PreChampion:
.string "There're a lot of places where you can\n"
.string "make a SECRET BASE.\p"
.string "But I like this spot best.\n"
.string "Don't you think it's nice?$"
.string "There're a lot of places where you can\n"
.string "make a SECRET BASE.\p"
.string "But I like this spot best.\n"
.string "Don't you think it's nice?$"
SecretBase_Text_Trainer1Intro:
.string "This is a popular spot.\n"
.string "It's always taken.\p"
.string "Oh! Were you thinking about\n"
.string "taking this spot, too?\p"
.string "I'll tell you what, you can have this\n"
.string "spot if you can beat me.$"
.string "This is a popular spot.\n"
.string "It's always taken.\p"
.string "Oh! Were you thinking about\n"
.string "taking this spot, too?\p"
.string "I'll tell you what, you can have this\n"
.string "spot if you can beat me.$"
SecretBase_Text_Trainer1AcceptBattle:
.string "Okay!\n"
.string "I'm going to defend my SECRET BASE!$"
.string "Okay!\n"
.string "I'm going to defend my SECRET BASE!$"
SecretBase_Text_Trainer1DeclineBattle:
.string "Hunh? Is that right?\n"
.string "You're not interested in this spot?$"
.string "Hunh? Is that right?\n"
.string "You're not interested in this spot?$"
SecretBase_Text_Trainer1Defeated::
.string "I can't keep going!\n"
.string "I surrender!$"
.string "I can't keep going!\n"
.string "I surrender!$"
SecretBase_Text_Trainer1PostBattle:
.string "Okay, when I move one day,\n"
.string "this place will be yours!$"
.string "Okay, when I move one day,\n"
.string "this place will be yours!$"
SecretBase_Text_Trainer1PreChampion:
.string "This is a popular spot.\n"
.string "It's always taken.\p"
.string "I waited a long time for it to open.\n"
.string "I finally got to use it!$"
.string "This is a popular spot.\n"
.string "It's always taken.\p"
.string "I waited a long time for it to open.\n"
.string "I finally got to use it!$"
SecretBase_Text_Trainer6Intro:
.string "Welcome to my POKéMON LAB.\p"
.string "I carry out research on battling in\n"
.string "secrecy.\p"
.string "Would you like to see how strong I am?$"
.string "Welcome to my POKéMON LAB.\p"
.string "I carry out research on battling in\n"
.string "secrecy.\p"
.string "Would you like to see how strong I am?$"
SecretBase_Text_Trainer6AcceptBattle:
.string "I'm going to go all out!$"
.string "I'm going to go all out!$"
SecretBase_Text_Trainer6DeclineBattle:
.string "Oh.\n"
.string "Some other time, then!$"
.string "Oh.\n"
.string "Some other time, then!$"
SecretBase_Text_Trainer6Defeated::
.string "Hmm… I've still got lots to learn.\n"
.string "I have to study some more.$"
.string "Hmm… I've still got lots to learn.\n"
.string "I have to study some more.$"
SecretBase_Text_Trainer6PostBattle:
.string "Thanks for battling with me.\n"
.string "Please come back again tomorrow.$"
.string "Thanks for battling with me.\n"
.string "Please come back again tomorrow.$"
SecretBase_Text_Trainer6PreChampion:
.string "Welcome to my POKéMON LAB.\p"
.string "I carry out research on battling in\n"
.string "secrecy.$"
.string "Welcome to my POKéMON LAB.\p"
.string "I carry out research on battling in\n"
.string "secrecy.$"
SecretBase_Text_Trainer2Intro:
.string "A big mansion is nice, but I like this\n"
.string "sort of place more.\p"
.string "I like it because all kinds of people\n"
.string "come visit me.\p"
.string "So, how would you like a battle?$"
.string "A big mansion is nice, but I like this\n"
.string "sort of place more.\p"
.string "I like it because all kinds of people\n"
.string "come visit me.\p"
.string "So, how would you like a battle?$"
SecretBase_Text_Trainer2AcceptBattle:
.string "That's the way!$"
.string "That's the way!$"
SecretBase_Text_Trainer2DeclineBattle:
.string "When you're ready, give me a shout!$"
.string "When you're ready, give me a shout!$"
SecretBase_Text_Trainer2Defeated::
.string "Aww! Done in!\n"
.string "But it's still fun to battle!$"
.string "Aww! Done in!\n"
.string "But it's still fun to battle!$"
SecretBase_Text_Trainer2PostBattle:
.string "Well, anyway, I should go buy some\n"
.string "decorations and furniture.\p"
.string "I want my SECRET BASE to be a place\n"
.string "other people can enjoy.$"
.string "Well, anyway, I should go buy some\n"
.string "decorations and furniture.\p"
.string "I want my SECRET BASE to be a place\n"
.string "other people can enjoy.$"
SecretBase_Text_Trainer2PreChampion:
.string "A big mansion is nice, but I like this\n"
.string "sort of place more.\p"
.string "I like it because all kinds of people\n"
.string "come visit me.$"
.string "A big mansion is nice, but I like this\n"
.string "sort of place more.\p"
.string "I like it because all kinds of people\n"
.string "come visit me.$"
SecretBase_Text_Trainer7Intro:
.string "I simply adore shopping for decorations\n"
.string "and furniture.\p"
.string "I also love raising POKéMON just\n"
.string "as much.\p"
.string "If you would be so kind, will you battle\n"
.string "with my POKéMON?$"
.string "I simply adore shopping for decorations\n"
.string "and furniture.\p"
.string "I also love raising POKéMON just\n"
.string "as much.\p"
.string "If you would be so kind, will you battle\n"
.string "with my POKéMON?$"
SecretBase_Text_Trainer7AcceptBattle:
.string "Thank you.\n"
.string "Shall we begin?$"
.string "Thank you.\n"
.string "Shall we begin?$"
SecretBase_Text_Trainer7DeclineBattle:
.string "Oh.\n"
.string "How disappointing…$"
.string "Oh.\n"
.string "How disappointing…$"
SecretBase_Text_Trainer7Defeated::
.string "I concede…$"
.string "I concede…$"
SecretBase_Text_Trainer7PostBattle:
.string "That was all in good fun!\n"
.string "I should go enjoy shopping now.$"
.string "That was all in good fun!\n"
.string "I should go enjoy shopping now.$"
SecretBase_Text_Trainer7PreChampion:
.string "I simply adore shopping for decorations\n"
.string "and furniture.\p"
.string "I also love raising POKéMON just\n"
.string "as much.$"
.string "I simply adore shopping for decorations\n"
.string "and furniture.\p"
.string "I also love raising POKéMON just\n"
.string "as much.$"
SecretBase_Text_Trainer3Intro:
.string "Some people make their SECRET BASES in\n"
.string "hard-to-find places.\l"
.string "Do they want to just lie low?\p"
.string "But since you found me, how about we\n"
.string "have a battle?$"
.string "Some people make their SECRET BASES in\n"
.string "hard-to-find places.\l"
.string "Do they want to just lie low?\p"
.string "But since you found me, how about we\n"
.string "have a battle?$"
SecretBase_Text_Trainer3AcceptBattle:
.string "I'm not going down easily!$"
.string "I'm not going down easily!$"
SecretBase_Text_Trainer3DeclineBattle:
.string "Oh… Are you maybe tired from searching\n"
.string "for this place?$"
.string "Oh… Are you maybe tired from searching\n"
.string "for this place?$"
SecretBase_Text_Trainer3Defeated::
.string "I went down…$"
.string "I went down…$"
SecretBase_Text_Trainer3PostBattle:
.string "Where's your SECRET BASE?\n"
.string "I should go visit you there.$"
.string "Where's your SECRET BASE?\n"
.string "I should go visit you there.$"
SecretBase_Text_Trainer3PreChampion:
.string "Some people make their SECRET BASES in\n"
.string "hard-to-find places.\l"
.string "Do they want to just lie low?$"
.string "Some people make their SECRET BASES in\n"
.string "hard-to-find places.\l"
.string "Do they want to just lie low?$"
SecretBase_Text_Trainer8Intro:
.string "People have told me that you can get\n"
.string "decorations in several ways.\p"
.string "We should have a race to see who can\n"
.string "get nicer decorations and furniture!\p"
.string "In the meantime, want to battle?$"
.string "People have told me that you can get\n"
.string "decorations in several ways.\p"
.string "We should have a race to see who can\n"
.string "get nicer decorations and furniture!\p"
.string "In the meantime, want to battle?$"
SecretBase_Text_Trainer8AcceptBattle:
.string "This is my SECRET BASE.\n"
.string "I can't lose!$"
.string "This is my SECRET BASE.\n"
.string "I can't lose!$"
SecretBase_Text_Trainer8DeclineBattle:
.string "I'll battle with you anytime.$"
.string "I'll battle with you anytime.$"
SecretBase_Text_Trainer8Defeated::
.string "Huh?\n"
.string "Did I just lose?$"
.string "Huh?\n"
.string "Did I just lose?$"
SecretBase_Text_Trainer8PostBattle:
.string "I won't lose at collecting decorations.\n"
.string "Come visit again!$"
.string "I won't lose at collecting decorations.\n"
.string "Come visit again!$"
SecretBase_Text_Trainer8PreChampion:
.string "People have told me that you can get\n"
.string "decorations in several ways.\p"
.string "We should have a race to see who can\n"
.string "get nicer decorations and furniture!$"
.string "People have told me that you can get\n"
.string "decorations in several ways.\p"
.string "We should have a race to see who can\n"
.string "get nicer decorations and furniture!$"
SecretBase_Text_Trainer4Intro:
.string "I found a spot I liked, and I did it up\n"
.string "with my favorite decorations.\p"
.string "I raise my favorite POKéMON and grow\n"
.string "stronger with it.\p"
.string "That's what I do.\n"
.string "Want to battle with me?$"
.string "I found a spot I liked, and I did it up\n"
.string "with my favorite decorations.\p"
.string "I raise my favorite POKéMON and grow\n"
.string "stronger with it.\p"
.string "That's what I do.\n"
.string "Want to battle with me?$"
SecretBase_Text_Trainer4AcceptBattle:
.string "Show me what you're made of!$"
.string "Show me what you're made of!$"
SecretBase_Text_Trainer4DeclineBattle:
.string "I guess there are times when you're not\n"
.string "into it.$"
.string "I guess there are times when you're not\n"
.string "into it.$"
SecretBase_Text_Trainer4Defeated::
.string "I know exactly what you're made of now.$"
.string "I know exactly what you're made of now.$"
SecretBase_Text_Trainer4PostBattle:
.string "We can both become stronger.\n"
.string "Let's keep at it!$"
.string "We can both become stronger.\n"
.string "Let's keep at it!$"
SecretBase_Text_Trainer4PreChampion:
.string "I found a spot I liked, and I did it up\n"
.string "with my favorite decorations.\p"
.string "I raise my favorite POKéMON and grow\n"
.string "stronger with it.\p"
.string "Every day is a great day.$"
.string "I found a spot I liked, and I did it up\n"
.string "with my favorite decorations.\p"
.string "I raise my favorite POKéMON and grow\n"
.string "stronger with it.\p"
.string "Every day is a great day.$"
SecretBase_Text_Trainer9Intro:
.string "You can learn a lot about the taste\n"
.string "and sense of people by the kinds of\l"
.string "decorations they have, and how they\l"
.string "display them.\p"
.string "What do you think of my taste?\n"
.string "Are you speechless?\p"
.string "Want to see my taste in battling?$"
.string "You can learn a lot about the taste\n"
.string "and sense of people by the kinds of\l"
.string "decorations they have, and how they\l"
.string "display them.\p"
.string "What do you think of my taste?\n"
.string "Are you speechless?\p"
.string "Want to see my taste in battling?$"
SecretBase_Text_Trainer9AcceptBattle:
.string "There's no holding back!$"
.string "There's no holding back!$"
SecretBase_Text_Trainer9DeclineBattle:
.string "I'll be happy to demonstrate my style\n"
.string "anytime.$"
.string "I'll be happy to demonstrate my style\n"
.string "anytime.$"
SecretBase_Text_Trainer9Defeated::
.string "You're supremely talented!\n"
.string "Your power seems to be limitless…$"
.string "You're supremely talented!\n"
.string "Your power seems to be limitless…$"
SecretBase_Text_Trainer9PostBattle:
.string "What did you think of my style?\n"
.string "I'll keep on polishing it!$"
.string "What did you think of my style?\n"
.string "I'll keep on polishing it!$"
SecretBase_Text_Trainer9PreChampion:
.string "You can learn a lot about the taste\n"
.string "and sense of people by the kinds of\l"
.string "decorations they have, and how they\l"
.string "display them.\p"
.string "What do you think of my taste?\n"
.string "Are you speechless?$"
.string "You can learn a lot about the taste\n"
.string "and sense of people by the kinds of\l"
.string "decorations they have, and how they\l"
.string "display them.\p"
.string "What do you think of my taste?\n"
.string "Are you speechless?$"

View File

@ -33,7 +33,7 @@ struct BgConfig2
u32 basePalette:4;
u32 unk_3:18;
void* tilemap;
void *tilemap;
s32 bg_x;
s32 bg_y;
};
@ -183,14 +183,14 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode)
case 0x1:
offset = sGpuBgConfigs.configs[bg].charBaseIndex * BG_CHAR_SIZE;
offset = destOffset + offset;
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0);
cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0);
if (cursor == -1)
return -1;
break;
case 0x2:
offset = sGpuBgConfigs.configs[bg].mapBaseIndex * BG_SCREEN_SIZE;
offset = destOffset + offset;
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, 0);
cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, 0);
if (cursor == -1)
return -1;
break;
@ -372,7 +372,7 @@ void SetBgMode(u8 bgMode)
SetBgModeInternal(bgMode);
}
u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset)
u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset)
{
u16 tileOffset;
u8 cursor;
@ -422,7 +422,7 @@ u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset)
if (!IsInvalidBg32(bg))
{
u16 paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2);
cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, 0);
cursor = RequestDma3Copy(src, (void *)(paletteOffset + BG_PLTT), size, 0);
if (cursor == -1)
{
@ -863,7 +863,7 @@ void UnsetBgTilemapBuffer(u8 bg)
}
}
void* GetBgTilemapBuffer(u8 bg)
void *GetBgTilemapBuffer(u8 bg)
{
if (IsInvalidBg32(bg))
return NULL;
@ -906,7 +906,7 @@ void CopyBgTilemapBufferToVram(u8 bg)
}
}
void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height)
void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height)
{
u16 destX16;
u16 destY16;
@ -923,20 +923,20 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi
{
for (destX16 = destX; destX16 < (destX + width); destX16++)
{
((u16*)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++;
((u16 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *srcCopy++;
}
}
break;
}
case BG_TYPE_AFFINE:
{
const u8 * srcCopy = src;
const u8 *srcCopy = src;
mode = GetBgMetricAffineMode(bg, 0x1);
for (destY16 = destY; destY16 < (destY + height); destY16++)
{
for (destX16 = destX; destX16 < (destX + width); destX16++)
{
((u8*)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++;
((u8 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *srcCopy++;
}
}
break;
@ -984,7 +984,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8
{
for (j = destX; j < (destX + rectWidth); j++)
{
*(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + tileOffset;
*(u8 *)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8 *)(srcPtr) + tileOffset;
srcPtr++;
}
srcPtr += (srcWidth - rectWidth);
@ -1009,7 +1009,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
{
for (x16 = x; x16 < (x + width); x16++)
{
((u16*)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
((u16 *)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
}
}
break;
@ -1019,7 +1019,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
{
for (x16 = x; x16 < (x + width); x16++)
{
((u8*)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
((u8 *)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
}
}
break;
@ -1052,7 +1052,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
{
for (x16 = x; x16 < (x + width); x16++)
{
CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
CopyTileMapEntry(&firstTileNum, &((u16 *)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
}
}
@ -1063,7 +1063,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
{
for (x16 = x; x16 < (x + width); x16++)
{
((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
((u8 *)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
firstTileNum = (firstTileNum & (MAPGRID_COLLISION_MASK | MAPGRID_ELEVATION_MASK)) + ((firstTileNum + tileNumDelta) & MAPGRID_METATILE_ID_MASK);
}
}
@ -1240,7 +1240,7 @@ bool32 IsInvalidBg32(u8 bg)
bool32 IsTileMapOutsideWram(u8 bg)
{
if (sGpuBgConfigs2[bg].tilemap > (void*)IWRAM_END)
if (sGpuBgConfigs2[bg].tilemap > (void *)IWRAM_END)
return TRUE;
else if (sGpuBgConfigs2[bg].tilemap == NULL)
return TRUE;

View File

@ -3,29 +3,29 @@
enum
{
BG_ATTR_CHARBASEINDEX = 1,
BG_ATTR_MAPBASEINDEX,
BG_ATTR_SCREENSIZE,
BG_ATTR_PALETTEMODE,
BG_ATTR_MOSAIC,
BG_ATTR_WRAPAROUND,
BG_ATTR_PRIORITY,
BG_ATTR_METRIC,
BG_ATTR_TYPE,
BG_ATTR_BASETILE,
BG_ATTR_CHARBASEINDEX = 1,
BG_ATTR_MAPBASEINDEX,
BG_ATTR_SCREENSIZE,
BG_ATTR_PALETTEMODE,
BG_ATTR_MOSAIC,
BG_ATTR_WRAPAROUND,
BG_ATTR_PRIORITY,
BG_ATTR_METRIC,
BG_ATTR_TYPE,
BG_ATTR_BASETILE,
};
enum {
BG_TYPE_NORMAL,
BG_TYPE_AFFINE,
BG_TYPE_NONE = 0xFFFF
BG_TYPE_NORMAL,
BG_TYPE_AFFINE,
BG_TYPE_NONE = 0xFFFF
};
// Modes for ChangeBgX / ChangeBgY
enum {
BG_COORD_SET,
BG_COORD_ADD,
BG_COORD_SUB,
BG_COORD_SET,
BG_COORD_ADD,
BG_COORD_SUB,
};
// Modes for Unused_AdjustBgMosaic
@ -62,7 +62,7 @@ void ResetBgsAndClearDma3BusyFlags(u32 leftoverFireRedLeafGreenVariable);
void InitBgsFromTemplates(u8 bgMode, const struct BgTemplate *templates, u8 numTemplates);
void InitBgFromTemplate(const struct BgTemplate *template);
void SetBgMode(u8 bgMode);
u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset);
u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset);
u16 LoadBgTilemap(u8 bg, const void *src, u16 size, u16 destOffset);
u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset);
bool8 IsDma3ManagerBusyWithBgCopy(void);
@ -79,10 +79,10 @@ void SetBgAffine(u8 bg, s32 srcCenterX, s32 srcCenterY, s16 dispCenterX, s16 dis
u8 Unused_AdjustBgMosaic(u8 val, u8 mode);
void SetBgTilemapBuffer(u8 bg, void *tilemap);
void UnsetBgTilemapBuffer(u8 bg);
void* GetBgTilemapBuffer(u8 bg);
void *GetBgTilemapBuffer(u8 bg);
void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset);
void CopyBgTilemapBufferToVram(u8 bg);
void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height);
void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height);
void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette);
void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, s16 tileOffset, s16 palette2);
void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height);

View File

@ -94,7 +94,7 @@ static void ApplyAffineAnimFrame(u8 matrixNum, struct AffineAnimFrameCmd *frameC
static u8 IndexOfSpriteTileTag(u16 tag);
static void AllocSpriteTileRange(u16 tag, u16 start, u16 count);
static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset);
static void UpdateSpriteMatrixAnchorPos(struct Sprite*, s32, s32);
static void UpdateSpriteMatrixAnchorPos(struct Sprite *, s32, s32);
typedef void (*AnimFunc)(struct Sprite *);
typedef void (*AnimCmdFunc)(struct Sprite *);
@ -105,7 +105,7 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *);
.y = DISPLAY_HEIGHT, \
.affineMode = 0, \
.objMode = 0, \
.mosaic = 0, \
.mosaic = FALSE, \
.bpp = 0, \
.shape = SPRITE_SHAPE(8x8), \
.x = DISPLAY_WIDTH + 64, \
@ -1201,7 +1201,7 @@ u8 GetSpriteMatrixNum(struct Sprite *sprite)
// Used to shift a sprite's position as it scales.
// Only used by the minigame countdown, so that for instance the numbers don't slide up as they squish down before jumping.
void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y)
void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y)
{
sprite->sAnchorX = x;
sprite->sAnchorY = y;

View File

@ -282,7 +282,7 @@ void FreeSpritePalette(struct Sprite *sprite);
void FreeSpriteOamMatrix(struct Sprite *sprite);
void DestroySpriteAndFreeResources(struct Sprite *sprite);
void AnimateSprite(struct Sprite *sprite);
void SetSpriteMatrixAnchor(struct Sprite* sprite, s16 x, s16 y);
void SetSpriteMatrixAnchor(struct Sprite *sprite, s16 x, s16 y);
void StartSpriteAnim(struct Sprite *sprite, u8 animNum);
void StartSpriteAnimIfDifferent(struct Sprite *sprite, u8 animNum);
void SeekSpriteAnim(struct Sprite *sprite, u8 animCmdIndex);

View File

@ -387,7 +387,7 @@ u8 *StringBraille(u8 *dest, const u8 *src)
const u8 setBrailleFont[] = {
EXT_CTRL_CODE_BEGIN,
EXT_CTRL_CODE_FONT,
6,
FONT_BRAILLE,
EOS
};
const u8 gotoLine2[] = {

View File

@ -652,7 +652,7 @@ void ClearTextSpan(struct TextPrinter *textPrinter, u32 width)
struct Window *window;
struct Bitmap pixels_data;
struct TextGlyph *glyph;
u8* glyphHeight;
u8 *glyphHeight;
if (sLastTextBgColor != TEXT_COLOR_TRANSPARENT)
{
@ -1684,7 +1684,7 @@ u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension)
static void DecompressGlyph_Small(u16 glyphId, bool32 isJapanese)
{
const u16* glyphs;
const u16 *glyphs;
if (isJapanese == 1)
{
@ -1726,7 +1726,7 @@ static u32 GetGlyphWidth_Small(u16 glyphId, bool32 isJapanese)
static void DecompressGlyph_Narrow(u16 glyphId, bool32 isJapanese)
{
const u16* glyphs;
const u16 *glyphs;
if (isJapanese == TRUE)
{
@ -1768,7 +1768,7 @@ static u32 GetGlyphWidth_Narrow(u16 glyphId, bool32 isJapanese)
static void DecompressGlyph_SmallNarrow(u16 glyphId, bool32 isJapanese)
{
const u16* glyphs;
const u16 *glyphs;
if (isJapanese == TRUE)
{
@ -1810,7 +1810,7 @@ static u32 GetGlyphWidth_SmallNarrow(u16 glyphId, bool32 isJapanese)
static void DecompressGlyph_Short(u16 glyphId, bool32 isJapanese)
{
const u16* glyphs;
const u16 *glyphs;
if (isJapanese == TRUE)
{
@ -1854,7 +1854,7 @@ static u32 GetGlyphWidth_Short(u16 glyphId, bool32 isJapanese)
static void DecompressGlyph_Normal(u16 glyphId, bool32 isJapanese)
{
const u16* glyphs;
const u16 *glyphs;
if (isJapanese == TRUE)
{
@ -1896,7 +1896,7 @@ static u32 GetGlyphWidth_Normal(u16 glyphId, bool32 isJapanese)
static void DecompressGlyph_Bold(u16 glyphId)
{
const u16* glyphs;
const u16 *glyphs;
glyphs = sFontBoldJapaneseGlyphs + (0x100 * (glyphId >> 4)) + (0x8 * (glyphId & 0xF));
DecompressGlyphTile(glyphs, gCurGlyph.gfxBufferTop);

View File

@ -65,7 +65,7 @@ struct TextPrinterSubStruct
struct TextPrinterTemplate
{
const u8* currentChar;
const u8 *currentChar;
u8 windowId;
u8 fontId;
u8 x;

View File

@ -35,7 +35,7 @@ bool16 InitWindows(const struct WindowTemplate *templates)
int j;
u8 bgLayer;
u16 attrib;
u8* allocatedTilemapBuffer;
u8 *allocatedTilemapBuffer;
int allocatedBaseBlock;
for (i = 0; i < NUM_BACKGROUNDS; ++i)
@ -405,7 +405,7 @@ void BlitBitmapRectToWindow(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u
struct Bitmap sourceRect;
struct Bitmap destRect;
sourceRect.pixels = (u8*)pixels;
sourceRect.pixels = (u8 *)pixels;
sourceRect.width = srcWidth;
sourceRect.height = srcHeight;
@ -421,7 +421,7 @@ static void BlitBitmapRectToWindowWithColorKey(u8 windowId, const u8 *pixels, u1
struct Bitmap sourceRect;
struct Bitmap destRect;
sourceRect.pixels = (u8*)pixels;
sourceRect.pixels = (u8 *)pixels;
sourceRect.width = srcWidth;
sourceRect.height = srcHeight;
@ -463,9 +463,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue)
destOffset = i + (a); \
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
if (srcOffset < size) \
*(u32*)(tileData + destOffset) = *(u32*)(tileData + srcOffset); \
*(u32 *)(tileData + destOffset) = *(u32 *)(tileData + srcOffset); \
else \
*(u32*)(tileData + destOffset) = fillValue32; \
*(u32 *)(tileData + destOffset) = fillValue32; \
distanceLoop++; \
}
@ -474,9 +474,9 @@ void FillWindowPixelBuffer(u8 windowId, u8 fillValue)
destOffset = i + (a); \
srcOffset = i + (((width * (distanceLoop & ~7)) | (distanceLoop & 7)) * 4); \
if (srcOffset < size) \
*(u32*)(tileData - destOffset) = *(u32*)(tileData - srcOffset); \
*(u32 *)(tileData - destOffset) = *(u32 *)(tileData - srcOffset); \
else \
*(u32*)(tileData - destOffset) = fillValue32; \
*(u32 *)(tileData - destOffset) = fillValue32; \
distanceLoop++; \
}
@ -550,7 +550,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
gWindows[windowId].window.baseBlock = value;
return FALSE;
case WINDOW_TILE_DATA:
gWindows[windowId].tileData = (u8*)(value);
gWindows[windowId].tileData = (u8 *)(value);
return TRUE;
case WINDOW_BG:
case WINDOW_WIDTH:
@ -605,7 +605,7 @@ static void DummyWindowBgTilemap8Bit(void)
u16 AddWindow8Bit(const struct WindowTemplate *template)
{
u16 windowId;
u8* memAddress;
u8 *memAddress;
u8 bgLayer;
for (windowId = 0; windowId < WINDOWS_MAX; windowId++)
@ -675,7 +675,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u
struct Bitmap sourceRect;
struct Bitmap destRect;
sourceRect.pixels = (u8*) pixels;
sourceRect.pixels = (u8 *) pixels;
sourceRect.width = srcWidth;
sourceRect.height = srcHeight;

View File

@ -73,7 +73,7 @@ void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
extern struct Window gWindows[];
extern void* gWindowBgTilemapBuffers[];
extern void *gWindowBgTilemapBuffers[];
extern u32 gUnusedWindowVar1;
extern u32 gUnusedWindowVar2;
extern u32 gUnusedWindowVar3;

BIN
graphics/balls/beast.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

BIN
graphics/balls/cherish.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

BIN
graphics/balls/dream.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

BIN
graphics/balls/dusk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

BIN
graphics/balls/fast.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

BIN
graphics/balls/friend.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

BIN
graphics/balls/heal.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

BIN
graphics/balls/heavy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

BIN
graphics/balls/level.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

BIN
graphics/balls/love.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

BIN
graphics/balls/lure.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 B

BIN
graphics/balls/moon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 317 B

BIN
graphics/balls/park.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

BIN
graphics/balls/quick.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

BIN
graphics/balls/sport.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 B

After

Width:  |  Height:  |  Size: 256 B

BIN
graphics/berries/babiri.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 483 B

BIN
graphics/berries/charti.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 B

BIN
graphics/berries/chilan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

BIN
graphics/berries/chople.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 498 B

BIN
graphics/berries/coba.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 B

BIN
graphics/berries/colbur.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 435 B

BIN
graphics/berries/custap.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 527 B

BIN
graphics/berries/haban.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

BIN
graphics/berries/jaboca.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 512 B

BIN
graphics/berries/kasib.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

BIN
graphics/berries/kebia.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 B

BIN
graphics/berries/kee.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 568 B

BIN
graphics/berries/micle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 B

BIN
graphics/berries/occa.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 434 B

BIN
graphics/berries/passho.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 543 B

BIN
graphics/berries/payapa.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 435 B

BIN
graphics/berries/rindo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 B

BIN
graphics/berries/roseli.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 576 B

BIN
graphics/berries/rowap.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 565 B

BIN
graphics/berries/shuca.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

BIN
graphics/berries/tanga.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 506 B

BIN
graphics/berries/wacan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 B

BIN
graphics/berries/yache.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 514 B

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
128 0 255
49 49 49
107 165 230
123 123 156
156 156 189
206 206 255
189 255 255
132 214 255
189 189 239
222 222 255
90 90 90
222 132 255
206 173 247
140 140 247
173 107 255
230 206 255

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
144 0 152
49 49 49
88 68 16
100 112 104
80 160 176
131 183 183
184 186 180
192 192 120
115 211 211
139 226 255
240 218 64
222 224 217
168 242 248
246 242 246
240 252 176
255 255 255

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
255 0 128
48 48 48
136 160 232
248 248 248
48 136 120
144 208 184
200 216 208
80 160 144
144 208 176
192 208 240
104 168 192
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
255 0 128
48 48 48
88 104 160
152 176 232
248 248 248
144 160 208
200 216 240
64 72 136
128 144 192
192 216 240
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
128 0 255
49 49 49
222 222 115
189 140 66
156 99 41
181 173 115
132 74 33
214 173 115
90 66 41
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View File

@ -0,0 +1,19 @@
JASC-PAL
0100
16
255 0 128
93 93 93
39 39 39
247 247 247
177 203 247
220 247 247
194 229 247
159 194 247
151 177 220
117 159 212
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

Some files were not shown because too many files have changed in this diff Show More